You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by asheikh <as...@gmail.com> on 2009/01/20 06:47:46 UTC

Parser has already reached end of the document. No siblings found

Hi,

I have migrated my services from axis2. 1.3 to axis2 1.4, and I am getting
the following error whenever I invoke any service. Please advice, Thanks in
advance

*This code does't work: *
    public void invokeBusinessLogic(
            org.apache.axis2.context.MessageContext msgContext,
            org.apache.axis2.context.MessageContext newMsgContext)
            throws org.apache.axis2.AxisFault {

        try {

            // get the implementation class
            Object obj = getTheImplementationObject(msgContext);
            //System.out.println("Message xml :
"+msgContext.getEnvelope());


..... more code
       }


This code Works(removing comments from the System.out.):
    public void invokeBusinessLogic(
            org.apache.axis2.context.MessageContext msgContext,
            org.apache.axis2.context.MessageContext newMsgContext)
            throws org.apache.axis2.AxisFault {

        try {

            // get the implementation class
            Object obj = getTheImplementationObject(msgContext);
         *   System.out.println("Message xml : "+msgContext.getEnvelope());
   *

..... more code
       }

*Exception: *
- <#> <soapenv:Envelope xmlns:soapenv="*
http://schemas.xmlsoap.org/soap/envelope/*">
 - <#> <soapenv:Body>
 - <#> <soapenv:Fault>
   <faultcode>soapenv:Server</faultcode>
   <faultstring>Parser has already reached end of the document. No siblings
found</faultstring>
   <detail />
  </soapenv:Fault>
  </soapenv:Body>
  </soapenv:Envelope>

Re: Parser has already reached end of the document. No siblings found

Posted by Andreas Veithen <an...@gmail.com>.
While working on some other stuff, I discovered one case where this
exception is triggered. Not sure though if it is exactly the same
issue as you encountered. See WSCOMMONS-438 for a description.

Andreas

On Mon, Jan 26, 2009 at 09:20, asheikh <as...@gmail.com> wrote:
> Dear Andreas,
>
> Thanks a lot for you help, I will try to debug it from my side and  will
> update you if I find anything.
>
> Again, thanks Andreas for you time.
>
>
>
>
> On Fri, Jan 23, 2009 at 1:40 AM, Andreas Veithen <an...@gmail.com>
> wrote:
>>
>> I tried to reproduce the issue using the SOAP message you posted and
>> trying to emulate the sequence of Axiom calls your code is making, but
>> I didn't succeed. My guess is that this is a subtle issue somewhere in
>> Axiom and that is triggered under particular conditions. The only way
>> to locate the root cause would be to debug the issue using your code.
>> If you are willing to share your code with us in a form that allows us
>> to easily reproduce the issue, we can do this. Otherwise, as a
>> workaround for this issue, you could add the following instruction to
>> your code (in place of the System.out.println):
>>
>> msgContext.getEnvelope().build()
>>
>> Regards,
>>
>> Andreas
>>
>> On Wed, Jan 21, 2009 at 11:03, asheikh <as...@gmail.com> wrote:
>> > Hi Andreas,
>> >
>> > did this show anything that I am doing, thanks for  your help
>> >
>> >
>> > On Wed, Jan 21, 2009 at 7:34 AM, asheikh <as...@gmail.com>
>> > wrote:
>> >>
>> >> Andreas,
>> >>
>> >> I couldn't respond earlier than this,  It is a soap request,
>> >>
>> >> <soapenv:Envelope
>> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
>> >> xmlns:q0="http://www.qnb.com.qa/mwSchema"
>> >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>> >>  <soapenv:Body>
>> >>  <q0:BillRequest>
>> >>  <section>
>> >>   <uid>test012565</uid>
>> >>   <requestorID>XYZA</requestorID>
>> >>   <lang>EN</lang>
>> >>   <branchCode>0011</branchCode>
>> >>   <client>xx.xx.xx.xx</client>
>> >>   <date>2009-01-20T07:07:54.587Z</date>
>> >>   <id>0011</id>
>> >>   </section>
>> >>   <Data />
>> >>   </q0:BillRequest>
>> >>   </soapenv:Body>
>> >>   </soapenv:Envelope>
>> >>
>> >>
>> >>
>> >> On Tue, Jan 20, 2009 at 4:11 PM, Andreas Veithen
>> >> <an...@gmail.com> wrote:
>> >>>
>> >>> Can you also post a sample request that triggers this issue? In
>> >>> particular is it a SOAP or plain XML request?
>> >>>
>> >>> Andreas
>> >>>
>> >>> On Tue, Jan 20, 2009 at 12:40, asheikh <as...@gmail.com>
>> >>> wrote:
>> >>> > Andreas,
>> >>> >
>> >>> > Below is the code that calls check method
>> >>> >
>> >>> > if ("retreiveBillservice".equals(methodName)) {
>> >>> >
>> >>> >                     RAIResponse rAIResponse = null;
>> >>> >                     RAIRequest wrappedParam = (RAIRequest)
>> >>> > fromOM(msgContext
>> >>> >
>> >>> > .getEnvelope().getBody().getFirstElement(),
>> >>> >                             RAIRequest.class,
>> >>> > getEnvelopeNamespaces(msgContext
>> >>> >                                     .getEnvelope()));
>> >>> >
>> >>> >                     try {
>> >>> >                         if(doCheckMM)
>> >>> >                             mmc.check(msgContext);
>> >>> >
>> >>> >
>> >>> >
>> >>> > On Tue, Jan 20, 2009 at 2:36 PM, asheikh <as...@gmail.com>
>> >>> > wrote:
>> >>> >>
>> >>> >> Thansk andreas, yes this is the code that causes  the exception
>> >>> >>
>> >>> >> public void check(MessageContext ctx) throws MiddlewareException {
>> >>> >>         Iterator iter =
>> >>> >> ctx.getEnvelope().getBody().getChildElements();
>> >>> >>         OMElement content = null;
>> >>> >>         while (iter.hasNext()) {
>> >>> >>             OMNode node = (OMNode) iter.next();
>> >>> >>             if (node.getType() == OMNode.ELEMENT_NODE) {
>> >>> >>                 content = (OMElement) node;
>> >>> >>                 break;
>> >>> >>             }
>> >>> >>         }
>> >>> >> ..
>> >>> >> ...
>> >>> >>
>> >>> >>
>> >>> >> On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen
>> >>> >> <an...@gmail.com> wrote:
>> >>> >>>
>> >>> >>> Can you post the code in MMCHandler#check?
>> >>> >>>
>> >>> >>> Andreas
>> >>> >>>
>> >>> >>> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com>
>> >>> >>> wrote:
>> >>> >>> > Thanks a lot Andreas,
>> >>> >>> >
>> >>> >>> > Please see the stactrace below:
>> >>> >>> >
>> >>> >>> > Start- Stactrace:
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.OMException: Parser has already reached end
>> >>> >>> > of
>> >>> >>> > the
>> >>> >>> > document. No siblings found
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
>> >>> >>> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
>> >>> >>> > java.util.NoSuchElementException
>> >>> >>> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
>> >>> >>> >     at
>> >>> >>> > weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
>> >>> >>> >     at
>> >>> >>> > java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
>> >>> >>> > Source)
>> >>> >>> > Caused by: org.apache.axiom.om.OMException:
>> >>> >>> > java.util.NoSuchElementException
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
>> >>> >>> >     ... 18 more
>> >>> >>> > Caused by: java.util.NoSuchElementException
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
>> >>> >>> >     at
>> >>> >>> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
>> >>> >>> >     ... 22 more
>> >>> >>> >
>> >>> >>> > End- Stactrace:
>> >>> >>> >
>> >>> >>> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen
>> >>> >>> > <an...@gmail.com>
>> >>> >>> > wrote:
>> >>> >>> >>
>> >>> >>> >> Axiom uses a deferred parsing approach, i.e. it will build the
>> >>> >>> >> object
>> >>> >>> >> tree on demand. A call to toString() triggered by the
>> >>> >>> >> System.out.println instruction or by inspecting the object in a
>> >>> >>> >> debugger will have the effect of building the entire tree.
>> >>> >>> >> Probably
>> >>> >>> >> there is some code somewhere that works perfectly well with a
>> >>> >>> >> fully
>> >>> >>> >> built tree, but not if it is only partially built. This could
>> >>> >>> >> be a
>> >>> >>> >> bug
>> >>> >>> >> in Axiom. Do you have a stacktrace of the exception?
>> >>> >>> >>
>> >>> >>> >> Andreas
>> >>> >>> >>
>> >>> >>> >> On Tue, Jan 20, 2009 at 11:26, asheikh
>> >>> >>> >> <as...@gmail.com>
>> >>> >>> >> wrote:
>> >>> >>> >> > Andreas,
>> >>> >>> >> >
>> >>> >>> >> > Thanks for your input, but it is still the same... Just
>> >>> >>> >> > wondering
>> >>> >>> >> > why
>> >>> >>> >> > when i
>> >>> >>> >> > debug it is  working and when I am not it does''t work
>> >>> >>> >> >
>> >>> >>> >> > Adding following line on top of the method also helps
>> >>> >>> >> >     System.out.println("Messages:
>> >>> >>> >> > "+msgContext.getEnvelope());
>> >>> >>> >> >
>> >>> >>> >> > but this doesn't help
>> >>> >>> >> >        msgContext.getEnvelope();
>> >>> >>> >> >
>> >>> >>> >> >
>> >>> >>> >> > Thanks
>> >>> >>> >> >
>> >>> >>> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
>> >>> >>> >> > <an...@gmail.com> wrote:
>> >>> >>> >> >>
>> >>> >>> >> >> Could be somehow related to WSCOMMONS-372. Can you test this
>> >>> >>> >> >> with
>> >>> >>> >> >> Axiom
>> >>> >>> >> >> 1.2.8?
>> >>> >>> >> >>
>> >>> >>> >> >> Andreas
>> >>> >>> >> >>
>> >>> >>> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh
>> >>> >>> >> >> <as...@gmail.com>
>> >>> >>> >> >> wrote:
>> >>> >>> >> >> > Hi,
>> >>> >>> >> >> >
>> >>> >>> >> >> > I have also realized that when I debug the
>> >>> >>> >> >> > Message Context in eclipse and inspect in, it works and
>> >>> >>> >> >> > the
>> >>> >>> >> >> > envelope
>> >>> >>> >> >> > message
>> >>> >>> >> >> > is there...
>> >>> >>> >> >> >
>> >>> >>> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1
>> >>> >>> >> >> > or
>> >>> >>> >> >> > there is
>> >>> >>> >> >> > something I am missing. The same code works in axis2.
>> >>> >>> >> >> > 1.3.1
>> >>> >>> >> >> >
>> >>> >>> >> >> > Thanks in advance
>> >>> >>> >> >> >
>> >>> >>> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh
>> >>> >>> >> >> > <as...@gmail.com>
>> >>> >>> >> >> > wrote:
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> Hi,
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4,
>> >>> >>> >> >> >> and I
>> >>> >>> >> >> >> am
>> >>> >>> >> >> >> getting
>> >>> >>> >> >> >> the following error whenever I invoke any service. Please
>> >>> >>> >> >> >> advice,
>> >>> >>> >> >> >> Thanks in
>> >>> >>> >> >> >> advance
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> This code does't work:
>> >>> >>> >> >> >>     public void invokeBusinessLogic(
>> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> >>> >>> >> >> >> msgContext,
>> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> >>> >>> >> >> >> newMsgContext)
>> >>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>         try {
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>             // get the implementation class
>> >>> >>> >> >> >>             Object obj =
>> >>> >>> >> >> >> getTheImplementationObject(msgContext);
>> >>> >>> >> >> >>             //System.out.println("Message xml :
>> >>> >>> >> >> >> "+msgContext.getEnvelope());
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> ..... more code
>> >>> >>> >> >> >>        }
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> This code Works(removing comments from the System.out.):
>> >>> >>> >> >> >>     public void invokeBusinessLogic(
>> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> >>> >>> >> >> >> msgContext,
>> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> >>> >>> >> >> >> newMsgContext)
>> >>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>         try {
>> >>> >>> >> >> >>
>> >>> >>> >> >> >>             // get the implementation class
>> >>> >>> >> >> >>             Object obj =
>> >>> >>> >> >> >> getTheImplementationObject(msgContext);
>> >>> >>> >> >> >>             System.out.println("Message xml :
>> >>> >>> >> >> >> "+msgContext.getEnvelope());
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> ..... more code
>> >>> >>> >> >> >>        }
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> Exception:
>> >>> >>> >> >> >> - <soapenv:Envelope
>> >>> >>> >> >> >>
>> >>> >>> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> >>> >>> >> >> >> - <soapenv:Body>
>> >>> >>> >> >> >> - <soapenv:Fault>
>> >>> >>> >> >> >>   <faultcode>soapenv:Server</faultcode>
>> >>> >>> >> >> >>   <faultstring>Parser has already reached end of the
>> >>> >>> >> >> >> document.
>> >>> >>> >> >> >> No
>> >>> >>> >> >> >> siblings
>> >>> >>> >> >> >> found</faultstring>
>> >>> >>> >> >> >>   <detail />
>> >>> >>> >> >> >>   </soapenv:Fault>
>> >>> >>> >> >> >>   </soapenv:Body>
>> >>> >>> >> >> >>   </soapenv:Envelope>
>> >>> >>> >> >> >
>> >>> >>> >> >> >
>> >>> >>> >> >
>> >>> >>> >> >
>> >>> >>> >
>> >>> >>> >
>> >>> >>
>> >>> >
>> >>> >
>> >>
>> >
>> >
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Dear Andreas,

Thanks a lot for you help, I will try to debug it from my side and  will
update you if I find anything.

Again, thanks Andreas for you time.




On Fri, Jan 23, 2009 at 1:40 AM, Andreas Veithen
<an...@gmail.com>wrote:

> I tried to reproduce the issue using the SOAP message you posted and
> trying to emulate the sequence of Axiom calls your code is making, but
> I didn't succeed. My guess is that this is a subtle issue somewhere in
> Axiom and that is triggered under particular conditions. The only way
> to locate the root cause would be to debug the issue using your code.
> If you are willing to share your code with us in a form that allows us
> to easily reproduce the issue, we can do this. Otherwise, as a
> workaround for this issue, you could add the following instruction to
> your code (in place of the System.out.println):
>
> msgContext.getEnvelope().build()
>
> Regards,
>
> Andreas
>
> On Wed, Jan 21, 2009 at 11:03, asheikh <as...@gmail.com> wrote:
> > Hi Andreas,
> >
> > did this show anything that I am doing, thanks for  your help
> >
> >
> > On Wed, Jan 21, 2009 at 7:34 AM, asheikh <as...@gmail.com>
> wrote:
> >>
> >> Andreas,
> >>
> >> I couldn't respond earlier than this,  It is a soap request,
> >>
> >> <soapenv:Envelope
> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> >> xmlns:q0="http://www.qnb.com.qa/mwSchema"
> >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> >>  <soapenv:Body>
> >>  <q0:BillRequest>
> >>  <section>
> >>   <uid>test012565</uid>
> >>   <requestorID>XYZA</requestorID>
> >>   <lang>EN</lang>
> >>   <branchCode>0011</branchCode>
> >>   <client>xx.xx.xx.xx</client>
> >>   <date>2009-01-20T07:07:54.587Z</date>
> >>   <id>0011</id>
> >>   </section>
> >>   <Data />
> >>   </q0:BillRequest>
> >>   </soapenv:Body>
> >>   </soapenv:Envelope>
> >>
> >>
> >>
> >> On Tue, Jan 20, 2009 at 4:11 PM, Andreas Veithen
> >> <an...@gmail.com> wrote:
> >>>
> >>> Can you also post a sample request that triggers this issue? In
> >>> particular is it a SOAP or plain XML request?
> >>>
> >>> Andreas
> >>>
> >>> On Tue, Jan 20, 2009 at 12:40, asheikh <as...@gmail.com>
> wrote:
> >>> > Andreas,
> >>> >
> >>> > Below is the code that calls check method
> >>> >
> >>> > if ("retreiveBillservice".equals(methodName)) {
> >>> >
> >>> >                     RAIResponse rAIResponse = null;
> >>> >                     RAIRequest wrappedParam = (RAIRequest)
> >>> > fromOM(msgContext
> >>> >
> .getEnvelope().getBody().getFirstElement(),
> >>> >                             RAIRequest.class,
> >>> > getEnvelopeNamespaces(msgContext
> >>> >                                     .getEnvelope()));
> >>> >
> >>> >                     try {
> >>> >                         if(doCheckMM)
> >>> >                             mmc.check(msgContext);
> >>> >
> >>> >
> >>> >
> >>> > On Tue, Jan 20, 2009 at 2:36 PM, asheikh <as...@gmail.com>
> >>> > wrote:
> >>> >>
> >>> >> Thansk andreas, yes this is the code that causes  the exception
> >>> >>
> >>> >> public void check(MessageContext ctx) throws MiddlewareException {
> >>> >>         Iterator iter =
> >>> >> ctx.getEnvelope().getBody().getChildElements();
> >>> >>         OMElement content = null;
> >>> >>         while (iter.hasNext()) {
> >>> >>             OMNode node = (OMNode) iter.next();
> >>> >>             if (node.getType() == OMNode.ELEMENT_NODE) {
> >>> >>                 content = (OMElement) node;
> >>> >>                 break;
> >>> >>             }
> >>> >>         }
> >>> >> ..
> >>> >> ...
> >>> >>
> >>> >>
> >>> >> On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen
> >>> >> <an...@gmail.com> wrote:
> >>> >>>
> >>> >>> Can you post the code in MMCHandler#check?
> >>> >>>
> >>> >>> Andreas
> >>> >>>
> >>> >>> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com>
> >>> >>> wrote:
> >>> >>> > Thanks a lot Andreas,
> >>> >>> >
> >>> >>> > Please see the stactrace below:
> >>> >>> >
> >>> >>> > Start- Stactrace:
> >>> >>> >
> >>> >>> > org.apache.axiom.om.OMException: Parser has already reached end
> of
> >>> >>> > the
> >>> >>> > document. No siblings found
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
> >>> >>> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
> >>> >>> > java.util.NoSuchElementException
> >>> >>> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
> >>> >>> >     at
> weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
> >>> >>> >     at
> >>> >>> > java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
> >>> >>> > Source)
> >>> >>> > Caused by: org.apache.axiom.om.OMException:
> >>> >>> > java.util.NoSuchElementException
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
> >>> >>> >     ... 18 more
> >>> >>> > Caused by: java.util.NoSuchElementException
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
> >>> >>> >     at
> >>> >>> >
> >>> >>> >
> >>> >>> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
> >>> >>> >     ... 22 more
> >>> >>> >
> >>> >>> > End- Stactrace:
> >>> >>> >
> >>> >>> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen
> >>> >>> > <an...@gmail.com>
> >>> >>> > wrote:
> >>> >>> >>
> >>> >>> >> Axiom uses a deferred parsing approach, i.e. it will build the
> >>> >>> >> object
> >>> >>> >> tree on demand. A call to toString() triggered by the
> >>> >>> >> System.out.println instruction or by inspecting the object in a
> >>> >>> >> debugger will have the effect of building the entire tree.
> >>> >>> >> Probably
> >>> >>> >> there is some code somewhere that works perfectly well with a
> >>> >>> >> fully
> >>> >>> >> built tree, but not if it is only partially built. This could be
> a
> >>> >>> >> bug
> >>> >>> >> in Axiom. Do you have a stacktrace of the exception?
> >>> >>> >>
> >>> >>> >> Andreas
> >>> >>> >>
> >>> >>> >> On Tue, Jan 20, 2009 at 11:26, asheikh <asad.a.sheikh@gmail.com
> >
> >>> >>> >> wrote:
> >>> >>> >> > Andreas,
> >>> >>> >> >
> >>> >>> >> > Thanks for your input, but it is still the same... Just
> >>> >>> >> > wondering
> >>> >>> >> > why
> >>> >>> >> > when i
> >>> >>> >> > debug it is  working and when I am not it does''t work
> >>> >>> >> >
> >>> >>> >> > Adding following line on top of the method also helps
> >>> >>> >> >     System.out.println("Messages: "+msgContext.getEnvelope());
> >>> >>> >> >
> >>> >>> >> > but this doesn't help
> >>> >>> >> >        msgContext.getEnvelope();
> >>> >>> >> >
> >>> >>> >> >
> >>> >>> >> > Thanks
> >>> >>> >> >
> >>> >>> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
> >>> >>> >> > <an...@gmail.com> wrote:
> >>> >>> >> >>
> >>> >>> >> >> Could be somehow related to WSCOMMONS-372. Can you test this
> >>> >>> >> >> with
> >>> >>> >> >> Axiom
> >>> >>> >> >> 1.2.8?
> >>> >>> >> >>
> >>> >>> >> >> Andreas
> >>> >>> >> >>
> >>> >>> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh
> >>> >>> >> >> <as...@gmail.com>
> >>> >>> >> >> wrote:
> >>> >>> >> >> > Hi,
> >>> >>> >> >> >
> >>> >>> >> >> > I have also realized that when I debug the
> >>> >>> >> >> > Message Context in eclipse and inspect in, it works and the
> >>> >>> >> >> > envelope
> >>> >>> >> >> > message
> >>> >>> >> >> > is there...
> >>> >>> >> >> >
> >>> >>> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1
> or
> >>> >>> >> >> > there is
> >>> >>> >> >> > something I am missing. The same code works in axis2. 1.3.1
> >>> >>> >> >> >
> >>> >>> >> >> > Thanks in advance
> >>> >>> >> >> >
> >>> >>> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh
> >>> >>> >> >> > <as...@gmail.com>
> >>> >>> >> >> > wrote:
> >>> >>> >> >> >>
> >>> >>> >> >> >> Hi,
> >>> >>> >> >> >>
> >>> >>> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4,
> >>> >>> >> >> >> and I
> >>> >>> >> >> >> am
> >>> >>> >> >> >> getting
> >>> >>> >> >> >> the following error whenever I invoke any service. Please
> >>> >>> >> >> >> advice,
> >>> >>> >> >> >> Thanks in
> >>> >>> >> >> >> advance
> >>> >>> >> >> >>
> >>> >>> >> >> >> This code does't work:
> >>> >>> >> >> >>     public void invokeBusinessLogic(
> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
> >>> >>> >> >> >> msgContext,
> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
> >>> >>> >> >> >> newMsgContext)
> >>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
> >>> >>> >> >> >>
> >>> >>> >> >> >>         try {
> >>> >>> >> >> >>
> >>> >>> >> >> >>             // get the implementation class
> >>> >>> >> >> >>             Object obj =
> >>> >>> >> >> >> getTheImplementationObject(msgContext);
> >>> >>> >> >> >>             //System.out.println("Message xml :
> >>> >>> >> >> >> "+msgContext.getEnvelope());
> >>> >>> >> >> >>
> >>> >>> >> >> >>
> >>> >>> >> >> >> ..... more code
> >>> >>> >> >> >>        }
> >>> >>> >> >> >>
> >>> >>> >> >> >>
> >>> >>> >> >> >> This code Works(removing comments from the System.out.):
> >>> >>> >> >> >>     public void invokeBusinessLogic(
> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
> >>> >>> >> >> >> msgContext,
> >>> >>> >> >> >>             org.apache.axis2.context.MessageContext
> >>> >>> >> >> >> newMsgContext)
> >>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
> >>> >>> >> >> >>
> >>> >>> >> >> >>         try {
> >>> >>> >> >> >>
> >>> >>> >> >> >>             // get the implementation class
> >>> >>> >> >> >>             Object obj =
> >>> >>> >> >> >> getTheImplementationObject(msgContext);
> >>> >>> >> >> >>             System.out.println("Message xml :
> >>> >>> >> >> >> "+msgContext.getEnvelope());
> >>> >>> >> >> >>
> >>> >>> >> >> >> ..... more code
> >>> >>> >> >> >>        }
> >>> >>> >> >> >>
> >>> >>> >> >> >> Exception:
> >>> >>> >> >> >> - <soapenv:Envelope
> >>> >>> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/
> ">
> >>> >>> >> >> >> - <soapenv:Body>
> >>> >>> >> >> >> - <soapenv:Fault>
> >>> >>> >> >> >>   <faultcode>soapenv:Server</faultcode>
> >>> >>> >> >> >>   <faultstring>Parser has already reached end of the
> >>> >>> >> >> >> document.
> >>> >>> >> >> >> No
> >>> >>> >> >> >> siblings
> >>> >>> >> >> >> found</faultstring>
> >>> >>> >> >> >>   <detail />
> >>> >>> >> >> >>   </soapenv:Fault>
> >>> >>> >> >> >>   </soapenv:Body>
> >>> >>> >> >> >>   </soapenv:Envelope>
> >>> >>> >> >> >
> >>> >>> >> >> >
> >>> >>> >> >
> >>> >>> >> >
> >>> >>> >
> >>> >>> >
> >>> >>
> >>> >
> >>> >
> >>
> >
> >
>

Re: Parser has already reached end of the document. No siblings found

Posted by Andreas Veithen <an...@gmail.com>.
I tried to reproduce the issue using the SOAP message you posted and
trying to emulate the sequence of Axiom calls your code is making, but
I didn't succeed. My guess is that this is a subtle issue somewhere in
Axiom and that is triggered under particular conditions. The only way
to locate the root cause would be to debug the issue using your code.
If you are willing to share your code with us in a form that allows us
to easily reproduce the issue, we can do this. Otherwise, as a
workaround for this issue, you could add the following instruction to
your code (in place of the System.out.println):

msgContext.getEnvelope().build()

Regards,

Andreas

On Wed, Jan 21, 2009 at 11:03, asheikh <as...@gmail.com> wrote:
> Hi Andreas,
>
> did this show anything that I am doing, thanks for  your help
>
>
> On Wed, Jan 21, 2009 at 7:34 AM, asheikh <as...@gmail.com> wrote:
>>
>> Andreas,
>>
>> I couldn't respond earlier than this,  It is a soap request,
>>
>> <soapenv:Envelope
>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
>> xmlns:q0="http://www.qnb.com.qa/mwSchema"
>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>>  <soapenv:Body>
>>  <q0:BillRequest>
>>  <section>
>>   <uid>test012565</uid>
>>   <requestorID>XYZA</requestorID>
>>   <lang>EN</lang>
>>   <branchCode>0011</branchCode>
>>   <client>xx.xx.xx.xx</client>
>>   <date>2009-01-20T07:07:54.587Z</date>
>>   <id>0011</id>
>>   </section>
>>   <Data />
>>   </q0:BillRequest>
>>   </soapenv:Body>
>>   </soapenv:Envelope>
>>
>>
>>
>> On Tue, Jan 20, 2009 at 4:11 PM, Andreas Veithen
>> <an...@gmail.com> wrote:
>>>
>>> Can you also post a sample request that triggers this issue? In
>>> particular is it a SOAP or plain XML request?
>>>
>>> Andreas
>>>
>>> On Tue, Jan 20, 2009 at 12:40, asheikh <as...@gmail.com> wrote:
>>> > Andreas,
>>> >
>>> > Below is the code that calls check method
>>> >
>>> > if ("retreiveBillservice".equals(methodName)) {
>>> >
>>> >                     RAIResponse rAIResponse = null;
>>> >                     RAIRequest wrappedParam = (RAIRequest)
>>> > fromOM(msgContext
>>> >                             .getEnvelope().getBody().getFirstElement(),
>>> >                             RAIRequest.class,
>>> > getEnvelopeNamespaces(msgContext
>>> >                                     .getEnvelope()));
>>> >
>>> >                     try {
>>> >                         if(doCheckMM)
>>> >                             mmc.check(msgContext);
>>> >
>>> >
>>> >
>>> > On Tue, Jan 20, 2009 at 2:36 PM, asheikh <as...@gmail.com>
>>> > wrote:
>>> >>
>>> >> Thansk andreas, yes this is the code that causes  the exception
>>> >>
>>> >> public void check(MessageContext ctx) throws MiddlewareException {
>>> >>         Iterator iter =
>>> >> ctx.getEnvelope().getBody().getChildElements();
>>> >>         OMElement content = null;
>>> >>         while (iter.hasNext()) {
>>> >>             OMNode node = (OMNode) iter.next();
>>> >>             if (node.getType() == OMNode.ELEMENT_NODE) {
>>> >>                 content = (OMElement) node;
>>> >>                 break;
>>> >>             }
>>> >>         }
>>> >> ..
>>> >> ...
>>> >>
>>> >>
>>> >> On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen
>>> >> <an...@gmail.com> wrote:
>>> >>>
>>> >>> Can you post the code in MMCHandler#check?
>>> >>>
>>> >>> Andreas
>>> >>>
>>> >>> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com>
>>> >>> wrote:
>>> >>> > Thanks a lot Andreas,
>>> >>> >
>>> >>> > Please see the stactrace below:
>>> >>> >
>>> >>> > Start- Stactrace:
>>> >>> >
>>> >>> > org.apache.axiom.om.OMException: Parser has already reached end of
>>> >>> > the
>>> >>> > document. No siblings found
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
>>> >>> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
>>> >>> > java.util.NoSuchElementException
>>> >>> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
>>> >>> >     at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
>>> >>> >     at
>>> >>> > java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
>>> >>> > Source)
>>> >>> > Caused by: org.apache.axiom.om.OMException:
>>> >>> > java.util.NoSuchElementException
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
>>> >>> >     ... 18 more
>>> >>> > Caused by: java.util.NoSuchElementException
>>> >>> >     at
>>> >>> >
>>> >>> > com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
>>> >>> >     at
>>> >>> >
>>> >>> >
>>> >>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
>>> >>> >     ... 22 more
>>> >>> >
>>> >>> > End- Stactrace:
>>> >>> >
>>> >>> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen
>>> >>> > <an...@gmail.com>
>>> >>> > wrote:
>>> >>> >>
>>> >>> >> Axiom uses a deferred parsing approach, i.e. it will build the
>>> >>> >> object
>>> >>> >> tree on demand. A call to toString() triggered by the
>>> >>> >> System.out.println instruction or by inspecting the object in a
>>> >>> >> debugger will have the effect of building the entire tree.
>>> >>> >> Probably
>>> >>> >> there is some code somewhere that works perfectly well with a
>>> >>> >> fully
>>> >>> >> built tree, but not if it is only partially built. This could be a
>>> >>> >> bug
>>> >>> >> in Axiom. Do you have a stacktrace of the exception?
>>> >>> >>
>>> >>> >> Andreas
>>> >>> >>
>>> >>> >> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com>
>>> >>> >> wrote:
>>> >>> >> > Andreas,
>>> >>> >> >
>>> >>> >> > Thanks for your input, but it is still the same... Just
>>> >>> >> > wondering
>>> >>> >> > why
>>> >>> >> > when i
>>> >>> >> > debug it is  working and when I am not it does''t work
>>> >>> >> >
>>> >>> >> > Adding following line on top of the method also helps
>>> >>> >> >     System.out.println("Messages: "+msgContext.getEnvelope());
>>> >>> >> >
>>> >>> >> > but this doesn't help
>>> >>> >> >        msgContext.getEnvelope();
>>> >>> >> >
>>> >>> >> >
>>> >>> >> > Thanks
>>> >>> >> >
>>> >>> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
>>> >>> >> > <an...@gmail.com> wrote:
>>> >>> >> >>
>>> >>> >> >> Could be somehow related to WSCOMMONS-372. Can you test this
>>> >>> >> >> with
>>> >>> >> >> Axiom
>>> >>> >> >> 1.2.8?
>>> >>> >> >>
>>> >>> >> >> Andreas
>>> >>> >> >>
>>> >>> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh
>>> >>> >> >> <as...@gmail.com>
>>> >>> >> >> wrote:
>>> >>> >> >> > Hi,
>>> >>> >> >> >
>>> >>> >> >> > I have also realized that when I debug the
>>> >>> >> >> > Message Context in eclipse and inspect in, it works and the
>>> >>> >> >> > envelope
>>> >>> >> >> > message
>>> >>> >> >> > is there...
>>> >>> >> >> >
>>> >>> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or
>>> >>> >> >> > there is
>>> >>> >> >> > something I am missing. The same code works in axis2. 1.3.1
>>> >>> >> >> >
>>> >>> >> >> > Thanks in advance
>>> >>> >> >> >
>>> >>> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh
>>> >>> >> >> > <as...@gmail.com>
>>> >>> >> >> > wrote:
>>> >>> >> >> >>
>>> >>> >> >> >> Hi,
>>> >>> >> >> >>
>>> >>> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4,
>>> >>> >> >> >> and I
>>> >>> >> >> >> am
>>> >>> >> >> >> getting
>>> >>> >> >> >> the following error whenever I invoke any service. Please
>>> >>> >> >> >> advice,
>>> >>> >> >> >> Thanks in
>>> >>> >> >> >> advance
>>> >>> >> >> >>
>>> >>> >> >> >> This code does't work:
>>> >>> >> >> >>     public void invokeBusinessLogic(
>>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>>> >>> >> >> >> msgContext,
>>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>>> >>> >> >> >> newMsgContext)
>>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
>>> >>> >> >> >>
>>> >>> >> >> >>         try {
>>> >>> >> >> >>
>>> >>> >> >> >>             // get the implementation class
>>> >>> >> >> >>             Object obj =
>>> >>> >> >> >> getTheImplementationObject(msgContext);
>>> >>> >> >> >>             //System.out.println("Message xml :
>>> >>> >> >> >> "+msgContext.getEnvelope());
>>> >>> >> >> >>
>>> >>> >> >> >>
>>> >>> >> >> >> ..... more code
>>> >>> >> >> >>        }
>>> >>> >> >> >>
>>> >>> >> >> >>
>>> >>> >> >> >> This code Works(removing comments from the System.out.):
>>> >>> >> >> >>     public void invokeBusinessLogic(
>>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>>> >>> >> >> >> msgContext,
>>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>>> >>> >> >> >> newMsgContext)
>>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
>>> >>> >> >> >>
>>> >>> >> >> >>         try {
>>> >>> >> >> >>
>>> >>> >> >> >>             // get the implementation class
>>> >>> >> >> >>             Object obj =
>>> >>> >> >> >> getTheImplementationObject(msgContext);
>>> >>> >> >> >>             System.out.println("Message xml :
>>> >>> >> >> >> "+msgContext.getEnvelope());
>>> >>> >> >> >>
>>> >>> >> >> >> ..... more code
>>> >>> >> >> >>        }
>>> >>> >> >> >>
>>> >>> >> >> >> Exception:
>>> >>> >> >> >> - <soapenv:Envelope
>>> >>> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>> >>> >> >> >> - <soapenv:Body>
>>> >>> >> >> >> - <soapenv:Fault>
>>> >>> >> >> >>   <faultcode>soapenv:Server</faultcode>
>>> >>> >> >> >>   <faultstring>Parser has already reached end of the
>>> >>> >> >> >> document.
>>> >>> >> >> >> No
>>> >>> >> >> >> siblings
>>> >>> >> >> >> found</faultstring>
>>> >>> >> >> >>   <detail />
>>> >>> >> >> >>   </soapenv:Fault>
>>> >>> >> >> >>   </soapenv:Body>
>>> >>> >> >> >>   </soapenv:Envelope>
>>> >>> >> >> >
>>> >>> >> >> >
>>> >>> >> >
>>> >>> >> >
>>> >>> >
>>> >>> >
>>> >>
>>> >
>>> >
>>
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Hi Andreas,

did this show anything that I am doing, thanks for  your help


On Wed, Jan 21, 2009 at 7:34 AM, asheikh <as...@gmail.com> wrote:

> Andreas,
>
> I couldn't respond earlier than this,  It is a soap request,
>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:q0="http://www.qnb.com.qa/mwSchema" xmlns:xsd="
> http://www.w3.org/2001/XMLSchema" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance">
>  <soapenv:Body>
>  <q0:BillRequest>
>  <section>
>   <uid>test012565</uid>
>   <requestorID>XYZA</requestorID>
>   <lang>EN</lang>
>   <branchCode>0011</branchCode>
>   <client>xx.xx.xx.xx</client>
>   <date>2009-01-20T07:07:54.587Z</date>
>   <id>0011</id>
>   </section>
>   <Data />
>   </q0:BillRequest>
>   </soapenv:Body>
>   </soapenv:Envelope>
>
>
>
>
> On Tue, Jan 20, 2009 at 4:11 PM, Andreas Veithen <
> andreas.veithen@gmail.com> wrote:
>
>> Can you also post a sample request that triggers this issue? In
>> particular is it a SOAP or plain XML request?
>>
>> Andreas
>>
>> On Tue, Jan 20, 2009 at 12:40, asheikh <as...@gmail.com> wrote:
>> > Andreas,
>> >
>> > Below is the code that calls check method
>> >
>> > if ("retreiveBillservice".equals(methodName)) {
>> >
>> >                     RAIResponse rAIResponse = null;
>> >                     RAIRequest wrappedParam = (RAIRequest)
>> fromOM(msgContext
>> >                             .getEnvelope().getBody().getFirstElement(),
>> >                             RAIRequest.class,
>> > getEnvelopeNamespaces(msgContext
>> >                                     .getEnvelope()));
>> >
>> >                     try {
>> >                         if(doCheckMM)
>> >                             mmc.check(msgContext);
>> >
>> >
>> >
>> > On Tue, Jan 20, 2009 at 2:36 PM, asheikh <as...@gmail.com>
>> wrote:
>> >>
>> >> Thansk andreas, yes this is the code that causes  the exception
>> >>
>> >> public void check(MessageContext ctx) throws MiddlewareException {
>> >>         Iterator iter = ctx.getEnvelope().getBody().getChildElements();
>> >>         OMElement content = null;
>> >>         while (iter.hasNext()) {
>> >>             OMNode node = (OMNode) iter.next();
>> >>             if (node.getType() == OMNode.ELEMENT_NODE) {
>> >>                 content = (OMElement) node;
>> >>                 break;
>> >>             }
>> >>         }
>> >> ..
>> >> ...
>> >>
>> >>
>> >> On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen
>> >> <an...@gmail.com> wrote:
>> >>>
>> >>> Can you post the code in MMCHandler#check?
>> >>>
>> >>> Andreas
>> >>>
>> >>> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com>
>> wrote:
>> >>> > Thanks a lot Andreas,
>> >>> >
>> >>> > Please see the stactrace below:
>> >>> >
>> >>> > Start- Stactrace:
>> >>> >
>> >>> > org.apache.axiom.om.OMException: Parser has already reached end of
>> the
>> >>> > document. No siblings found
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>> >>> >     at
>> >>> >
>> >>> >
>> com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
>> >>> >     at
>> >>> >
>> >>> >
>> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>> >>> >     at
>> >>> >
>> >>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>> >>> >     at
>> >>> >
>> >>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
>> >>> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
>> >>> > java.util.NoSuchElementException
>> >>> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
>> >>> >     at
>> >>> >
>> >>> >
>> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>> >>> >     at
>> >>> >
>> >>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>> >>> >     at
>> >>> >
>> >>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
>> >>> >     at
>> >>> >
>> >>> >
>> weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
>> >>> >     at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
>> >>> >     at
>> java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
>> >>> > Source)
>> >>> > Caused by: org.apache.axiom.om.OMException:
>> >>> > java.util.NoSuchElementException
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>> >>> >     at
>> >>> >
>> >>> >
>> com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
>> >>> >     at
>> >>> >
>> >>> >
>> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
>> >>> >     ... 18 more
>> >>> > Caused by: java.util.NoSuchElementException
>> >>> >     at
>> >>> >
>> com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
>> >>> >     at
>> >>> >
>> >>> >
>> javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
>> >>> >     at
>> >>> >
>> >>> >
>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
>> >>> >     ... 22 more
>> >>> >
>> >>> > End- Stactrace:
>> >>> >
>> >>> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen
>> >>> > <an...@gmail.com>
>> >>> > wrote:
>> >>> >>
>> >>> >> Axiom uses a deferred parsing approach, i.e. it will build the
>> object
>> >>> >> tree on demand. A call to toString() triggered by the
>> >>> >> System.out.println instruction or by inspecting the object in a
>> >>> >> debugger will have the effect of building the entire tree. Probably
>> >>> >> there is some code somewhere that works perfectly well with a fully
>> >>> >> built tree, but not if it is only partially built. This could be a
>> bug
>> >>> >> in Axiom. Do you have a stacktrace of the exception?
>> >>> >>
>> >>> >> Andreas
>> >>> >>
>> >>> >> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com>
>> >>> >> wrote:
>> >>> >> > Andreas,
>> >>> >> >
>> >>> >> > Thanks for your input, but it is still the same... Just wondering
>> >>> >> > why
>> >>> >> > when i
>> >>> >> > debug it is  working and when I am not it does''t work
>> >>> >> >
>> >>> >> > Adding following line on top of the method also helps
>> >>> >> >     System.out.println("Messages: "+msgContext.getEnvelope());
>> >>> >> >
>> >>> >> > but this doesn't help
>> >>> >> >        msgContext.getEnvelope();
>> >>> >> >
>> >>> >> >
>> >>> >> > Thanks
>> >>> >> >
>> >>> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
>> >>> >> > <an...@gmail.com> wrote:
>> >>> >> >>
>> >>> >> >> Could be somehow related to WSCOMMONS-372. Can you test this
>> with
>> >>> >> >> Axiom
>> >>> >> >> 1.2.8?
>> >>> >> >>
>> >>> >> >> Andreas
>> >>> >> >>
>> >>> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh <asad.a.sheikh@gmail.com
>> >
>> >>> >> >> wrote:
>> >>> >> >> > Hi,
>> >>> >> >> >
>> >>> >> >> > I have also realized that when I debug the
>> >>> >> >> > Message Context in eclipse and inspect in, it works and the
>> >>> >> >> > envelope
>> >>> >> >> > message
>> >>> >> >> > is there...
>> >>> >> >> >
>> >>> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or
>> >>> >> >> > there is
>> >>> >> >> > something I am missing. The same code works in axis2. 1.3.1
>> >>> >> >> >
>> >>> >> >> > Thanks in advance
>> >>> >> >> >
>> >>> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh
>> >>> >> >> > <as...@gmail.com>
>> >>> >> >> > wrote:
>> >>> >> >> >>
>> >>> >> >> >> Hi,
>> >>> >> >> >>
>> >>> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and
>> I
>> >>> >> >> >> am
>> >>> >> >> >> getting
>> >>> >> >> >> the following error whenever I invoke any service. Please
>> >>> >> >> >> advice,
>> >>> >> >> >> Thanks in
>> >>> >> >> >> advance
>> >>> >> >> >>
>> >>> >> >> >> This code does't work:
>> >>> >> >> >>     public void invokeBusinessLogic(
>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> msgContext,
>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> >>> >> >> >> newMsgContext)
>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
>> >>> >> >> >>
>> >>> >> >> >>         try {
>> >>> >> >> >>
>> >>> >> >> >>             // get the implementation class
>> >>> >> >> >>             Object obj =
>> getTheImplementationObject(msgContext);
>> >>> >> >> >>             //System.out.println("Message xml :
>> >>> >> >> >> "+msgContext.getEnvelope());
>> >>> >> >> >>
>> >>> >> >> >>
>> >>> >> >> >> ..... more code
>> >>> >> >> >>        }
>> >>> >> >> >>
>> >>> >> >> >>
>> >>> >> >> >> This code Works(removing comments from the System.out.):
>> >>> >> >> >>     public void invokeBusinessLogic(
>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> msgContext,
>> >>> >> >> >>             org.apache.axis2.context.MessageContext
>> >>> >> >> >> newMsgContext)
>> >>> >> >> >>             throws org.apache.axis2.AxisFault {
>> >>> >> >> >>
>> >>> >> >> >>         try {
>> >>> >> >> >>
>> >>> >> >> >>             // get the implementation class
>> >>> >> >> >>             Object obj =
>> getTheImplementationObject(msgContext);
>> >>> >> >> >>             System.out.println("Message xml :
>> >>> >> >> >> "+msgContext.getEnvelope());
>> >>> >> >> >>
>> >>> >> >> >> ..... more code
>> >>> >> >> >>        }
>> >>> >> >> >>
>> >>> >> >> >> Exception:
>> >>> >> >> >> - <soapenv:Envelope
>> >>> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> >>> >> >> >> - <soapenv:Body>
>> >>> >> >> >> - <soapenv:Fault>
>> >>> >> >> >>   <faultcode>soapenv:Server</faultcode>
>> >>> >> >> >>   <faultstring>Parser has already reached end of the
>> document.
>> >>> >> >> >> No
>> >>> >> >> >> siblings
>> >>> >> >> >> found</faultstring>
>> >>> >> >> >>   <detail />
>> >>> >> >> >>   </soapenv:Fault>
>> >>> >> >> >>   </soapenv:Body>
>> >>> >> >> >>   </soapenv:Envelope>
>> >>> >> >> >
>> >>> >> >> >
>> >>> >> >
>> >>> >> >
>> >>> >
>> >>> >
>> >>
>> >
>> >
>>
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Andreas,

I couldn't respond earlier than this,  It is a soap request,

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:q0="http://www.qnb.com.qa/mwSchema" xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance">
 <soapenv:Body>
 <q0:BillRequest>
 <section>
  <uid>test012565</uid>
  <requestorID>XYZA</requestorID>
  <lang>EN</lang>
  <branchCode>0011</branchCode>
  <client>xx.xx.xx.xx</client>
  <date>2009-01-20T07:07:54.587Z</date>
  <id>0011</id>
  </section>
  <Data />
  </q0:BillRequest>
  </soapenv:Body>
  </soapenv:Envelope>



On Tue, Jan 20, 2009 at 4:11 PM, Andreas Veithen
<an...@gmail.com>wrote:

> Can you also post a sample request that triggers this issue? In
> particular is it a SOAP or plain XML request?
>
> Andreas
>
> On Tue, Jan 20, 2009 at 12:40, asheikh <as...@gmail.com> wrote:
> > Andreas,
> >
> > Below is the code that calls check method
> >
> > if ("retreiveBillservice".equals(methodName)) {
> >
> >                     RAIResponse rAIResponse = null;
> >                     RAIRequest wrappedParam = (RAIRequest)
> fromOM(msgContext
> >                             .getEnvelope().getBody().getFirstElement(),
> >                             RAIRequest.class,
> > getEnvelopeNamespaces(msgContext
> >                                     .getEnvelope()));
> >
> >                     try {
> >                         if(doCheckMM)
> >                             mmc.check(msgContext);
> >
> >
> >
> > On Tue, Jan 20, 2009 at 2:36 PM, asheikh <as...@gmail.com>
> wrote:
> >>
> >> Thansk andreas, yes this is the code that causes  the exception
> >>
> >> public void check(MessageContext ctx) throws MiddlewareException {
> >>         Iterator iter = ctx.getEnvelope().getBody().getChildElements();
> >>         OMElement content = null;
> >>         while (iter.hasNext()) {
> >>             OMNode node = (OMNode) iter.next();
> >>             if (node.getType() == OMNode.ELEMENT_NODE) {
> >>                 content = (OMElement) node;
> >>                 break;
> >>             }
> >>         }
> >> ..
> >> ...
> >>
> >>
> >> On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen
> >> <an...@gmail.com> wrote:
> >>>
> >>> Can you post the code in MMCHandler#check?
> >>>
> >>> Andreas
> >>>
> >>> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com>
> wrote:
> >>> > Thanks a lot Andreas,
> >>> >
> >>> > Please see the stactrace below:
> >>> >
> >>> > Start- Stactrace:
> >>> >
> >>> > org.apache.axiom.om.OMException: Parser has already reached end of
> the
> >>> > document. No siblings found
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
> >>> >     at
> >>> >
> >>> >
> com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
> >>> >     at
> >>> >
> >>> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
> >>> >     at
> >>> >
> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
> >>> >     at
> >>> >
> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
> >>> >     at
> >>> >
> >>> >
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
> >>> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
> >>> > java.util.NoSuchElementException
> >>> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
> >>> >     at
> >>> >
> >>> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
> >>> >     at
> >>> >
> >>> >
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
> >>> >     at
> >>> >
> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
> >>> >     at
> >>> >
> >>> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
> >>> >     at
> >>> >
> >>> >
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
> >>> >     at
> >>> >
> >>> >
> weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
> >>> >     at
> >>> >
> >>> >
> weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
> >>> >     at
> >>> >
> >>> >
> weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
> >>> >     at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
> >>> >     at
> java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
> >>> > Source)
> >>> > Caused by: org.apache.axiom.om.OMException:
> >>> > java.util.NoSuchElementException
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
> >>> >     at
> >>> >
> >>> >
> com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
> >>> >     at
> >>> >
> >>> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
> >>> >     ... 18 more
> >>> > Caused by: java.util.NoSuchElementException
> >>> >     at
> >>> >
> com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
> >>> >     at
> >>> >
> >>> >
> javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
> >>> >     at
> >>> >
> >>> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
> >>> >     ... 22 more
> >>> >
> >>> > End- Stactrace:
> >>> >
> >>> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen
> >>> > <an...@gmail.com>
> >>> > wrote:
> >>> >>
> >>> >> Axiom uses a deferred parsing approach, i.e. it will build the
> object
> >>> >> tree on demand. A call to toString() triggered by the
> >>> >> System.out.println instruction or by inspecting the object in a
> >>> >> debugger will have the effect of building the entire tree. Probably
> >>> >> there is some code somewhere that works perfectly well with a fully
> >>> >> built tree, but not if it is only partially built. This could be a
> bug
> >>> >> in Axiom. Do you have a stacktrace of the exception?
> >>> >>
> >>> >> Andreas
> >>> >>
> >>> >> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com>
> >>> >> wrote:
> >>> >> > Andreas,
> >>> >> >
> >>> >> > Thanks for your input, but it is still the same... Just wondering
> >>> >> > why
> >>> >> > when i
> >>> >> > debug it is  working and when I am not it does''t work
> >>> >> >
> >>> >> > Adding following line on top of the method also helps
> >>> >> >     System.out.println("Messages: "+msgContext.getEnvelope());
> >>> >> >
> >>> >> > but this doesn't help
> >>> >> >        msgContext.getEnvelope();
> >>> >> >
> >>> >> >
> >>> >> > Thanks
> >>> >> >
> >>> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
> >>> >> > <an...@gmail.com> wrote:
> >>> >> >>
> >>> >> >> Could be somehow related to WSCOMMONS-372. Can you test this with
> >>> >> >> Axiom
> >>> >> >> 1.2.8?
> >>> >> >>
> >>> >> >> Andreas
> >>> >> >>
> >>> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com>
> >>> >> >> wrote:
> >>> >> >> > Hi,
> >>> >> >> >
> >>> >> >> > I have also realized that when I debug the
> >>> >> >> > Message Context in eclipse and inspect in, it works and the
> >>> >> >> > envelope
> >>> >> >> > message
> >>> >> >> > is there...
> >>> >> >> >
> >>> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or
> >>> >> >> > there is
> >>> >> >> > something I am missing. The same code works in axis2. 1.3.1
> >>> >> >> >
> >>> >> >> > Thanks in advance
> >>> >> >> >
> >>> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh
> >>> >> >> > <as...@gmail.com>
> >>> >> >> > wrote:
> >>> >> >> >>
> >>> >> >> >> Hi,
> >>> >> >> >>
> >>> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and
> I
> >>> >> >> >> am
> >>> >> >> >> getting
> >>> >> >> >> the following error whenever I invoke any service. Please
> >>> >> >> >> advice,
> >>> >> >> >> Thanks in
> >>> >> >> >> advance
> >>> >> >> >>
> >>> >> >> >> This code does't work:
> >>> >> >> >>     public void invokeBusinessLogic(
> >>> >> >> >>             org.apache.axis2.context.MessageContext
> msgContext,
> >>> >> >> >>             org.apache.axis2.context.MessageContext
> >>> >> >> >> newMsgContext)
> >>> >> >> >>             throws org.apache.axis2.AxisFault {
> >>> >> >> >>
> >>> >> >> >>         try {
> >>> >> >> >>
> >>> >> >> >>             // get the implementation class
> >>> >> >> >>             Object obj =
> getTheImplementationObject(msgContext);
> >>> >> >> >>             //System.out.println("Message xml :
> >>> >> >> >> "+msgContext.getEnvelope());
> >>> >> >> >>
> >>> >> >> >>
> >>> >> >> >> ..... more code
> >>> >> >> >>        }
> >>> >> >> >>
> >>> >> >> >>
> >>> >> >> >> This code Works(removing comments from the System.out.):
> >>> >> >> >>     public void invokeBusinessLogic(
> >>> >> >> >>             org.apache.axis2.context.MessageContext
> msgContext,
> >>> >> >> >>             org.apache.axis2.context.MessageContext
> >>> >> >> >> newMsgContext)
> >>> >> >> >>             throws org.apache.axis2.AxisFault {
> >>> >> >> >>
> >>> >> >> >>         try {
> >>> >> >> >>
> >>> >> >> >>             // get the implementation class
> >>> >> >> >>             Object obj =
> getTheImplementationObject(msgContext);
> >>> >> >> >>             System.out.println("Message xml :
> >>> >> >> >> "+msgContext.getEnvelope());
> >>> >> >> >>
> >>> >> >> >> ..... more code
> >>> >> >> >>        }
> >>> >> >> >>
> >>> >> >> >> Exception:
> >>> >> >> >> - <soapenv:Envelope
> >>> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> >>> >> >> >> - <soapenv:Body>
> >>> >> >> >> - <soapenv:Fault>
> >>> >> >> >>   <faultcode>soapenv:Server</faultcode>
> >>> >> >> >>   <faultstring>Parser has already reached end of the document.
> >>> >> >> >> No
> >>> >> >> >> siblings
> >>> >> >> >> found</faultstring>
> >>> >> >> >>   <detail />
> >>> >> >> >>   </soapenv:Fault>
> >>> >> >> >>   </soapenv:Body>
> >>> >> >> >>   </soapenv:Envelope>
> >>> >> >> >
> >>> >> >> >
> >>> >> >
> >>> >> >
> >>> >
> >>> >
> >>
> >
> >
>

Re: Parser has already reached end of the document. No siblings found

Posted by Andreas Veithen <an...@gmail.com>.
Can you also post a sample request that triggers this issue? In
particular is it a SOAP or plain XML request?

Andreas

On Tue, Jan 20, 2009 at 12:40, asheikh <as...@gmail.com> wrote:
> Andreas,
>
> Below is the code that calls check method
>
> if ("retreiveBillservice".equals(methodName)) {
>
>                     RAIResponse rAIResponse = null;
>                     RAIRequest wrappedParam = (RAIRequest) fromOM(msgContext
>                             .getEnvelope().getBody().getFirstElement(),
>                             RAIRequest.class,
> getEnvelopeNamespaces(msgContext
>                                     .getEnvelope()));
>
>                     try {
>                         if(doCheckMM)
>                             mmc.check(msgContext);
>
>
>
> On Tue, Jan 20, 2009 at 2:36 PM, asheikh <as...@gmail.com> wrote:
>>
>> Thansk andreas, yes this is the code that causes  the exception
>>
>> public void check(MessageContext ctx) throws MiddlewareException {
>>         Iterator iter = ctx.getEnvelope().getBody().getChildElements();
>>         OMElement content = null;
>>         while (iter.hasNext()) {
>>             OMNode node = (OMNode) iter.next();
>>             if (node.getType() == OMNode.ELEMENT_NODE) {
>>                 content = (OMElement) node;
>>                 break;
>>             }
>>         }
>> ..
>> ...
>>
>>
>> On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen
>> <an...@gmail.com> wrote:
>>>
>>> Can you post the code in MMCHandler#check?
>>>
>>> Andreas
>>>
>>> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com> wrote:
>>> > Thanks a lot Andreas,
>>> >
>>> > Please see the stactrace below:
>>> >
>>> > Start- Stactrace:
>>> >
>>> > org.apache.axiom.om.OMException: Parser has already reached end of the
>>> > document. No siblings found
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>>> >     at
>>> >
>>> > com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
>>> >     at
>>> >
>>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
>>> >     at
>>> >
>>> > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>>> >     at
>>> >
>>> > org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>>> >     at
>>> >
>>> > org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>>> >     at
>>> >
>>> > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>>> >     at
>>> >
>>> > org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>>> >     at
>>> >
>>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>>> >     at
>>> >
>>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>>> >     at
>>> >
>>> > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
>>> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
>>> > java.util.NoSuchElementException
>>> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
>>> >     at
>>> >
>>> > org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
>>> >     at
>>> >
>>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
>>> >     at
>>> >
>>> > org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>>> >     at
>>> >
>>> > org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>>> >     at
>>> >
>>> > org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>>> >     at
>>> >
>>> > org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>>> >     at
>>> >
>>> > org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>>> >     at
>>> >
>>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>>> >     at
>>> >
>>> > javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>>> >     at
>>> >
>>> > weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
>>> >     at
>>> >
>>> > weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
>>> >     at
>>> >
>>> > weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
>>> >     at
>>> >
>>> > weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
>>> >     at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
>>> >     at java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
>>> > Source)
>>> > Caused by: org.apache.axiom.om.OMException:
>>> > java.util.NoSuchElementException
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>>> >     at
>>> >
>>> > com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
>>> >     at
>>> >
>>> > com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
>>> >     ... 18 more
>>> > Caused by: java.util.NoSuchElementException
>>> >     at
>>> > com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
>>> >     at
>>> >
>>> > javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
>>> >     at
>>> >
>>> > org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
>>> >     ... 22 more
>>> >
>>> > End- Stactrace:
>>> >
>>> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen
>>> > <an...@gmail.com>
>>> > wrote:
>>> >>
>>> >> Axiom uses a deferred parsing approach, i.e. it will build the object
>>> >> tree on demand. A call to toString() triggered by the
>>> >> System.out.println instruction or by inspecting the object in a
>>> >> debugger will have the effect of building the entire tree. Probably
>>> >> there is some code somewhere that works perfectly well with a fully
>>> >> built tree, but not if it is only partially built. This could be a bug
>>> >> in Axiom. Do you have a stacktrace of the exception?
>>> >>
>>> >> Andreas
>>> >>
>>> >> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com>
>>> >> wrote:
>>> >> > Andreas,
>>> >> >
>>> >> > Thanks for your input, but it is still the same... Just wondering
>>> >> > why
>>> >> > when i
>>> >> > debug it is  working and when I am not it does''t work
>>> >> >
>>> >> > Adding following line on top of the method also helps
>>> >> >     System.out.println("Messages: "+msgContext.getEnvelope());
>>> >> >
>>> >> > but this doesn't help
>>> >> >        msgContext.getEnvelope();
>>> >> >
>>> >> >
>>> >> > Thanks
>>> >> >
>>> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
>>> >> > <an...@gmail.com> wrote:
>>> >> >>
>>> >> >> Could be somehow related to WSCOMMONS-372. Can you test this with
>>> >> >> Axiom
>>> >> >> 1.2.8?
>>> >> >>
>>> >> >> Andreas
>>> >> >>
>>> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com>
>>> >> >> wrote:
>>> >> >> > Hi,
>>> >> >> >
>>> >> >> > I have also realized that when I debug the
>>> >> >> > Message Context in eclipse and inspect in, it works and the
>>> >> >> > envelope
>>> >> >> > message
>>> >> >> > is there...
>>> >> >> >
>>> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or
>>> >> >> > there is
>>> >> >> > something I am missing. The same code works in axis2. 1.3.1
>>> >> >> >
>>> >> >> > Thanks in advance
>>> >> >> >
>>> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh
>>> >> >> > <as...@gmail.com>
>>> >> >> > wrote:
>>> >> >> >>
>>> >> >> >> Hi,
>>> >> >> >>
>>> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and I
>>> >> >> >> am
>>> >> >> >> getting
>>> >> >> >> the following error whenever I invoke any service. Please
>>> >> >> >> advice,
>>> >> >> >> Thanks in
>>> >> >> >> advance
>>> >> >> >>
>>> >> >> >> This code does't work:
>>> >> >> >>     public void invokeBusinessLogic(
>>> >> >> >>             org.apache.axis2.context.MessageContext msgContext,
>>> >> >> >>             org.apache.axis2.context.MessageContext
>>> >> >> >> newMsgContext)
>>> >> >> >>             throws org.apache.axis2.AxisFault {
>>> >> >> >>
>>> >> >> >>         try {
>>> >> >> >>
>>> >> >> >>             // get the implementation class
>>> >> >> >>             Object obj = getTheImplementationObject(msgContext);
>>> >> >> >>             //System.out.println("Message xml :
>>> >> >> >> "+msgContext.getEnvelope());
>>> >> >> >>
>>> >> >> >>
>>> >> >> >> ..... more code
>>> >> >> >>        }
>>> >> >> >>
>>> >> >> >>
>>> >> >> >> This code Works(removing comments from the System.out.):
>>> >> >> >>     public void invokeBusinessLogic(
>>> >> >> >>             org.apache.axis2.context.MessageContext msgContext,
>>> >> >> >>             org.apache.axis2.context.MessageContext
>>> >> >> >> newMsgContext)
>>> >> >> >>             throws org.apache.axis2.AxisFault {
>>> >> >> >>
>>> >> >> >>         try {
>>> >> >> >>
>>> >> >> >>             // get the implementation class
>>> >> >> >>             Object obj = getTheImplementationObject(msgContext);
>>> >> >> >>             System.out.println("Message xml :
>>> >> >> >> "+msgContext.getEnvelope());
>>> >> >> >>
>>> >> >> >> ..... more code
>>> >> >> >>        }
>>> >> >> >>
>>> >> >> >> Exception:
>>> >> >> >> - <soapenv:Envelope
>>> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>>> >> >> >> - <soapenv:Body>
>>> >> >> >> - <soapenv:Fault>
>>> >> >> >>   <faultcode>soapenv:Server</faultcode>
>>> >> >> >>   <faultstring>Parser has already reached end of the document.
>>> >> >> >> No
>>> >> >> >> siblings
>>> >> >> >> found</faultstring>
>>> >> >> >>   <detail />
>>> >> >> >>   </soapenv:Fault>
>>> >> >> >>   </soapenv:Body>
>>> >> >> >>   </soapenv:Envelope>
>>> >> >> >
>>> >> >> >
>>> >> >
>>> >> >
>>> >
>>> >
>>
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Andreas,

Below is the code that calls check method

if ("retreiveBillservice".equals(methodName)) {

                    RAIResponse rAIResponse = null;
                    RAIRequest wrappedParam = (RAIRequest) fromOM(msgContext
                            .getEnvelope().getBody().getFirstElement(),
                            RAIRequest.class,
getEnvelopeNamespaces(msgContext
                                    .getEnvelope()));

                    try {
                        if(doCheckMM)
                            mmc.check(msgContext);



On Tue, Jan 20, 2009 at 2:36 PM, asheikh <as...@gmail.com> wrote:

> Thansk andreas, yes this is the code that causes  the exception
>
> public void check(MessageContext ctx) throws MiddlewareException {
>         Iterator iter = ctx.getEnvelope().getBody().getChildElements();
>         OMElement content = null;
>         while (iter.hasNext()) {
>             OMNode node = (OMNode) iter.next();
>             if (node.getType() == OMNode.ELEMENT_NODE) {
>                 content = (OMElement) node;
>                 break;
>             }
>         }
> ..
> ...
>
>
>
> On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen <
> andreas.veithen@gmail.com> wrote:
>
>> Can you post the code in MMCHandler#check?
>>
>> Andreas
>>
>> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com> wrote:
>> > Thanks a lot Andreas,
>> >
>> > Please see the stactrace below:
>> >
>> > Start- Stactrace:
>> >
>> > org.apache.axiom.om.OMException: Parser has already reached end of the
>> > document. No siblings found
>> >     at
>> >
>> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
>> >     at
>> >
>> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>> >     at
>> >
>> com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
>> >     at
>> >
>> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
>> >     at
>> >
>> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>> >     at
>> >
>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>> >     at
>> >
>> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>> >     at
>> >
>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>> >     at
>> >
>> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>> >     at
>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>> >     at
>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>> >     at
>> >
>> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>> >     at
>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>> >     at
>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>> >     at
>> >
>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>> >     at
>> >
>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
>> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
>> > java.util.NoSuchElementException
>> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
>> >     at
>> >
>> org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
>> >     at
>> >
>> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
>> >     at
>> >
>> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>> >     at
>> >
>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>> >     at
>> >
>> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>> >     at
>> >
>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>> >     at
>> >
>> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>> >     at
>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>> >     at
>> >
>> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>> >     at
>> >
>> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>> >     at
>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>> >     at
>> >
>> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>> >     at
>> >
>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>> >     at
>> >
>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
>> >     at
>> >
>> weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
>> >     at
>> >
>> weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
>> >     at
>> >
>> weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
>> >     at
>> >
>> weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
>> >     at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
>> >     at java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
>> > Source)
>> > Caused by: org.apache.axiom.om.OMException:
>> java.util.NoSuchElementException
>> >     at
>> >
>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
>> >     at
>> >
>> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
>> >     at
>> >
>> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>> >     at
>> >
>> com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
>> >     at
>> >
>> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
>> >     ... 18 more
>> > Caused by: java.util.NoSuchElementException
>> >     at
>> > com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
>> >     at
>> >
>> javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
>> >     at
>> >
>> org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
>> >     at
>> >
>> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
>> >     at
>> >
>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
>> >     ... 22 more
>> >
>> > End- Stactrace:
>> >
>> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen <
>> andreas.veithen@gmail.com>
>> > wrote:
>> >>
>> >> Axiom uses a deferred parsing approach, i.e. it will build the object
>> >> tree on demand. A call to toString() triggered by the
>> >> System.out.println instruction or by inspecting the object in a
>> >> debugger will have the effect of building the entire tree. Probably
>> >> there is some code somewhere that works perfectly well with a fully
>> >> built tree, but not if it is only partially built. This could be a bug
>> >> in Axiom. Do you have a stacktrace of the exception?
>> >>
>> >> Andreas
>> >>
>> >> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com>
>> wrote:
>> >> > Andreas,
>> >> >
>> >> > Thanks for your input, but it is still the same... Just wondering why
>> >> > when i
>> >> > debug it is  working and when I am not it does''t work
>> >> >
>> >> > Adding following line on top of the method also helps
>> >> >     System.out.println("Messages: "+msgContext.getEnvelope());
>> >> >
>> >> > but this doesn't help
>> >> >        msgContext.getEnvelope();
>> >> >
>> >> >
>> >> > Thanks
>> >> >
>> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
>> >> > <an...@gmail.com> wrote:
>> >> >>
>> >> >> Could be somehow related to WSCOMMONS-372. Can you test this with
>> Axiom
>> >> >> 1.2.8?
>> >> >>
>> >> >> Andreas
>> >> >>
>> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com>
>> wrote:
>> >> >> > Hi,
>> >> >> >
>> >> >> > I have also realized that when I debug the
>> >> >> > Message Context in eclipse and inspect in, it works and the
>> envelope
>> >> >> > message
>> >> >> > is there...
>> >> >> >
>> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or there
>> is
>> >> >> > something I am missing. The same code works in axis2. 1.3.1
>> >> >> >
>> >> >> > Thanks in advance
>> >> >> >
>> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh <asad.a.sheikh@gmail.com
>> >
>> >> >> > wrote:
>> >> >> >>
>> >> >> >> Hi,
>> >> >> >>
>> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and I
>> am
>> >> >> >> getting
>> >> >> >> the following error whenever I invoke any service. Please advice,
>> >> >> >> Thanks in
>> >> >> >> advance
>> >> >> >>
>> >> >> >> This code does't work:
>> >> >> >>     public void invokeBusinessLogic(
>> >> >> >>             org.apache.axis2.context.MessageContext msgContext,
>> >> >> >>             org.apache.axis2.context.MessageContext
>> newMsgContext)
>> >> >> >>             throws org.apache.axis2.AxisFault {
>> >> >> >>
>> >> >> >>         try {
>> >> >> >>
>> >> >> >>             // get the implementation class
>> >> >> >>             Object obj = getTheImplementationObject(msgContext);
>> >> >> >>             //System.out.println("Message xml :
>> >> >> >> "+msgContext.getEnvelope());
>> >> >> >>
>> >> >> >>
>> >> >> >> ..... more code
>> >> >> >>        }
>> >> >> >>
>> >> >> >>
>> >> >> >> This code Works(removing comments from the System.out.):
>> >> >> >>     public void invokeBusinessLogic(
>> >> >> >>             org.apache.axis2.context.MessageContext msgContext,
>> >> >> >>             org.apache.axis2.context.MessageContext
>> newMsgContext)
>> >> >> >>             throws org.apache.axis2.AxisFault {
>> >> >> >>
>> >> >> >>         try {
>> >> >> >>
>> >> >> >>             // get the implementation class
>> >> >> >>             Object obj = getTheImplementationObject(msgContext);
>> >> >> >>             System.out.println("Message xml :
>> >> >> >> "+msgContext.getEnvelope());
>> >> >> >>
>> >> >> >> ..... more code
>> >> >> >>        }
>> >> >> >>
>> >> >> >> Exception:
>> >> >> >> - <soapenv:Envelope
>> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> >> >> >> - <soapenv:Body>
>> >> >> >> - <soapenv:Fault>
>> >> >> >>   <faultcode>soapenv:Server</faultcode>
>> >> >> >>   <faultstring>Parser has already reached end of the document. No
>> >> >> >> siblings
>> >> >> >> found</faultstring>
>> >> >> >>   <detail />
>> >> >> >>   </soapenv:Fault>
>> >> >> >>   </soapenv:Body>
>> >> >> >>   </soapenv:Envelope>
>> >> >> >
>> >> >> >
>> >> >
>> >> >
>> >
>> >
>>
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Thansk andreas, yes this is the code that causes  the exception

public void check(MessageContext ctx) throws MiddlewareException {
        Iterator iter = ctx.getEnvelope().getBody().getChildElements();
        OMElement content = null;
        while (iter.hasNext()) {
            OMNode node = (OMNode) iter.next();
            if (node.getType() == OMNode.ELEMENT_NODE) {
                content = (OMElement) node;
                break;
            }
        }
..
...


On Tue, Jan 20, 2009 at 2:34 PM, Andreas Veithen
<an...@gmail.com>wrote:

> Can you post the code in MMCHandler#check?
>
> Andreas
>
> On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com> wrote:
> > Thanks a lot Andreas,
> >
> > Please see the stactrace below:
> >
> > Start- Stactrace:
> >
> > org.apache.axiom.om.OMException: Parser has already reached end of the
> > document. No siblings found
> >     at
> >
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
> >     at
> >
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
> >     at
> >
> com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
> >     at
> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
> >     at
> >
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
> >     at
> >
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
> >     at
> >
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
> >     at
> >
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
> >     at
> >
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
> >     at
> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
> >     at
> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
> >     at
> >
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
> >     at
> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
> >     at
> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
> >     at
> >
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
> >     at
> >
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
> > 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
> > java.util.NoSuchElementException
> > org.apache.axis2.AxisFault: java.util.NoSuchElementException
> >     at
> >
> org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
> >     at
> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
> >     at
> >
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
> >     at
> >
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
> >     at
> >
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
> >     at
> >
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
> >     at
> >
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
> >     at
> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
> >     at
> >
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
> >     at
> >
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
> >     at
> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
> >     at
> >
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
> >     at
> >
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
> >     at
> >
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
> >     at
> >
> weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
> >     at
> >
> weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
> >     at
> >
> weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
> >     at
> >
> weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
> >     at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
> >     at java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
> > Source)
> > Caused by: org.apache.axiom.om.OMException:
> java.util.NoSuchElementException
> >     at
> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
> >     at
> >
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
> >     at
> >
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
> >     at
> >
> com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
> >     at
> >
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
> >     ... 18 more
> > Caused by: java.util.NoSuchElementException
> >     at
> > com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
> >     at
> >
> javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
> >     at
> >
> org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
> >     at
> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
> >     at
> >
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
> >     ... 22 more
> >
> > End- Stactrace:
> >
> > On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen <
> andreas.veithen@gmail.com>
> > wrote:
> >>
> >> Axiom uses a deferred parsing approach, i.e. it will build the object
> >> tree on demand. A call to toString() triggered by the
> >> System.out.println instruction or by inspecting the object in a
> >> debugger will have the effect of building the entire tree. Probably
> >> there is some code somewhere that works perfectly well with a fully
> >> built tree, but not if it is only partially built. This could be a bug
> >> in Axiom. Do you have a stacktrace of the exception?
> >>
> >> Andreas
> >>
> >> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com> wrote:
> >> > Andreas,
> >> >
> >> > Thanks for your input, but it is still the same... Just wondering why
> >> > when i
> >> > debug it is  working and when I am not it does''t work
> >> >
> >> > Adding following line on top of the method also helps
> >> >     System.out.println("Messages: "+msgContext.getEnvelope());
> >> >
> >> > but this doesn't help
> >> >        msgContext.getEnvelope();
> >> >
> >> >
> >> > Thanks
> >> >
> >> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
> >> > <an...@gmail.com> wrote:
> >> >>
> >> >> Could be somehow related to WSCOMMONS-372. Can you test this with
> Axiom
> >> >> 1.2.8?
> >> >>
> >> >> Andreas
> >> >>
> >> >> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com>
> wrote:
> >> >> > Hi,
> >> >> >
> >> >> > I have also realized that when I debug the
> >> >> > Message Context in eclipse and inspect in, it works and the
> envelope
> >> >> > message
> >> >> > is there...
> >> >> >
> >> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or there
> is
> >> >> > something I am missing. The same code works in axis2. 1.3.1
> >> >> >
> >> >> > Thanks in advance
> >> >> >
> >> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh <as...@gmail.com>
> >> >> > wrote:
> >> >> >>
> >> >> >> Hi,
> >> >> >>
> >> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and I am
> >> >> >> getting
> >> >> >> the following error whenever I invoke any service. Please advice,
> >> >> >> Thanks in
> >> >> >> advance
> >> >> >>
> >> >> >> This code does't work:
> >> >> >>     public void invokeBusinessLogic(
> >> >> >>             org.apache.axis2.context.MessageContext msgContext,
> >> >> >>             org.apache.axis2.context.MessageContext newMsgContext)
> >> >> >>             throws org.apache.axis2.AxisFault {
> >> >> >>
> >> >> >>         try {
> >> >> >>
> >> >> >>             // get the implementation class
> >> >> >>             Object obj = getTheImplementationObject(msgContext);
> >> >> >>             //System.out.println("Message xml :
> >> >> >> "+msgContext.getEnvelope());
> >> >> >>
> >> >> >>
> >> >> >> ..... more code
> >> >> >>        }
> >> >> >>
> >> >> >>
> >> >> >> This code Works(removing comments from the System.out.):
> >> >> >>     public void invokeBusinessLogic(
> >> >> >>             org.apache.axis2.context.MessageContext msgContext,
> >> >> >>             org.apache.axis2.context.MessageContext newMsgContext)
> >> >> >>             throws org.apache.axis2.AxisFault {
> >> >> >>
> >> >> >>         try {
> >> >> >>
> >> >> >>             // get the implementation class
> >> >> >>             Object obj = getTheImplementationObject(msgContext);
> >> >> >>             System.out.println("Message xml :
> >> >> >> "+msgContext.getEnvelope());
> >> >> >>
> >> >> >> ..... more code
> >> >> >>        }
> >> >> >>
> >> >> >> Exception:
> >> >> >> - <soapenv:Envelope
> >> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> >> >> >> - <soapenv:Body>
> >> >> >> - <soapenv:Fault>
> >> >> >>   <faultcode>soapenv:Server</faultcode>
> >> >> >>   <faultstring>Parser has already reached end of the document. No
> >> >> >> siblings
> >> >> >> found</faultstring>
> >> >> >>   <detail />
> >> >> >>   </soapenv:Fault>
> >> >> >>   </soapenv:Body>
> >> >> >>   </soapenv:Envelope>
> >> >> >
> >> >> >
> >> >
> >> >
> >
> >
>

Re: Parser has already reached end of the document. No siblings found

Posted by Andreas Veithen <an...@gmail.com>.
Can you post the code in MMCHandler#check?

Andreas

On Tue, Jan 20, 2009 at 12:11, asheikh <as...@gmail.com> wrote:
> Thanks a lot Andreas,
>
> Please see the stactrace below:
>
> Start- Stactrace:
>
> org.apache.axiom.om.OMException: Parser has already reached end of the
> document. No siblings found
>     at
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
>     at
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>     at
> com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
>     at
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
>     at
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>     at
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>     at
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>     at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>     at
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>     at
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>     at
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>     at
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>     at
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>     at
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>     at
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>     at
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
> 14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
> java.util.NoSuchElementException
> org.apache.axis2.AxisFault: java.util.NoSuchElementException
>     at
> org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
>     at
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
>     at
> org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
>     at
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
>     at
> org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
>     at
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
>     at
> org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
>     at
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
>     at
> javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
>     at
> weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
>     at
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
>     at
> weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
>     at
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
>     at
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
>     at
> weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
>     at
> weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
>     at
> weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
>     at
> weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
>     at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
>     at java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
> Source)
> Caused by: org.apache.axiom.om.OMException: java.util.NoSuchElementException
>     at
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
>     at
> org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
>     at
> org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
>     at
> com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
>     at
> com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
>     ... 18 more
> Caused by: java.util.NoSuchElementException
>     at
> com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
>     at
> javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
>     at
> org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
>     at
> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
>     at
> org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
>     ... 22 more
>
> End- Stactrace:
>
> On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen <an...@gmail.com>
> wrote:
>>
>> Axiom uses a deferred parsing approach, i.e. it will build the object
>> tree on demand. A call to toString() triggered by the
>> System.out.println instruction or by inspecting the object in a
>> debugger will have the effect of building the entire tree. Probably
>> there is some code somewhere that works perfectly well with a fully
>> built tree, but not if it is only partially built. This could be a bug
>> in Axiom. Do you have a stacktrace of the exception?
>>
>> Andreas
>>
>> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com> wrote:
>> > Andreas,
>> >
>> > Thanks for your input, but it is still the same... Just wondering why
>> > when i
>> > debug it is  working and when I am not it does''t work
>> >
>> > Adding following line on top of the method also helps
>> >     System.out.println("Messages: "+msgContext.getEnvelope());
>> >
>> > but this doesn't help
>> >        msgContext.getEnvelope();
>> >
>> >
>> > Thanks
>> >
>> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
>> > <an...@gmail.com> wrote:
>> >>
>> >> Could be somehow related to WSCOMMONS-372. Can you test this with Axiom
>> >> 1.2.8?
>> >>
>> >> Andreas
>> >>
>> >> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com> wrote:
>> >> > Hi,
>> >> >
>> >> > I have also realized that when I debug the
>> >> > Message Context in eclipse and inspect in, it works and the envelope
>> >> > message
>> >> > is there...
>> >> >
>> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or there is
>> >> > something I am missing. The same code works in axis2. 1.3.1
>> >> >
>> >> > Thanks in advance
>> >> >
>> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh <as...@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> Hi,
>> >> >>
>> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and I am
>> >> >> getting
>> >> >> the following error whenever I invoke any service. Please advice,
>> >> >> Thanks in
>> >> >> advance
>> >> >>
>> >> >> This code does't work:
>> >> >>     public void invokeBusinessLogic(
>> >> >>             org.apache.axis2.context.MessageContext msgContext,
>> >> >>             org.apache.axis2.context.MessageContext newMsgContext)
>> >> >>             throws org.apache.axis2.AxisFault {
>> >> >>
>> >> >>         try {
>> >> >>
>> >> >>             // get the implementation class
>> >> >>             Object obj = getTheImplementationObject(msgContext);
>> >> >>             //System.out.println("Message xml :
>> >> >> "+msgContext.getEnvelope());
>> >> >>
>> >> >>
>> >> >> ..... more code
>> >> >>        }
>> >> >>
>> >> >>
>> >> >> This code Works(removing comments from the System.out.):
>> >> >>     public void invokeBusinessLogic(
>> >> >>             org.apache.axis2.context.MessageContext msgContext,
>> >> >>             org.apache.axis2.context.MessageContext newMsgContext)
>> >> >>             throws org.apache.axis2.AxisFault {
>> >> >>
>> >> >>         try {
>> >> >>
>> >> >>             // get the implementation class
>> >> >>             Object obj = getTheImplementationObject(msgContext);
>> >> >>             System.out.println("Message xml :
>> >> >> "+msgContext.getEnvelope());
>> >> >>
>> >> >> ..... more code
>> >> >>        }
>> >> >>
>> >> >> Exception:
>> >> >> - <soapenv:Envelope
>> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> >> >> - <soapenv:Body>
>> >> >> - <soapenv:Fault>
>> >> >>   <faultcode>soapenv:Server</faultcode>
>> >> >>   <faultstring>Parser has already reached end of the document. No
>> >> >> siblings
>> >> >> found</faultstring>
>> >> >>   <detail />
>> >> >>   </soapenv:Fault>
>> >> >>   </soapenv:Body>
>> >> >>   </soapenv:Envelope>
>> >> >
>> >> >
>> >
>> >
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Thanks a lot Andreas,

Please see the stactrace below:

Start- Stactrace:

org.apache.axiom.om.OMException: Parser has already reached end of the
document. No siblings found
    at
org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:339)
    at
org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
    at
com.xxx.yyy.mmc.MMCHandler.check(Lorg/apache/axis2/context/MessageContext;)V(MMCHandler.java:51)
    at
com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:172)
    at
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
    at
org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
    at
org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
    at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
    at
org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
    at
javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
    at
javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
    at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
    at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
    at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
    at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
    at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)2009-01-20
14:03:23,126 ERROR org.apache.axis2.engine.AxisEngine  -
java.util.NoSuchElementException
org.apache.axis2.AxisFault: java.util.NoSuchElementException
    at
org.apache.axis2.AxisFault.makeFault(Ljava/lang/Throwable;)Lorg/apache/axis2/AxisFault;(AxisFault.java:430)
    at
com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:739)
    at
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;)V(AbstractInOutSyncMessageReceiver.java:42)
    at
org.apache.axis2.receivers.AbstractMessageReceiver.receive(Lorg/apache/axis2/context/MessageContext;)V(AbstractMessageReceiver.java:100)
    at
org.apache.axis2.engine.AxisEngine.receive(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(AxisEngine.java:176)
    at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(Lorg/apache/axis2/context/MessageContext;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(HTTPTransportUtils.java:275)
    at
org.apache.axis2.transport.http.AxisServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AxisServlet.java:133)
    at
javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:760)
    at
javax.servlet.http.HttpServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(HttpServlet.java:853)
    at
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava/lang/Object;(ServletStubImpl.java:1072)
    at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Lweblogic/servlet/internal/FilterChainImpl;)V(ServletStubImpl.java:465)
    at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ServletStubImpl.java:348)
    at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava/lang/Object;(WebAppServletContext.java:6981)
    at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic/security/subject/AbstractSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(AuthenticatedSubject.java:321)
    at
weblogic.security.service.SecurityManager.runAs(Lweblogic/security/acl/internal/AuthenticatedSubject;Lweblogic/security/acl/internal/AuthenticatedSubject;Ljava/security/PrivilegedAction;)Ljava/lang/Object;(SecurityManager.java:121)
    at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic/servlet/internal/ServletRequestImpl;Lweblogic/servlet/internal/ServletResponseImpl;)V(WebAppServletContext.java:3892)
    at
weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic/kernel/ExecuteThread;)V(ServletRequestImpl.java:2766)
    at
weblogic.kernel.ExecuteThread.execute(Lweblogic/kernel/ExecuteRequest;)V(ExecuteThread.java:224)
    at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:183)
    at java.lang.Thread.startThreadFromVM(Ljava/lang/Thread;)V(Unknown
Source)
Caused by: org.apache.axiom.om.OMException: java.util.NoSuchElementException
    at
org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:260)
    at
org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling()Lorg/apache/axiom/om/OMNode;(OMElementImpl.java:337)
    at
org.apache.axiom.om.impl.traverse.OMChildElementIterator.next()Ljava/lang/Object;(OMChildElementIterator.java:104)
    at
com.xxx.yyy.log.LogHandler.invoke(Lorg/apache/axis2/context/MessageContext;)Lorg/apache/axis2/engine/Handler$InvocationResponse;(LogHandler.java:50)
    at
com.xxx.yyy.retrieve.RetrieveServiceMessageReceiverInOut.invokeBusinessLogic(Lorg/apache/axis2/context/MessageContext;Lorg/apache/axis2/context/MessageContext;)V(RetrieveServiceMessageReceiverInOut.java:732)
    ... 18 more
Caused by: java.util.NoSuchElementException
    at
com.ctc.wstx.sr.BasicStreamReader.next()I(BasicStreamReader.java:1083)
    at
javax.xml.stream.util.StreamReaderDelegate.next()I(StreamReaderDelegate.java:59)
    at
org.apache.axiom.om.impl.builder.SafeXMLStreamReader.next()I(SafeXMLStreamReader.java:183)
    at
org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext()I(StAXOMBuilder.java:597)
    at
org.apache.axiom.om.impl.builder.StAXOMBuilder.next()I(StAXOMBuilder.java:172)
    ... 22 more

End- Stactrace:

On Tue, Jan 20, 2009 at 1:52 PM, Andreas Veithen
<an...@gmail.com>wrote:

> Axiom uses a deferred parsing approach, i.e. it will build the object
> tree on demand. A call to toString() triggered by the
> System.out.println instruction or by inspecting the object in a
> debugger will have the effect of building the entire tree. Probably
> there is some code somewhere that works perfectly well with a fully
> built tree, but not if it is only partially built. This could be a bug
> in Axiom. Do you have a stacktrace of the exception?
>
> Andreas
>
> On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com> wrote:
> > Andreas,
> >
> > Thanks for your input, but it is still the same... Just wondering why
> when i
> > debug it is  working and when I am not it does''t work
> >
> > Adding following line on top of the method also helps
> >     System.out.println("Messages: "+msgContext.getEnvelope());
> >
> > but this doesn't help
> >        msgContext.getEnvelope();
> >
> >
> > Thanks
> >
> > On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
> > <an...@gmail.com> wrote:
> >>
> >> Could be somehow related to WSCOMMONS-372. Can you test this with Axiom
> >> 1.2.8?
> >>
> >> Andreas
> >>
> >> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com> wrote:
> >> > Hi,
> >> >
> >> > I have also realized that when I debug the
> >> > Message Context in eclipse and inspect in, it works and the envelope
> >> > message
> >> > is there...
> >> >
> >> > Can please anyone give me some idea, is it a bug in 1.4.1 or there is
> >> > something I am missing. The same code works in axis2. 1.3.1
> >> >
> >> > Thanks in advance
> >> >
> >> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh <as...@gmail.com>
> >> > wrote:
> >> >>
> >> >> Hi,
> >> >>
> >> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and I am
> >> >> getting
> >> >> the following error whenever I invoke any service. Please advice,
> >> >> Thanks in
> >> >> advance
> >> >>
> >> >> This code does't work:
> >> >>     public void invokeBusinessLogic(
> >> >>             org.apache.axis2.context.MessageContext msgContext,
> >> >>             org.apache.axis2.context.MessageContext newMsgContext)
> >> >>             throws org.apache.axis2.AxisFault {
> >> >>
> >> >>         try {
> >> >>
> >> >>             // get the implementation class
> >> >>             Object obj = getTheImplementationObject(msgContext);
> >> >>             //System.out.println("Message xml :
> >> >> "+msgContext.getEnvelope());
> >> >>
> >> >>
> >> >> ..... more code
> >> >>        }
> >> >>
> >> >>
> >> >> This code Works(removing comments from the System.out.):
> >> >>     public void invokeBusinessLogic(
> >> >>             org.apache.axis2.context.MessageContext msgContext,
> >> >>             org.apache.axis2.context.MessageContext newMsgContext)
> >> >>             throws org.apache.axis2.AxisFault {
> >> >>
> >> >>         try {
> >> >>
> >> >>             // get the implementation class
> >> >>             Object obj = getTheImplementationObject(msgContext);
> >> >>             System.out.println("Message xml :
> >> >> "+msgContext.getEnvelope());
> >> >>
> >> >> ..... more code
> >> >>        }
> >> >>
> >> >> Exception:
> >> >> - <soapenv:Envelope
> >> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> >> >> - <soapenv:Body>
> >> >> - <soapenv:Fault>
> >> >>   <faultcode>soapenv:Server</faultcode>
> >> >>   <faultstring>Parser has already reached end of the document. No
> >> >> siblings
> >> >> found</faultstring>
> >> >>   <detail />
> >> >>   </soapenv:Fault>
> >> >>   </soapenv:Body>
> >> >>   </soapenv:Envelope>
> >> >
> >> >
> >
> >
>

Re: Parser has already reached end of the document. No siblings found

Posted by Andreas Veithen <an...@gmail.com>.
Axiom uses a deferred parsing approach, i.e. it will build the object
tree on demand. A call to toString() triggered by the
System.out.println instruction or by inspecting the object in a
debugger will have the effect of building the entire tree. Probably
there is some code somewhere that works perfectly well with a fully
built tree, but not if it is only partially built. This could be a bug
in Axiom. Do you have a stacktrace of the exception?

Andreas

On Tue, Jan 20, 2009 at 11:26, asheikh <as...@gmail.com> wrote:
> Andreas,
>
> Thanks for your input, but it is still the same... Just wondering why when i
> debug it is  working and when I am not it does''t work
>
> Adding following line on top of the method also helps
>     System.out.println("Messages: "+msgContext.getEnvelope());
>
> but this doesn't help
>        msgContext.getEnvelope();
>
>
> Thanks
>
> On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen
> <an...@gmail.com> wrote:
>>
>> Could be somehow related to WSCOMMONS-372. Can you test this with Axiom
>> 1.2.8?
>>
>> Andreas
>>
>> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com> wrote:
>> > Hi,
>> >
>> > I have also realized that when I debug the
>> > Message Context in eclipse and inspect in, it works and the envelope
>> > message
>> > is there...
>> >
>> > Can please anyone give me some idea, is it a bug in 1.4.1 or there is
>> > something I am missing. The same code works in axis2. 1.3.1
>> >
>> > Thanks in advance
>> >
>> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh <as...@gmail.com>
>> > wrote:
>> >>
>> >> Hi,
>> >>
>> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and I am
>> >> getting
>> >> the following error whenever I invoke any service. Please advice,
>> >> Thanks in
>> >> advance
>> >>
>> >> This code does't work:
>> >>     public void invokeBusinessLogic(
>> >>             org.apache.axis2.context.MessageContext msgContext,
>> >>             org.apache.axis2.context.MessageContext newMsgContext)
>> >>             throws org.apache.axis2.AxisFault {
>> >>
>> >>         try {
>> >>
>> >>             // get the implementation class
>> >>             Object obj = getTheImplementationObject(msgContext);
>> >>             //System.out.println("Message xml :
>> >> "+msgContext.getEnvelope());
>> >>
>> >>
>> >> ..... more code
>> >>        }
>> >>
>> >>
>> >> This code Works(removing comments from the System.out.):
>> >>     public void invokeBusinessLogic(
>> >>             org.apache.axis2.context.MessageContext msgContext,
>> >>             org.apache.axis2.context.MessageContext newMsgContext)
>> >>             throws org.apache.axis2.AxisFault {
>> >>
>> >>         try {
>> >>
>> >>             // get the implementation class
>> >>             Object obj = getTheImplementationObject(msgContext);
>> >>             System.out.println("Message xml :
>> >> "+msgContext.getEnvelope());
>> >>
>> >> ..... more code
>> >>        }
>> >>
>> >> Exception:
>> >> - <soapenv:Envelope
>> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> >> - <soapenv:Body>
>> >> - <soapenv:Fault>
>> >>   <faultcode>soapenv:Server</faultcode>
>> >>   <faultstring>Parser has already reached end of the document. No
>> >> siblings
>> >> found</faultstring>
>> >>   <detail />
>> >>   </soapenv:Fault>
>> >>   </soapenv:Body>
>> >>   </soapenv:Envelope>
>> >
>> >
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Andreas,

Thanks for your input, but it is still the same... Just wondering why when i
debug it is  working and when I am not it does''t work

Adding following line on top of the method also helps
    System.out.println("Messages: "+msgContext.getEnvelope());

but this doesn't help
       msgContext.getEnvelope();


Thanks

On Tue, Jan 20, 2009 at 12:16 PM, Andreas Veithen <andreas.veithen@gmail.com
> wrote:

> Could be somehow related to WSCOMMONS-372. Can you test this with Axiom
> 1.2.8?
>
> Andreas
>
> On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com> wrote:
> > Hi,
> >
> > I have also realized that when I debug the
> > Message Context in eclipse and inspect in, it works and the envelope
> message
> > is there...
> >
> > Can please anyone give me some idea, is it a bug in 1.4.1 or there is
> > something I am missing. The same code works in axis2. 1.3.1
> >
> > Thanks in advance
> >
> > On Tue, Jan 20, 2009 at 8:47 AM, asheikh <as...@gmail.com>
> wrote:
> >>
> >> Hi,
> >>
> >> I have migrated my services from axis2. 1.3 to axis2 1.4, and I am
> getting
> >> the following error whenever I invoke any service. Please advice, Thanks
> in
> >> advance
> >>
> >> This code does't work:
> >>     public void invokeBusinessLogic(
> >>             org.apache.axis2.context.MessageContext msgContext,
> >>             org.apache.axis2.context.MessageContext newMsgContext)
> >>             throws org.apache.axis2.AxisFault {
> >>
> >>         try {
> >>
> >>             // get the implementation class
> >>             Object obj = getTheImplementationObject(msgContext);
> >>             //System.out.println("Message xml :
> >> "+msgContext.getEnvelope());
> >>
> >>
> >> ..... more code
> >>        }
> >>
> >>
> >> This code Works(removing comments from the System.out.):
> >>     public void invokeBusinessLogic(
> >>             org.apache.axis2.context.MessageContext msgContext,
> >>             org.apache.axis2.context.MessageContext newMsgContext)
> >>             throws org.apache.axis2.AxisFault {
> >>
> >>         try {
> >>
> >>             // get the implementation class
> >>             Object obj = getTheImplementationObject(msgContext);
> >>             System.out.println("Message xml :
> >> "+msgContext.getEnvelope());
> >>
> >> ..... more code
> >>        }
> >>
> >> Exception:
> >> - <soapenv:Envelope
> >> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> >> - <soapenv:Body>
> >> - <soapenv:Fault>
> >>   <faultcode>soapenv:Server</faultcode>
> >>   <faultstring>Parser has already reached end of the document. No
> siblings
> >> found</faultstring>
> >>   <detail />
> >>   </soapenv:Fault>
> >>   </soapenv:Body>
> >>   </soapenv:Envelope>
> >
> >
>

Re: Parser has already reached end of the document. No siblings found

Posted by Andreas Veithen <an...@gmail.com>.
Could be somehow related to WSCOMMONS-372. Can you test this with Axiom 1.2.8?

Andreas

On Tue, Jan 20, 2009 at 08:56, asheikh <as...@gmail.com> wrote:
> Hi,
>
> I have also realized that when I debug the
> Message Context in eclipse and inspect in, it works and the envelope message
> is there...
>
> Can please anyone give me some idea, is it a bug in 1.4.1 or there is
> something I am missing. The same code works in axis2. 1.3.1
>
> Thanks in advance
>
> On Tue, Jan 20, 2009 at 8:47 AM, asheikh <as...@gmail.com> wrote:
>>
>> Hi,
>>
>> I have migrated my services from axis2. 1.3 to axis2 1.4, and I am getting
>> the following error whenever I invoke any service. Please advice, Thanks in
>> advance
>>
>> This code does't work:
>>     public void invokeBusinessLogic(
>>             org.apache.axis2.context.MessageContext msgContext,
>>             org.apache.axis2.context.MessageContext newMsgContext)
>>             throws org.apache.axis2.AxisFault {
>>
>>         try {
>>
>>             // get the implementation class
>>             Object obj = getTheImplementationObject(msgContext);
>>             //System.out.println("Message xml :
>> "+msgContext.getEnvelope());
>>
>>
>> ..... more code
>>        }
>>
>>
>> This code Works(removing comments from the System.out.):
>>     public void invokeBusinessLogic(
>>             org.apache.axis2.context.MessageContext msgContext,
>>             org.apache.axis2.context.MessageContext newMsgContext)
>>             throws org.apache.axis2.AxisFault {
>>
>>         try {
>>
>>             // get the implementation class
>>             Object obj = getTheImplementationObject(msgContext);
>>             System.out.println("Message xml :
>> "+msgContext.getEnvelope());
>>
>> ..... more code
>>        }
>>
>> Exception:
>> - <soapenv:Envelope
>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>> - <soapenv:Body>
>> - <soapenv:Fault>
>>   <faultcode>soapenv:Server</faultcode>
>>   <faultstring>Parser has already reached end of the document. No siblings
>> found</faultstring>
>>   <detail />
>>   </soapenv:Fault>
>>   </soapenv:Body>
>>   </soapenv:Envelope>
>
>

Re: Parser has already reached end of the document. No siblings found

Posted by asheikh <as...@gmail.com>.
Hi,

I have also realized that when I debug the Message Context in eclipse and
inspect in, it works and the envelope message is there...

Can please anyone give me some idea, is it a bug in 1.4.1 or there is
something I am missing. The same code works in axis2. 1.3.1

Thanks in advance

On Tue, Jan 20, 2009 at 8:47 AM, asheikh <as...@gmail.com> wrote:

> Hi,
>
> I have migrated my services from axis2. 1.3 to axis2 1.4, and I am getting
> the following error whenever I invoke any service. Please advice, Thanks in
> advance
>
> *This code does't work: *
>     public void invokeBusinessLogic(
>             org.apache.axis2.context.MessageContext msgContext,
>             org.apache.axis2.context.MessageContext newMsgContext)
>             throws org.apache.axis2.AxisFault {
>
>         try {
>
>             // get the implementation class
>             Object obj = getTheImplementationObject(msgContext);
>             //System.out.println("Message xml :
> "+msgContext.getEnvelope());
>
>
> ..... more code
>        }
>
>
> This code Works(removing comments from the System.out.):
>     public void invokeBusinessLogic(
>             org.apache.axis2.context.MessageContext msgContext,
>             org.apache.axis2.context.MessageContext newMsgContext)
>             throws org.apache.axis2.AxisFault {
>
>         try {
>
>             // get the implementation class
>             Object obj = getTheImplementationObject(msgContext);
>          *   System.out.println("Message xml :
> "+msgContext.getEnvelope());     *
>
> ..... more code
>        }
>
> *Exception: *
> - <#11ef2948616bc20d_> <soapenv:Envelope xmlns:soapenv="*
> http://schemas.xmlsoap.org/soap/envelope/*">
>  - <#11ef2948616bc20d_> <soapenv:Body>
>  - <#11ef2948616bc20d_> <soapenv:Fault>
>    <faultcode>soapenv:Server</faultcode>
>    <faultstring>Parser has already reached end of the document. No
> siblings found</faultstring>
>    <detail />
>   </soapenv:Fault>
>   </soapenv:Body>
>   </soapenv:Envelope>
>
>