Uma ajuda sobre: local class incompatible

Olá galera tudo blz!?!?

É o seguinte, estou com um problema aqui que não consegui resolução até o momento, estou ficando louco com isso já :?

Indo ao que interessa…

tenho um Value e nele tenho alguns atruibutos, tenho um DAO que me retorna os dados de uma consulta de uma function, até ai tudo bem…
funcionava perfeitamente tudo, so precisei fazer uma alteração, que foi retornar mais um campo da function e atribuir ao meu Value

ùnica alteração que fiz:
criei mais um atributo no meu Value, e no meu DAO coloquei para recuperar o valor do campo e atribuir a esse novo atributo
logicamente está correto, mas quando vou executar, da o seguinte erro:

local class incompatible: stream classdesc serialVersionUID = 3171389563892137360, local class serialVersionUID = -8964347066618193213

ja dei uma pesquisada na net e tudo, n achei solução, vi que poderia ser a versão do jar e tal…

mas ja gerei xdoclet novamente do projeto, gerei jar novamente, dei clean nos projetos, recompilei varias vezes e nada…

percebi que ele não esta atualizando corretamente o meu Value, porque quando estou debugando, não tem o meu novo atributo no value

não sei mais o que fazer, ja tenho um bom tempo nisso, não aguento mais :cry:

alguma luz do que poderia fazer pra solucionar este problema??

Desde já agradeço…

vou copiar meu stack trace aki pra ve se ajuda um pouco no entendimento também

