Hi,
I am having a heck of a time getting the following APACHE
SOAP V2.3 service to work. I was wondering if anyone had any constructive ideas?
The following code is the client .jsp file. The service uses session scope because I first want to call the class constructor and initialize the object. Then a second call is made to one of it's methods that requires no arguments:
When I run this client I get the following exception returned:
SOAP-ENV:Server.Exception: gov/dia/RateOfAdvance I was surprised that getFaultString() returned:
gov/dia/RateOfAdvance because the service is based on a class named SingleRateOfAdvance. RateOfAdvance is an abstract class that SingleRateOfAdvance extends.
First SOAP Message Sent to SOAP Server (calling constructor) POST /soap/servlet/rpcrouter HTTP/1.0
Host: 127.0.0.1
Content-Type: text/xml; charset=utf-8
Content-Length: 1617
SOAPAction: ""
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<ns1:SingleRateOfAdvance xmlns:ns1="urn:SingleRateOfAdvanceService" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<_numberOfVehicles xsi:type="xsd:int">1</_numberOfVehicles>
<_numberOfSegments xsi:type="xsd:int">1</_numberOfSegments>
<_vehicleDensity xmlns:ns2="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:Array" ns2:arrayType="xsd:int[1]">
<item xsi:type="xsd:int">10</item>
</_vehicleDensity>
<_vehicleType xmlns:ns3="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:Array" ns3:arrayType="xsd:int[1]">
<item xsi:type="xsd:int">5</item>
</_vehicleType>
<_segmentLength xmlns:ns4="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns4:Array" ns4:arrayType="xsd:int[1]">
<item xsi:type="xsd:int">123</item>
</_segmentLength>
<_lengthOfDay xmlns:ns5="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns5:Array" ns5:arrayType="xsd:int[1]">
<item xsi:type="xsd:int">15</item>
</_lengthOfDay>
<_roadClass xsi:type="xsd:string">C</_roadClass>
<_surfaceCondition xsi:type="xsd:string">A</_surfaceCondition>
<_roadGradient xsi:type="xsd:string">F</_roadGradient>
<_operationalCondition xsi:type="xsd:string">D</_operationalCondition>
<_roadWidth xsi:type="xsd:string">W</_roadWidth>
<_vehicleComposition xsi:type="xsd:string">W</_vehicleComposition>
</ns1:SingleRateOfAdvance>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
First Response from SOAP Server HTTP/1.1 500 Internal Server Error
Set-Cookie: JSESSIONID=DF2DCC024EDCF0B85EAF650C09B1BAF1; Path=/soap
Content-Type: text/xml; charset=utf-8
Content-Length: 466
Date: Tue, 11 Feb 2003 21:30:48 GMT
Server: Apache Coyote/1.0
Connection: close
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server.Exception:</faultcode>
<faultstring>gov/dia/RateOfAdvance</faultstring>
<faultactor>/soap/servlet/rpcrouter</faultactor>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Second Message Sent to SOAP Server (calling no argument method) POST /soap/servlet/rpcrouter HTTP/1.0
Host: 127.0.0.1
Content-Type: text/xml; charset=utf-8
Content-Length: 447
SOAPAction: ""
Cookie: JSESSIONID=DF2DCC024EDCF0B85EAF650C09B1BAF1
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<ns1:getRateOfAdvanceDetail xmlns:ns1="urn:SingleRateOfAdvanceService" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
</ns1:getRateOfAdvanceDetail>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Second Response from SOAP Server HTTP/1.1 500 Internal Server Error
Content-Type: text/xml; charset=utf-8
Content-Length: 466
Date: Tue, 11 Feb 2003 21:30:48 GMT
Server: Apache Coyote/1.0
Connection: close
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server.Exception:</faultcode>
<faultstring>gov/dia/RateOfAdvance</faultstring>
<faultactor>/soap/servlet/rpcrouter</faultactor>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
I am also using Apache
Tomcat webserver. The only information I have found in the log file pertinent to this problem is:
2003-02-11 16:23:51 StandardContext[/AIIAM]: Mapping contextPath='/AIIAM' with requestURI='/AIIAM/sroaSetupInfo.jsp' and relativeURI='/sroaSetupInfo.jsp'
2003-02-11 16:23:51 StandardContext[/AIIAM]: Mapped to
servlet '
jsp' with servlet path '/sroaSetupInfo.jsp' and path info 'null' and update=true
2003-02-11 16:23:51 StandardContext[/AIIAM]: Mapping contextPath='/AIIAM' with requestURI='/AIIAM/sroaSoap.jsp' and relativeURI='/sroaSoap.jsp'
2003-02-11 16:23:51 StandardContext[/AIIAM]: Mapped to servlet 'jsp' with servlet path '/sroaSoap.jsp' and path info 'null' and update=true
2003-02-11 16:23:52 StandardContext[/soap]: Mapping contextPath='/soap' with requestURI='/soap/servlet/rpcrouter' and relativeURI='/servlet/rpcrouter'
2003-02-11 16:23:52 StandardContext[/soap]: Mapped to servlet 'rpcrouter' with servlet path '/servlet/rpcrouter' and path info 'null' and update=true
2003-02-11 16:23:52 StandardContext[/soap]: Mapping contextPath='/soap' with requestURI='/soap/servlet/rpcrouter' and relativeURI='/servlet/rpcrouter'
2003-02-11 16:23:52 StandardContext[/soap]: Mapped to servlet 'rpcrouter' with servlet path '/servlet/rpcrouter' and path info 'null' and update=true
Any assistance would be greatly appreciated.
[ February 11, 2003: Message edited by: Neil Hainer ]