Cuando me consulta a través de la interfaz EJB para una entidad, en virtud de la consola está bien, pero cambiar a la consulta de Swing de tiro esta excepción.

La excepción:

java.rmi.UnmarshalException: failed to unmarshal MY_ENTITY****; nested exception is: 
java.io.StreamCorruptedException: invalid type code: 00
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:219)
at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:224)
at ***.****_6ndxy4_EOImpl_922_WLStub.getProductInformation(Unknown Source)
at MY_CLASS****.getProductInformation(*****.java:460)
at ******$5.run(OrigBlotter.java:318)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.io.StreamCorruptedException: invalid type code: 00
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1356)
at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1642)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:195)
at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:565)
at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:191)
at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:62)
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:217)
  • Por favor, muéstranos el código correspondiente. Y sí, don;t se olvide de incluir el correspondiente seguimiento de la pila.
InformationsquelleAutor Aaron | 2010-02-10

2 Comentarios

  1. 0

    Esta excepción se genera cuando la clase correspondiente a la serializa el objeto que se encuentra por la JVM tiene el mismo serialVersionUid como el serial de la clase, pero en realidad es una versión diferente (es decir: los cambios que se hicieron a la clase sin necesidad de cambiar el identificador de versión).

    Comprobar que dispone de la pertinente del tarro/archivos de clase en la ruta de clase?

    • Hasta donde yo sé, esto no es correcto. Usted obtener una clase no encontrada si la clase no está en la ruta de clases o en un InvalidClassException si se trata de una versión diferente. Puedes mostrar un ejemplo?
    • Caramba, que era una buena hace tiempo.. es Probar y ver qué pasa. Recuerdo que intentar deserialise un objeto para que una clase no se encontró (o tal vez una clase con el mismo nombre, pero no es lo mismo?? por ejemplo: versión diferente), causó un StreamCorruptedException. Puedo recordar si el «tipo de código 00» parte estaba allí también, pero me lo creo. Pongo esta respuesta aquí, ya que era difícil para mí para realizar el seguimiento y google me mostró esta pregunta a lo largo del camino 🙂
    • Para el registro, fue que no coinciden archivo jar versiones que causó el error para mí. El carácter de clase de versiones en el mismo seriación uid, por lo que un StreamCorruptedException en lugar de la excepción para las versiones no coincidentes.

Dejar respuesta

Please enter your comment!
Please enter your name here