16:16:24,720 INFO [STDOUT] java.io.InvalidClassException: br.com.metropolis.contabilidade.execucaoorcamentaria.value.CoExtratoBancarioValue; local class incompatible: stream classdesc serialVersionUID = 3171389563892137360, local class serialVersionUID = -8964347066618193213 16:16:24,722 INFO [STDOUT] at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:519) 16:16:24,722 INFO [STDOUT] at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1546) 16:16:24,722 INFO [STDOUT] at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1460) 16:16:24,722 INFO [STDOUT] at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1693) 16:16:24,722 INFO [STDOUT] at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299) 16:16:24,722 INFO [STDOUT] at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339) 16:16:24,722 INFO [STDOUT] at java.util.ArrayList.readObject(ArrayList.java:592) 16:16:24,722 INFO [STDOUT] at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source) 16:16:24,722 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 16:16:24,723 INFO [STDOUT] at java.lang.reflect.Method.invoke(Method.java:585) 16:16:24,723 INFO [STDOUT] at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:919) 16:16:24,723 INFO [STDOUT] at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1813) 16:16:24,723 INFO [STDOUT] at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1713) 16:16:24,723 INFO [STDOUT] at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299) 16:16:24,723 INFO [STDOUT] at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339) 16:16:24,723 INFO [STDOUT] at java.rmi.MarshalledObject.get(MarshalledObject.java:135) 16:16:24,723 INFO [STDOUT] at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:134) 16:16:24,723 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365) 16:16:24,723 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197) 16:16:24,723 INFO [STDOUT] at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:61) 16:16:24,724 INFO [STDOUT] at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70) 16:16:24,724 INFO [STDOUT] at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:112) 16:16:24,724 INFO [STDOUT] at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100) 16:16:24,724 INFO [STDOUT] at $Proxy1658.obterValoresExtratoBancario(Unknown Source) 16:16:24,724 INFO [STDOUT] at br.com.metropolis.contabilidade.web.ContabilidadeDelegate.obterValoresExtratoBancario(ContabilidadeDelegate.java:2083) 16:16:24,724 INFO [STDOUT] at br.com.metropolis.contabilidade.execucaoorcamentaria.web.action.ExtratoBancarioActions.obterExtratosBancarios(ExtratoBancarioActions.java:234) 16:16:24,724 INFO [STDOUT] at br.com.metropolis.contabilidade.execucaoorcamentaria.web.action.ExtratoBancarioActions.emitirExtratoBancario(ExtratoBancarioActions.java:95) 16:16:24,724 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 16:16:24,724 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 16:16:24,724 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 16:16:24,724 INFO [STDOUT] at java.lang.reflect.Method.invoke(Method.java:585) 16:16:24,724 INFO [STDOUT] at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274) 16:16:24,725 INFO [STDOUT] at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194) 16:16:24,725 INFO [STDOUT] at edzaFW.web.struts.actions.BaseAction.execute(BaseAction.java:84) 16:16:24,725 INFO [STDOUT] at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) 16:16:24,725 INFO [STDOUT] at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) 16:16:24,725 INFO [STDOUT] at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) 16:16:24,725 INFO [STDOUT] at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) 16:16:24,725 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 16:16:24,725 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) 16:16:24,725 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) 16:16:24,725 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 16:16:24,725 INFO [STDOUT] at edzaFW.security.authentication.web.SecurityFilter.doFilter(SecurityFilter.java:86) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 16:16:24,726 INFO [STDOUT] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) 16:16:24,726 INFO [STDOUT] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) 16:16:24,726 INFO [STDOUT] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153) 16:16:24,726 INFO [STDOUT] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) 16:16:24,726 INFO [STDOUT] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) 16:16:24,727 INFO [STDOUT] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) 16:16:24,742 INFO [STDOUT] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) 16:16:24,744 INFO [STDOUT] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) 16:16:24,745 INFO [STDOUT] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) 16:16:24,745 INFO [STDOUT] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) 16:16:24,745 INFO [STDOUT] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) 16:16:24,745 INFO [STDOUT] at java.lang.Thread.run(Thread.java:595) 16:16:24,745 INFO [STDOUT] 16:16:24,745 INFO [ExceptionUtil] ################################ Excecao de SISTEMA arremessada [class java.io.InvalidClassException] 16:16:24,757 INFO [STDOUT] edzaFW.exception.SystemException 16:16:24,757 INFO [STDOUT] at edzaFW.exception.ExceptionUtil.throwsSystemException(ExceptionUtil.java:64) 16:16:24,757 INFO [STDOUT] at edzaFW.exception.ExceptionUtil.throwsException(ExceptionUtil.java:188) 16:16:24,758 INFO [STDOUT] at br.com.metropolis.contabilidade.web.ContabilidadeDelegate.obterValoresExtratoBancario(ContabilidadeDelegate.java:2085) 16:16:24,758 INFO [STDOUT] at br.com.metropolis.contabilidade.execucaoorcamentaria.web.action.ExtratoBancarioActions.obterExtratosBancarios(ExtratoBancarioActions.java:234) 16:16:24,758 INFO [STDOUT] at br.com.metropolis.contabilidade.execucaoorcamentaria.web.action.ExtratoBancarioActions.emitirExtratoBancario(ExtratoBancarioActions.java:95) 16:16:24,758 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 16:16:24,758 INFO [STDOUT] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 16:16:24,758 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 16:16:24,758 INFO [STDOUT] at java.lang.reflect.Method.invoke(Method.java:585) 16:16:24,758 INFO [STDOUT] at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274) 16:16:24,758 INFO [STDOUT] at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194) 16:16:24,758 INFO [STDOUT] at edzaFW.web.struts.actions.BaseAction.execute(BaseAction.java:84) 16:16:24,758 INFO [STDOUT] at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) 16:16:24,758 INFO [STDOUT] at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) 16:16:24,758 INFO [STDOUT] at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) 16:16:24,759 INFO [STDOUT] at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) 16:16:24,759 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 16:16:24,759 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) 16:16:24,759 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) 16:16:24,760 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 16:16:24,761 INFO [STDOUT] at edzaFW.security.authentication.web.SecurityFilter.doFilter(SecurityFilter.java:86) 16:16:24,761 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 16:16:24,761 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 16:16:24,761 INFO [STDOUT] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) 16:16:24,761 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 16:16:24,761 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 16:16:24,761 INFO [STDOUT] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) 16:16:24,761 INFO [STDOUT] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) 16:16:24,761 INFO [STDOUT] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) 16:16:24,761 INFO [STDOUT] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153) 16:16:24,761 INFO [STDOUT] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) 16:16:24,761 INFO [STDOUT] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) 16:16:24,762 INFO [STDOUT] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) 16:16:24,762 INFO [STDOUT] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) 16:16:24,762 INFO [STDOUT] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) 16:16:24,762 INFO [STDOUT] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) 16:16:24,762 INFO [STDOUT] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) 16:16:24,762 INFO [STDOUT] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) 16:16:24,762 INFO [STDOUT] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) 16:16:24,762 INFO [STDOUT] at java.lang.Thread.run(Thread.java:595) 16:16:24,762 INFO [STDOUT] Caused by: java.io.InvalidClassException: br.com.metropolis.contabilidade.execucaoorcamentaria.value.CoExtratoBancarioValue; local class incompatible: stream classdesc serialVersionUID = 3171389563892137360, local class serialVersionUID = -8964347066618193213 16:16:24,762 INFO [STDOUT] at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:519) 16:16:24,762 INFO [STDOUT] at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1546) 16:16:24,762 INFO [STDOUT] at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1460) 16:16:24,763 INFO [STDOUT] at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1693) 16:16:24,763 INFO [STDOUT] at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299) 16:16:24,764 INFO [STDOUT] at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339) 16:16:24,764 INFO [STDOUT] at java.util.ArrayList.readObject(ArrayList.java:592) 16:16:24,764 INFO [STDOUT] at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source) 16:16:24,764 INFO [STDOUT] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 16:16:24,764 INFO [STDOUT] at java.lang.reflect.Method.invoke(Method.java:585) 16:16:24,764 INFO [STDOUT] at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:919) 16:16:24,765 INFO [STDOUT] at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1813) 16:16:24,765 INFO [STDOUT] at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1713) 16:16:24,765 INFO [STDOUT] at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299) 16:16:24,765 INFO [STDOUT] at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339) 16:16:24,765 INFO [STDOUT] at java.rmi.MarshalledObject.get(MarshalledObject.java:135) 16:16:24,765 INFO [STDOUT] at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:134) 16:16:24,765 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365) 16:16:24,765 INFO [STDOUT] at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197) 16:16:24,765 INFO [STDOUT] at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:61) 16:16:24,765 INFO [STDOUT] at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70) 16:16:24,765 INFO [STDOUT] at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:112) 16:16:24,765 INFO [STDOUT] at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100) 16:16:24,765 INFO [STDOUT] at $Proxy1658.obterValoresExtratoBancario(Unknown Source) 16:16:24,767 INFO [STDOUT] at br.com.metropolis.contabilidade.web.ContabilidadeDelegate.obterValoresExtratoBancario(ContabilidadeDelegate.java:2083) 16:16:24,767 INFO [STDOUT] ... 37 more

