org.apache.axis.AxisFault.makeFault(AxisFault.java:101)

J

John Smith

Unfortunately, I have no answer beyond "Because it's badly broken".  If you
can trap the actual output (say, using TCPMON), there may be some clues.

Output of the SOAP message:
HTTPSender : <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelo
pe/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance"><soapenv:Body><getServiceIdsResponse
xmlns="http://a
dmin.gridserver.webservices.datasynapse.com"><getServiceIdsReturn>2368199479101491014</
getServiceIdsReturn>
....
<getServiceIdsReturn>730366849291265490</
getServiceIdsReturn><getServiceIdsReturn>730366847626427013</
getServiceIdsRetu
rn><getServiceIdsReturn>730366850316749035</
getServiceIdsReturn><getServiceIdsReturn>730366849590541473</
getServiceIdsReturn><getServiceIdsReturn>7303668494
55877182</getServiceIdsReturn></getServiceIdsResponse></soapenv:Body></
soapenv:Envelope>

It seems to me like all
<getServiceIdsReturn></getServiceIdsReturn>

tags are closed properly.

I therefore don't understand why the app is giving
org.xml.sax.SAXParseException: The element type
"getServiceIdsReturn" must be terminated by the matching end-tag "</
getServiceIdsReturn>".

What did I miss?
 
M

Mike Schilling

John said:
Output of the SOAP message:
HTTPSender : <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelo
pe/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance"><soapenv:Body><getServiceIdsResponse
xmlns="http://a
dmin.gridserver.webservices.datasynapse.com"><getServiceIdsReturn>2368199479101491014</
getServiceIdsReturn>
...
<getServiceIdsReturn>730366849291265490</
getServiceIdsReturn><getServiceIdsReturn>730366847626427013</
getServiceIdsRetu
rn><getServiceIdsReturn>730366850316749035</
getServiceIdsReturn><getServiceIdsReturn>730366849590541473</
getServiceIdsReturn><getServiceIdsReturn>7303668494
55877182</getServiceIdsReturn></getServiceIdsResponse></soapenv:Body></
soapenv:Envelope>

It seems to me like all
<getServiceIdsReturn></getServiceIdsReturn>

tags are closed properly.

I therefore don't understand why the app is giving
org.xml.sax.SAXParseException: The element type
"getServiceIdsReturn" must be terminated by the matching end-tag "</
getServiceIdsReturn>".

What did I miss?

I don't see it either. Can you do this? Save the output to a file
(including HTTP headers, if you've got them) and e-mail it to me as an
attachment, so none of the formatting or (possible) special characters are
lost. No guarantees, but something may jump out at me.
 
J

John Smith

I don't see it either.  Can you do this?  Save the output to a file
(including HTTP headers, if you've got them) and e-mail it to me as an
attachment, so none of the formatting or (possible) special characters are
lost.  No guarantees, but something may jump out at me.- Hide quoted text -

- Show quoted text -

The SOAP output is trapped by running the app that uses the web
service in debug mode which captures SOAP responses as well.
The app runs on solaris server (server 1) while the web service runs
on a grid blade server (server 2). Can I have TCPMON run locally on
my desktop and still monitor the SOAP communication between the
solaris server and the grid server? If so what's my local port?

I have already read:
http://ws.apache.org/axis/java/user-guide.html#AppendixUsingTheAxisTCPMonitorTcpmon

but still confused. Thanks for any clarification that would help me
to pick up the HTTP headers as well.
 
J

John B. Matthews

John Smith said:
John said:
On May 18, 5:03 pm, "Mike Schilling" <[email protected]>
wrote:
John Smith wrote:
On May 17, 1:35 pm, "Mike Schilling" <[email protected]>
wrote: [...]
org.xml.sax.SAXParseException: The element type
"getServiceIdsReturn" must be terminated by the matching end-tag
"</getServiceIdsReturn>".
What did I miss?

I don't see it either.  Can you do this?  Save the output to a file
(including HTTP headers, if you've got them) and e-mail it to me as
an attachment, so none of the formatting or (possible) special
characters are lost.  No guarantees, but something may jump out at
me.

The SOAP output is trapped by running the app that uses the web
service in debug mode which captures SOAP responses as well. The app
runs on solaris server (server 1) while the web service runs on a
grid blade server (server 2). Can I have TCPMON run locally on my
desktop and still monitor the SOAP communication between the solaris
server and the grid server? If so what's my local port?

I have already read:
http://ws.apache.org/axis/java/user-guide.html#AppendixUsingTheAxisTCPMonitorTcpmon
but still confused. Thanks for any clarification that would help me
to pick up the HTTP headers as well.

The -v option of cURL displays headers; a hex dump might be revealing:

curl -v http://www.example.com | hexdump -C

<http://en.wikipedia.org/wiki/CURL>
 
M

Mike Schilling

John said:
The SOAP output is trapped by running the app that uses the web
service in debug mode which captures SOAP responses as well.
The app runs on solaris server (server 1) while the web service runs
on a grid blade server (server 2). Can I have TCPMON run locally on
my desktop and still monitor the SOAP communication between the
solaris server and the grid server? If so what's my local port?

Pick any unused port, say 9090. Use TCPMON's UI to listen at 9090 and
redirect to the web server's host and port, and change youe client to
send to localhost:9090.
 
J

John Smith

Pick any unused port, say 9090.  Use TCPMON's UI to listen at 9090 and
redirect to the web server's host and port, and change youe client to
send to localhost:9090.- Hide quoted text -

- Show quoted text -

TCPMON is running on my desktop but the app is running on the solaris
server (the problem only occurs on the solaris server).
Therefore if I monitor Local Port, then I am just monitoring a local
port on my desktop while the solaris server is trying to connect to
the grid server. Therefore I got no traffic.

Are you saying having the solaris server connect to my desktop? But
how can I make the server find the desktop?
 
M

Mike Schilling

John said:
TCPMON is running on my desktop but the app is running on the
solaris
server (the problem only occurs on the solaris server).
Therefore if I monitor Local Port, then I am just monitoring a local
port on my desktop while the solaris server is trying to connect to
the grid server. Therefore I got no traffic.

Are you saying having the solaris server connect to my desktop? But
how can I make the server find the desktop?

Are you saying that the solaris server is the SOAP client? If so,
you'll need to change (or reconfigure) the code running in the server
to point to TCPMON rather than to the grid server.
 
J

John Smith

Are you saying that the solaris server is the SOAP client?  If so,
you'll need to change (or reconfigure) the code running in the server
to point to TCPMON rather than to the grid server.- Hide quoted text -

- Show quoted text -

The solaris server is the SOAP client.
However TCPMON is running on my desktop and I don't see how I can make
the solaris server connect to my desktop's TCPMON.
 
M

Mike Schilling

John said:
The solaris server is the SOAP client.
However TCPMON is running on my desktop and I don't see how I can
make
the solaris server connect to my desktop's TCPMON.

The SOAP client was built with some idea of where the SOAP service is.
Change it. If necessary, edit the WSDL it was built against to point
to a different URL, though I suspect all you need to do is edit the
code that creates the stub.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,764
Messages
2,569,566
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top