|
Quick Lists
|
|
Bug ID:
|
4728756
|
|
Votes
|
0
|
|
Synopsis
|
CopyObject throws Marshalling exception for org.jdom.Document object
|
|
Category
|
idl:orb
|
|
Reported Against
|
j2ee1.4-ea1
|
|
Release Fixed
|
1.4.1(1.4.1_03)
|
|
State
|
11-Closed,
Unverified,
bug
|
|
Priority:
|
2-High
|
|
Related Bugs
|
4724983
|
|
Submit Date
|
08-AUG-2002
|
|
Description
|
*******************************************************************************
xxxxx@xxxxx 2002-12-10
Fix verified OK
With build - j2sdk-1_4_2-beta-bin-b09-solaris-sparcv9-04_dec_2002
With test - tests/interoperability/serialization
*******************************************************************************
CopyObject throws Marshalling exception for org.jdom.Document object. A simple
java test program is attached for this (javatestcase.tar.gz)
The same error is also seen if an ear if deployed on the J2EE RI server. The
relvant jars and ear file is also attached (testearfile.tar.gz)
Steps to run the application:-
0. Add jdom.jar to the classpath
1. Modify the lookup.jsp in the ear to reflect the correct
location of the document serialized file (xml.obj).
2. Deploy the this modified ear.
3. Access the app from http://<host>:<port>/war1/lookup
This problem is being faced by an ISV using S1AS application server that uses the RI ORB code. This is a show stopper bug for the ISV to give a demo at the sales conference. There is a separate bug filed for this against S1AS (4724983)
The stack trace for this is as under from the J2EE RI server:
(Standalone java program also throws similar exception)
Exception in thread "HttpProcessor[8000][4]" org.omg.CORBA.MARSHAL: Unable to read value from
underlying bridge : Serializable readObject method failed internally vmcid: SUN minor code: 211
completed: Maybe
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:947)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:853)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:845)
at
com.sun.corba.ee.internal.iiop.CDRInputStream.read_abstract_interface(CDRInputStream.java:312)
at
com.sun.corba.se.internal.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:228)
at
com.sun.corba.se.internal.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:381)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:316)
at java.util.ArrayList.readObject(ArrayList.java:548)
at com.sun.corba.se.internal.io.IIOPInputStream.readObject(Native Method)
at
com.sun.corba.se.internal.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1298)
at com.sun.corba.se.internal.io.IIOPInputStream.inputObject(IIOPInputStream.java:908)
at
com.sun.corba.se.internal.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:261)
at
com.sun.corba.se.internal.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:247)
at com.sun.corba.se.internal.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:209)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1078)
at com.sun.corba.ee.internal.iiop.CDRInputStream.read_value(CDRInputStream.java:296)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1571)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:1784)
at com.sun.corba.se.internal.io.IIOPInputStream.inputObject(IIOPInputStream.java:913)
at
com.sun.corba.se.internal.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:261)
at
com.sun.corba.se.internal.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:247)
at com.sun.corba.se.internal.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:209)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1078)
at com.sun.corba.ee.internal.iiop.CDRInputStream.read_value(CDRInputStream.java:296)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1571)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:1784)
at
com.sun.corba.se.internal.io.IIOPInputStream.defaultReadObjectDelegate(IIOPInputStream.java:436)
at
com.sun.corba.se.internal.io.InputStreamHook.defaultReadObject(InputStreamHook.java:163)
at org.jdom.Element.readObject(Element.java:1699)
at com.sun.corba.se.internal.io.IIOPInputStream.readObject(Native Method)
at
com.sun.corba.se.internal.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1298)
at com.sun.corba.se.internal.io.IIOPInputStream.inputObject(IIOPInputStream.java:908)
at
com.sun.corba.se.internal.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:261)
at
com.sun.corba.se.internal.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:247)
at com.sun.corba.se.internal.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:209)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:942)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:853)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_abstract_interface(CDRInputStream_1_0.java:845)
at
com.sun.corba.ee.internal.iiop.CDRInputStream.read_abstract_interface(CDRInputStream.java:312)
at
com.sun.corba.se.internal.io.IIOPInputStream.readObjectDelegate(IIOPInputStream.java:228)
at
com.sun.corba.se.internal.io.IIOPInputStream.readObjectOverride(IIOPInputStream.java:381)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:316)
at java.util.ArrayList.readObject(ArrayList.java:548)
at com.sun.corba.se.internal.io.IIOPInputStream.readObject(Native Method)
at
com.sun.corba.se.internal.io.IIOPInputStream.invokeObjectReader(IIOPInputStream.java:1298)
at com.sun.corba.se.internal.io.IIOPInputStream.inputObject(IIOPInputStream.java:908)
at
com.sun.corba.se.internal.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:261)
at
com.sun.corba.se.internal.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:247)
at com.sun.corba.se.internal.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:209)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1078)
at com.sun.corba.ee.internal.iiop.CDRInputStream.read_value(CDRInputStream.java:296)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1571)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:1784)
at com.sun.corba.se.internal.io.IIOPInputStream.inputObject(IIOPInputStream.java:913)
at
com.sun.corba.se.internal.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:261)
at
com.sun.corba.se.internal.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:247)
at com.sun.corba.se.internal.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:209)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1078)
at com.sun.corba.ee.internal.iiop.CDRInputStream.read_value(CDRInputStream.java:296)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputObjectField(IIOPInputStream.java:1571)
at
com.sun.corba.se.internal.io.IIOPInputStream.inputClassFields(IIOPInputStream.java:1784)
at com.sun.corba.se.internal.io.IIOPInputStream.inputObject(IIOPInputStream.java:913)
at
com.sun.corba.se.internal.io.IIOPInputStream.simpleReadObject(IIOPInputStream.java:261)
at
com.sun.corba.se.internal.io.ValueHandlerImpl.readValueInternal(ValueHandlerImpl.java:247)
at com.sun.corba.se.internal.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:209)
at
com.sun.corba.ee.internal.iiop.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:942)
at com.sun.corba.ee.internal.iiop.CDRInputStream.read_value(CDRInputStream.java:292)
at com.sun.corba.ee.internal.javax.rmi.CORBA.Util.copyObjects(Util.java:456)
at javax.rmi.CORBA.Util.copyObjects(Util.java:296)
at org.omg.stub.com.sun.ejbtest.ejb._EjbTest_Stub.execute(Unknown Source)
at org.apache.jsp.lookup$jsp._jspService(lookup$jsp.java:79)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:202)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:382)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:474)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterChain.java:197)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
|
|
Work Around
|
N/A
|
|
Evaluation
|
I could reproduce the problem. Currently investigating the cause of the problem, which is in our native code.
xxxxx@xxxxx 2002-08-08
----
The fix is due to Zero Length strings, I have fixed the problem in rip-int and
also was tested by our SQE and SUN ONE Appserver customers.
Should go to J2SE 1.4.1 patch for RI to work correctly.
xxxxx@xxxxx 2002-09-17
------
|
|
Comments
|
PLEASE NOTE: JDK6 is formerly known as Project Mustang
|
|
|
 |