[quote=LuanMelo]16:16:24,720 INFO [STDOUT] java.io.InvalidClassException: br.com.metropolis.contabilidade.execucaoorcamentaria.value.CoExtratoBancarioValue; local class incompatible: stream classdesc serialVersionUID = 3171389563892137360, local class serialVersionUID = -8964347066618193213 [/quote]

Olá…
As versões da sua classe CoExtratoBancarioValue estão diferentes.
Isso devido à um atributo chamado serialVersionUID na sua classe.
Dá uma olhadinha aqui pra você entender:
http://blog.caelum.com.br/2008/04/01/entendendo-o-serialversionuid/

Obs importante: Não use o serialVersionUID até que você entenda o que ele é.

:wink:

[]'s
JL

[quote] Olá…
As versões da sua classe CoExtratoBancarioValue estão diferentes.
Isso devido à um atributo chamado serialVersionUID na sua classe.
Dá uma olhadinha aqui pra você entender:
http://blog.caelum.com.br/2008/04/01/entendendo-o-serialversionuid/

Obs importante: Não use o serialVersionUID até que você entenda o que ele é.
[/quote]

Valeu pela dica cara, deu pra da uma clareada a mais sobre este atributo…

mas…eu nem estava utilizando esse atributo na minha classe, so utilizo quando crio uma nova, como foi so uma alteração nem coloquei este atributo

eu coloquei o serialVersionUID anterior nela, funcionou e tal, mas meu DAO não encherga o novo atributo, acredito que essa não seja a melhor maneira, adicionando na mão o UID, mas persiste o erro

:cry:

alguma dica a mais?

Já gerou um novo serial usando a ferramenta serialver (em jdk/bin/)?

Não tem um jar antigo no classpath do jboss perdido em algum lugar?

não, eu não conhecia essa ferramenta, estou dando uma pesquisada aqui pra ver como utilizo, especificamente no Linux :?

complicado viu :evil:

acredito que não cara, ja excluir os jars na mão, criei novamente e copie na mão grande mesmo, e nadaa

como disse no 1° post, gerei tudo novamente já, xdoclet, jars…

:cry:

Alguem poderia me informar como eu utilizo o serialver??

dei uma olhada na net mas não entendi muito bem não :?

++

Da mesma forma que se roda java pelo console:

cd /caminho/para/o/src/do/projeto

serialver br.com.exemplo.todo.o.resto.do.caminho.NomeDaClasseSemPontoClass