[ 
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.

Reply via email to