You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@xml.apache.org by "Huang, Jenny" <jh...@amplifynet.com> on 2001/02/14 04:07:25 UTC

run SOAP sample

I am playing with SOAP samples (Apache SOAP 2.0, Tomcat 3.1).
Unfortunately, I received exception for all the three samples (see below).
Could someone tell me what's wrong?  Thanks in advance.

Best,
Jenny


1) java samples.stockquote.GetQuote
http://localhost:8080/soap/servlet/rpcrouter IBM

org.xml.sax.SAXParseException: The markup in the document preceding the root
element must be well-formed.
        at
org.apache.xerces.framework.XMLParser.reportError(XMLParser.java:1060)
        at
org.apache.xerces.framework.XMLDocumentScanner.reportFatalXMLError(XMLDocume
ntScanner.java:626)
        at
org.apache.xerces.framework.XMLDocumentScanner$XMLDeclDispatcher.dispatch(XM
LDocumentScanner.java:805)
        at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.
java:381)
        at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:952)
        at
org.apache.soap.util.xml.XercesParserLiaison.read(XercesParserLiaison.java:8
5)
        at org.apache.soap.rpc.Call.invoke(Call.java:157)
        at samples.stockquote.GetQuote.main(GetQuote.java:103)
Exception in thread "main" [SOAPException: faultCode=SOAP-ENV:Protocol;
msg=java.lang.NoSuchMethodError
        at org.apache.soap.util.xml.QName.<init>(QName.java:80)
        at org.apache.soap.util.xml.QName.matches(QName.java:146)
        at org.apache.soap.Envelope.unmarshall(Envelope.java:210)
        at
org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:18
2)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:597)
        at
org.apache.tomcat.servlets.InvokerServlet.service(InvokerServlet.java:257)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
        at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:559)
        at
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
onnectionHandler.java:160)
        at
org.apache.tomcat.service.TcpConnectionThread.run(SimpleTcpEndpoint.java:338
)
        at java.lang.Thread.run(Unknown Source)
]
        at org.apache.soap.rpc.Call.invoke(Call.java:167)
        at samples.stockquote.GetQuote.main(GetQuote.java:103)


2) java samples.calculator.Calculator
http://localhost:8080/soap/servlet/rpcrouter

org.xml.sax.SAXParseException: The markup in the document preceding the root
element must be well-formed.
        at
org.apache.xerces.framework.XMLParser.reportError(XMLParser.java:1060)
        at
org.apache.xerces.framework.XMLDocumentScanner.reportFatalXMLError(XMLDocume
ntScanner.java:626)
        at
org.apache.xerces.framework.XMLDocumentScanner$XMLDeclDispatcher.dispatch(XM
LDocumentScanner.java:805)
        at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.
java:381)
        at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:952)
        at
org.apache.soap.util.xml.XercesParserLiaison.read(XercesParserLiaison.java:8
5)
        at org.apache.soap.rpc.Call.invoke(Call.java:157)
        at samples.calculator.Calculator.doOp(Calculator.java:220)
        at samples.calculator.Calculator.access$1(Calculator.java:203)
        at
samples.calculator.Calculator$5.actionPerformed(Calculator.java:179)
        at java.awt.Button.processActionEvent(Button.java:329)
        at java.awt.Button.processEvent(Button.java:302)
        at java.awt.Component.dispatchEventImpl(Component.java:2595)
        at java.awt.Component.dispatchEvent(Component.java:2499)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:319)
        at
java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:103)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:84)
[SOAPException: faultCode=SOAP-ENV:Protocol; msg=java.lang.NoSuchMethodError
        at org.apache.soap.util.xml.QName.<init>(QName.java:80)
        at org.apache.soap.util.xml.QName.matches(QName.java:146)
        at org.apache.soap.Envelope.unmarshall(Envelope.java:210)
        at
org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:18
2)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:597)
        at
org.apache.tomcat.servlets.InvokerServlet.service(InvokerServlet.java:257)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
        at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:559)
        at
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
onnectionHandler.java:160)
        at
org.apache.tomcat.service.TcpConnectionThread.run(SimpleTcpEndpoint.java:338
)
        at java.lang.Thread.run(Unknown Source)
]
        at org.apache.soap.rpc.Call.invoke(Call.java:167)
        at samples.calculator.Calculator.doOp(Calculator.java:220)
        at samples.calculator.Calculator.access$1(Calculator.java:203)
        at
samples.calculator.Calculator$5.actionPerformed(Calculator.java:179)
        at java.awt.Button.processActionEvent(Button.java:329)
        at java.awt.Button.processEvent(Button.java:302)
        at java.awt.Component.dispatchEventImpl(Component.java:2595)
        at java.awt.Component.dispatchEvent(Component.java:2499)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:319)
        at
java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:103)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:84)


3) java samples.addressbook.GetAddress
http://localhost:8080/soap/servlet/rpcrouter "John B. Good"

org.xml.sax.SAXParseException: The markup in the document preceding the root
element must be well-formed.
        at
org.apache.xerces.framework.XMLParser.reportError(XMLParser.java:1060)
        at
