Sobre quantidade de usuários em um chat

Pessoal,

Tenho um servlet que contralo um sistema e quando faço isso:


request.setAttribute("usersCount", counter); 
                    int teste = Integer.parseInt((String) request.getAttribute("usersCount"));
                    System.out.println("teste: "+teste);

Dá esse erro:

java.lang.ClassCastException: java.lang.Integer
at br.com.cpqd.www.dmd.comm.ChatServlet.processRequest(ChatServlet.java:
318)
at br.com.cpqd.www.dmd.comm.ChatServlet.doGet(ChatServlet.java:2898)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:178)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
torBase.java:432)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.p
rocessConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpo
int.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFol
lowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
ool.java:684)
at java.lang.Thread.run(Thread.java:595)

Alguém sabe como eu passo para pegar a quantidade de usuários online?

Obrigado.

vinucho, acho que seu topic devia estar no Java Avançado e não no Java Básico. Já que está aqui, algumas perguntas: sem o casting dá erro? O método getAttribute não tem nenhum “toString”? Qual é o tipo do retorno do getAttribute esperado? Já tentou dar um System.out do retorno direto do getAttribute?

request.getAttribute(String attribute) retorna um objeto do tipo java.lang.Object, entom ele tem um toString(), embora eu não tenha certeza se esse toString() vai voltar o conteúdo necessário ou um tipo de ‘endereço de memória’.

Mas request.getParameter(String parameter) já retorna String, pode ser que sirva, já que o código atual cai em ClassCastException.

Inté.