[ http://jira.codehaus.org/browse/XFIRE-362?page=all ]
Dan Diephouse closed XFIRE-362:
-------------------------------
Resolution: Won't Fix
See XFIRE-258 - we need to support RPC-encoding for this to happen. You're
welcome to work on RPC-Encoding yourself, but with it being deprecated by the
Basic Profile, I don't see myself focusing resources on it.
> Unable to serialize cycle graph of object
> -----------------------------------------
>
> Key: XFIRE-362
> URL: http://jira.codehaus.org/browse/XFIRE-362
> Project: XFire
> Type: Bug
> Components: Aegis Module
> Versions: 1.1-beta-1
> Reporter: Jara Cesnek
> Assignee: Dan Diephouse
> Priority: Blocker
>
>
> @WebService(name="tst",serviceName="tst",targetNamespace="http://eno.ws.daisy.marbes.cz")
> public class Test {
> public static class Wstest1 {
> private Wstest2 ws2;
> public Wstest2 getWS2(){
> return ws2;
> }
> }
> public static class Wstest2 {
> private Wstest1 ws1;
> public Wstest1 getWS1(){
> return ws1;
> }
> }
> @WebMethod
> public Wstest1 wstest() throws Exception {
> Wstest1 ws1 = new Wstest1();
> Wstest2 ws2 = new Wstest2();
> ws1.ws2 = ws2;
> ws2.ws1 = ws1;
> return ws1;
> }
> }
> This produce graph of object with cycle and endup with exception
> 2006-04-23 23:23:47,277 DEBUG http-8090-Processor2 [HandlerPipeline] Invoking
> handler org.codehaus.xfire.handler.OutMessageSender in phase send
> 2006-04-23 23:23:47,618 ERROR http-8090-Processor2 [DispatcherServlet] Could
> not complete request
> org.springframework.web.util.NestedServletException: Handler processing
> failed; nested exception is java.lang.StackOverflowError: null
> java.lang.StackOverflowError
> at sun.nio.cs.UTF_8$Encoder.encodeArrayLoop(UTF_8.java:504)
> at sun.nio.cs.UTF_8$Encoder.encodeLoop(UTF_8.java:575)
> at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:544)
> at
> sun.nio.cs.StreamEncoder$CharsetSE.implWrite(StreamEncoder.java:384)
> at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:136)
> at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:124)
> at java.io.OutputStreamWriter.write(OutputStreamWriter.java:178)
> at
> com.ctc.wstx.sw.BaseNsStreamWriter.closeStartElement(BaseNsStreamWriter.java:343)
> at
> com.ctc.wstx.sw.BaseNsStreamWriter.checkStartElement(BaseNsStreamWriter.java:387)
> at
> com.ctc.wstx.sw.SimpleNsStreamWriter.writeStartOrEmpty(SimpleNsStreamWriter.java:253)
> at
> com.ctc.wstx.sw.BaseNsStreamWriter.writeStartElement(BaseNsStreamWriter.java:273)
> at
> org.codehaus.xfire.aegis.stax.ElementWriter.writeStartElement(ElementWriter.java:116)
> at
> org.codehaus.xfire.aegis.stax.ElementWriter.<init>(ElementWriter.java:61)
> at
> org.codehaus.xfire.aegis.stax.ElementWriter.getElementWriter(ElementWriter.java:161)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.getWriter(BeanType.java:301)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:275)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:280)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:280)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:280)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:280)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:280)
> ...1000x
> Xfire must maintain Set of alredy serializabled objects by equals logic and
> wite only ref
> (I hope this will work with hibernate proxy too).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira