InvalidClassException

Olá pessoal,

Nos testes noturnos que rodamos, começou a dar esse erro:

[cactus] javax.naming.CommunicationException [Root exception is java.io.InvalidClassException: org.jboss.util.id.GUID; local class incompatible: stream classdesc serialVersionUID = 6926421946503004889, local class serialVersionUID = 3289509836244263718]
    [cactus] 	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:707)
    [cactus] 	at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:572)
    [cactus] 	at javax.naming.InitialContext.lookup(InitialContext.java:347)
    [cactus] Exception: null
    [cactus] 	at com.cpqd.util.unit.dbcon.ConnectionInfoClient.<init>(ConnectionInfoClient.java:64)
    [cactus] 	at com.cpqd.billing.electric.invoicing.tic.base.EbiTicTestCase.<init>(EbiTicTestCase.java:80)
    [cactus] 	at com.cpqd.billing.electric.invoicing.tic.DebitMessagesHandlingTest.<init>(DebitMessagesHandlingTest.java:8)
    [cactus] 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    [cactus] 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    [cactus] 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    [cactus] 	at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
    [cactus] 	at junit.framework.TestSuite.createTest(TestSuite.java:135)
    [cactus] 	at junit.framework.TestSuite.addTestMethod(TestSuite.java:114)
    [cactus] 	at junit.framework.TestSuite.<init>(TestSuite.java:75)
    [cactus] 	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.<init>(JUnitTestRunner.java:261)
    [cactus] 	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.<init>(JUnitTestRunner.java:210)
    [cactus] 	at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:532)
    [cactus] Caused by: java.io.InvalidClassException: org.jboss.util.id.GUID; local class incompatible: stream classdesc serialVersionUID = 6926421946503004889, local class serialVersionUID = 3289509836244263718

Alguém já viu algo parecido?

parece problema de bytecodes diferentes

Mas não era para acontecer, porque a goal do maven baixa tudo do repositório, compila, e roda os testes, a cada noite.

Começou a acontecer de repente isso, muito estranho.

Eu diria que é um problema de versão de fonte. As classes “serializáveis” possuem uma propriedade, “serialVersionUID”, que deveria ser igual sempre que as classes fossem compatíveis.

Verifique se uma das classes (a do cliente ou a do servidor) não sofreu alguma alteração e teve essa propriedade alterada.

[editado]
Essa propriedade, se não definida explicitamente no código, pelo programador, é inserida pela máquina virtual. Só não lembro se em tempo de compilação ou em tempo de execução.
[/editado]

org.jboss.util.id.GUID

Versões diferentes… verifica se nao tem um jar antigo perdido ai no classpath

Ooooppsss… :oops:
Não tinha visto que era relativo a alguma classe do próprio JBoss.

galera, estou enfrentando o mesmo erro. Se alguém souber de alguma solução, por favor postem ai
[]