org.apache.xerces.framework.XMLDocumentScanner.reportFatalXMLError(XMLDocume
ntScanner.java:626)
        at
org.apache.xerces.framework.XMLDocumentScanner$XMLDeclDispatcher.dispatch(XM
LDocumentScanner.java:805)
        at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.
java:381)
        at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:952)
        at
org.apache.soap.util.xml.XercesParserLiaison.read(XercesParserLiaison.java:8
5)
        at org.apache.soap.rpc.Call.invoke(Call.java:157)
        at samples.addressbook.GetAddress.main(GetAddress.java:125)
Caught SOAPException (SOAP-ENV:Protocol): java.lang.NoSuchMethodError
        at org.apache.soap.util.xml.QName.<init>(QName.java:80)
        at org.apache.soap.util.xml.QName.matches(QName.java:146)
        at org.apache.soap.Envelope.unmarshall(Envelope.java:210)
        at
org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:18
2)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:597)
        at
org.apache.tomcat.servlets.InvokerServlet.service(InvokerServlet.java:257)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
        at
org.apache.tomcat.core.ContextManager.service(ContextManager.java:559)
        at
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
onnectionHandler.java:160)
        at
org.apache.tomcat.service.TcpConnectionThread.run(SimpleTcpEndpoint.java:338
)
        at java.lang.Thread.run(Unknown Source)

Why not IIOP??

Posted by Ramakrishna Srinivasa <ra...@wipro.com>.
I read this line in one of the SOAP articles..

Existing RPC-style Protocols such as DCOM and IIOP have not proven to be adaptable to
the Internet.They require a non-trivial amount of dedicated  runtime support.

Can anyone explain me why??

What is the sort of RunTime support and how is it not required for SOAP??

As far as I know for RMI..It doesnt even require a WebServer whereas SOAP over HTTP
requires a WebServer.

Have I gone wrong somewhere??with the basic understanding???

Thanks
Ramki.


Why not IIOP??

Posted by Ramakrishna Srinivasa <ra...@wipro.com>.
I read this line in one of the SOAP articles..

Existing RPC-style Protocols such as DCOM and IIOP have not proven to be adaptable to
the Internet.They require a non-trivial amount of dedicated  runtime support.

Can anyone explain me why??

What is the sort of RunTime support and how is it not required for SOAP??

As far as I know for RMI..It doesnt even require a WebServer whereas SOAP over HTTP
requires a WebServer.

Have I gone wrong somewhere??with the basic understanding???

Thanks
Ramki.


Re: run SOAP sample

Posted by William Brogden <wb...@bga.com>.

"Huang, Jenny" wrote:
> 
> I am playing with SOAP samples (Apache SOAP 2.0, Tomcat 3.1).
> Unfortunately, I received exception for all the three samples (see below).
> Could someone tell me what's wrong?  Thanks in advance.
> 
> Best,
> Jenny
> 
> 1) java samples.stockquote.GetQuote
> http://localhost:8080/soap/servlet/rpcrouter IBM
> 
> org.xml.sax.SAXParseException: The markup in the document preceding the root
> element must be well-formed.

That was your client being unable to parse the response from the service


> msg=java.lang.NoSuchMethodError
>         at org.apache.soap.util.xml.QName.<init>(QName.java:80)
>         at org.apache.soap.util.xml.QName.matches(QName.java:146)
>         at org.apache.soap.Envelope.unmarshall(Envelope.java:210)

That was the problem - QName calls a parser method that does NOT
exist in the parser that your server is finding first.

Even if Xerces.jar is first on your classpath, Java will find
an earlier generation parser if it is in the 
 JDK/jre/lib/ext  directory.




-- 
WBB - wbrogden@lanw.com
Java Cert mock exams http://www.lanw.com/java/javacert/
Author of Java Developer's Guide to Servlets and JSP 
ISBN 0-7821-2809-2

Re: run SOAP sample

Posted by William Brogden <wb...@bga.com>.

"Huang, Jenny" wrote:
> 
> I am playing with SOAP samples (Apache SOAP 2.0, Tomcat 3.1).
> Unfortunately, I received exception for all the three samples (see below).
> Could someone tell me what's wrong?  Thanks in advance.
> 
> Best,
> Jenny
> 
> 1) java samples.stockquote.GetQuote
> http://localhost:8080/soap/servlet/rpcrouter IBM
> 
> org.xml.sax.SAXParseException: The markup in the document preceding the root
> element must be well-formed.

That was your client being unable to parse the response from the service


> msg=java.lang.NoSuchMethodError
>         at org.apache.soap.util.xml.QName.<init>(QName.java:80)
>         at org.apache.soap.util.xml.QName.matches(QName.java:146)
>         at org.apache.soap.Envelope.unmarshall(Envelope.java:210)

That was the problem - QName calls a parser method that does NOT
exist in the parser that your server is finding first.

Even if Xerces.jar is first on your classpath, Java will find
an earlier generation parser if it is in the 
 JDK/jre/lib/ext  directory.




-- 
WBB - wbrogden@lanw.com
Java Cert mock exams http://www.lanw.com/java/javacert/
Author of Java Developer's Guide to Servlets and JSP 
ISBN 0-7821-2809-2