[
https://issues.apache.org/jira/browse/CXF-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12645143#action_12645143
]
Coder Lol commented on CXF-1899:
--------------------------------
I wonder if SOAP is supposed to support circular reference.
As far as serialization supporting circular reference, there are a few models
out there.
For example, keep a list of already serialized objects and do not serialize
again. Also, use an object id reference is the serialized data stream to
create references...
Key though: is SOAP supposed to support circular references?
> SimpleFrontEnd & AEGIS Cannot Handle Circular References
> --------------------------------------------------------
>
> Key: CXF-1899
> URL: https://issues.apache.org/jira/browse/CXF-1899
> Project: CXF
> Issue Type: Bug
> Components: Aegis Databinding, Simple Frontend
> Affects Versions: 2.1.3
> Environment: Windows XP Professional, Netbeans 6.5 RC2, Tomcat
> 6.0.18, Maven 2.0.9
> Reporter: Coder Lol
> Priority: Blocker
> Attachments: cxfbug.zip
>
>
> So, I was trying to setup the object graph to reproduce the problem. The
> orginal graph was created by Hibernate with/without Beanlib, but my
> handcrafted object graph (which should be equivalent to the original 2
> graphs) gave this exception...huh...
> com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in attribute value
> Nov 3, 2008 10:48:32 PM org.apache.cxf.phase.PhaseInterceptorChain doIntercept
> INFO: Interceptor has thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: Error parsing document.. Nested exception
> is com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in attribute value
> at [row,col {unknown-source}]: [1,615384]
> at
> org.apache.cxf.aegis.databinding.XMLStreamDataReader.read(XMLStreamDataReader.java:49)
> at
> org.apache.cxf.aegis.databinding.XMLStreamDataReader.read(XMLStreamDataReader.java:34)
> at
> org.apache.cxf.interceptor.DocLiteralInInterceptor.getPara(DocLiteralInInterceptor.java:235)
> at
> org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:120)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:633)
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2064)
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1942)
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1867)
> at
> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at
> org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:595)
> at
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:466)
> --- On Mon, 11/3/08, Benson Margulies <[EMAIL PROTECTED]> wrote:
> > From: Benson Margulies <[EMAIL PROTECTED]>
> > Subject: Re: AEGIS StackOverflow
> > To: [EMAIL PROTECTED], [EMAIL PROTECTED]
> > Date: Monday, November 3, 2008, 5:13 AM
> > This shouldn't be possible. Care to post a test case to
> > JIRA.
> >
> > On Sun, Nov 2, 2008 at 10:48 PM, Coder One
> > <[EMAIL PROTECTED]> wrote:
> > > I turned on debug, but could not pinpoint what may
> > have gone wrong...Anyone with a good pointer? Thanks,
> > >
> > > ===
> > > log4j.logger.org.apache.cxf.aegis=DEBUG,STDOUT
> > > log4j.additivity.org.apache.cxf.aegis=false
> > >
> > > log4j.logger.org.apache.cxf.staxutils=DEBUG,STDOUT
> > > log4j.additivity.org.apache.cxf.staxutils=false
> > >
> > > log4j.logger.com.ctc.wstx=DEBUG,STDOUT
> > > log4j.additivity.com.ctc.wstx=false
> > > ===
> > >
> > > Caused by: java.lang.StackOverflowError
> > > at
> > com.ctc.wstx.sr.NsAttributeCollector.resolveNamespaces(NsAttributeCollector.java:239)
> > > at
> > com.ctc.wstx.sr.NsInputElementStack.resolveAndValidateElement(NsInputElementStack.java:374)
> > > at
> > com.ctc.wstx.sr.BasicStreamReader.handleStartElem(BasicStreamReader.java:2945)
> > > at
> > com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2846)
> > > at
> > com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1019)
> > > at
> > org.apache.cxf.staxutils.DepthXMLStreamReader.next(DepthXMLStreamReader.java:220)
> > > at
> > org.apache.cxf.aegis.xml.stax.ElementReader.getValue(ElementReader.java:132)
> > > at
> > org.apache.cxf.aegis.type.basic.StringType.readObject(StringType.java:36)
> > > at
> > org.apache.cxf.aegis.type.basic.BeanType.readObject(BeanType.java:146)
> > > at
> > org.apache.cxf.aegis.type.basic.BeanType.readObject(BeanType.java:146)
> > > at
> > org.apache.cxf.aegis.type.basic.ArrayType.readCollection(ArrayType.java:89)
> > > at
> > org.apache.cxf.aegis.type.collection.CollectionType.readObject(CollectionType.java:50)
> > > at
> > org.apache.cxf.aegis.type.basic.BeanType.readObject(BeanType.java:146)
> > > at
> > org.apache.cxf.aegis.type.basic.BeanType.readObject(BeanType.java:146)
> > > at
> > org.apache.cxf.aegis.type.basic.ArrayType.readCollection(ArrayType.java:89)
> > > at
> > org.apache.cxf.aegis.type.collection.CollectionType.readObject(CollectionType.java:50)
> > > at
> > org.apache.cxf.aegis.type.basic.BeanType.readObject(BeanType.java:146)
> > > at
> > org.apache.cxf.aegis.type.basic.BeanType.readObject(BeanType.java:146)
> > > at
> > org.apache.cxf.aegis.type.basic.ArrayType.readCollection(ArrayType.java:89)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.