Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 342852

Summary: NPE during serialization when nested object has a changesummary
Product: z_Archived Reporter: Denise Smith <denise.mahar>
Component: EclipselinkAssignee: Nobody - feel free to take it <nobody>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows 7   
Whiteboard:
Attachments:
Description Flags
Proposed changes and test none

Description Denise Smith CLA 2011-04-14 10:49:34 EDT
Exception below.  This is because during the serialize operation there is a new xmlmarshaller created and then part way through the marshal we retrieve another (different) xmlmarshaller from the helpercontext.

org.eclipse.persistence.sdo.helper.SDOFragmentMappingAttributeAccessor.getAttributeValueFromObject(SDOFragmentMappingAttributeAccessor.java:65)
at org.eclipse.persistence.mappings.DatabaseMapping.getAttributeValueFromObject(DatabaseMapping.java:497)
at org.eclipse.persistence.internal.oxm.record.ObjectMarshalContext.getAttributeValue(ObjectMarshalContext.java:52)
at org.eclipse.persistence.internal.oxm.XMLFragmentMappingNodeValue.marshal(XMLFragmentMappingNodeValue.java:71)
at org.eclipse.persistence.internal.oxm.NodeValue.marshal(NodeValue.java:104)
at org.eclipse.persistence.internal.oxm.record.ObjectMarshalContext.marshal(ObjectMarshalContext.java:60)
at org.eclipse.persistence.internal.oxm.XPathNode.marshal(XPathNode.java:328)
at org.eclipse.persistence.internal.oxm.TreeObjectBuilder.buildRow(TreeObjectBuilder.java:327)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:920)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:799)
at org.eclipse.persistence.sdo.helper.delegates.SDOXMLHelperDelegate.save(SDOXMLHelperDelegate.java:441)
at org.eclipse.persistence.sdo.helper.delegates.SDOXMLHelperDelegate.serialize(SDOXMLHelperDelegate.java:366)
at org.eclipse.persistence.sdo.SDOResolvable.writeExternal(SDOResolvable.java:196)
at commonj.sdo.impl.ExternalizableDelegator.writeExternal(ExternalizableDelegator.java:78)
at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1421)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1390)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
at weblogic.rjvm.MsgAbbrevOutputStream.writeObject(MsgAbbrevOutputStream.java:618)
at weblogic.rjvm.MsgAbbrevOutputStream.writeObjectWL(MsgAbbrevOutputStream.java:609)
at weblogic.rmi.internal.ObjectIO.writeObject(ObjectIO.java:38)
at weblogic.rjvm.BasicOutboundRequest.marshalArgs(BasicOutboundRequest.java:88)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:342)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
at oracle.apps.scm.configurator.runtime.publicService.server.ConfiguratorRuntimeServiceImpl_83gnau_ConfiguratorRuntimeServiceImpl_1034_WLStub.validate(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
at $Proxy39.validate(Unknown Source)
... 14 more
Caused by: java.lang.NullPointerException
at org.eclipse.persistence.sdo.helper.SDOMarshalListener.beforeMarshal(SDOMarshalListener.java:79)
at org.eclipse.persistence.internal.oxm.XMLCompositeObjectMappingNodeValue.marshalSingleValue(XMLCompositeObjectMappingNodeValue.java:122)
at org.eclipse.persistence.internal.oxm.XMLCompositeObjectMappingNodeValue.marshal(XMLCompositeObjectMappingNodeValue.java:100)
at org.eclipse.persistence.internal.oxm.NodeValue.marshal(NodeValue.java:104)
at org.eclipse.persistence.internal.oxm.record.ObjectMarshalContext.marshal(ObjectMarshalContext.java:60)
at org.eclipse.persistence.internal.oxm.XPathNode.marshal(XPathNode.java:328)
at org.eclipse.persistence.internal.oxm.TreeObjectBuilder.buildRow(TreeObjectBuilder.java:327)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:920)
at org.eclipse.persistence.oxm.XMLMarshaller.marshal(XMLMarshaller.java:735)
... 46 more
Comment 1 Denise Smith CLA 2011-04-14 13:49:20 EDT
Created attachment 193279 [details]
Proposed changes and test
Comment 2 Denise Smith CLA 2011-04-14 14:39:30 EDT
Made changes in SDOXMLHelperDelegate serialize method where we used to create a new XMLMarshaller now we just use the same one.
Comment 3 Eclipse Webmaster CLA 2022-06-09 10:17:09 EDT
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink
Comment 4 Eclipse Webmaster CLA 2022-06-09 10:31:53 EDT
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink