axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Linus Kamb <li...@iris.washington.edu>
Subject EPR for the Operation not found
Date Tue, 11 Sep 2007 00:41:56 GMT
I know this has been discussed before, but I'm stumped.

I have a service running, and I can contact it no problem using a 
stand-alone java client that uses the axis-generated stubs.

However, if I run fitnesse tests, they get an error:
<faultstring>The endpoint reference (EPR) for the Operation not found is 
http://127.0.0.1:8080/axis2/services/ESPortalCDI and the WSA Action = 
null</faultstring>

The requests, as viewed from tcpmon, are virtually identical, other than 
the fitnesse has an empty soapenv:Header element.

There were remarks made on the list that this error is caused from using 
ws-addressing.  As with the others, I am not intentionally doing this.  
If I am, how do I stop it?  According to the web administrator app, 
addressing is not engaged. I pulled the "soapAction" out of the wsdl 
binding operation definitions, pulled the actionMappings out of the 
services.xml, and modified the client to use soap11.  While each of 
those little changes has brought the two requests closer, the fitnesse 
test still gets the error.

Is this a ws-addressing issue?

This has me stumped.

note that the service is behind a firewall, so the requests are 
proxy-passed through.  But both client and fitnesse access the same 
public url.

The working request, as viewed with tcpmon, looks like:

POST /axis2/services/ESPortalCDI HTTP/1.1
Host: 127.0.0.1:8080
Content-Type: text/xml; charset=UTF-8
SOAPAction: ""
User-Agent: Axis2
Max-Forwards: 10
X-Forwarded-For: 192.168.167.1
X-Forwarded-Host: www.iris.edu
X-Forwarded-Server: www.iris.edu
Content-Length: 570

<?xml version='1.0' encoding='UTF-8'?>
   <soapenv:Envelope 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
      <soapenv:Body>
         <esdp:getStations xmlns:gml="http://www.opengis.net/gml" 
xmlns:esdp="http://portal.earthscope.org">
            <esdp:UserToken>Me</esdp:UserToken>
            <esdp:StationFilter xmlns:ogc="http://www.opengis.net/ogc">
               <esdp:StationIdentifiers>
                  <esdp:StationIdentifier networkCode="IU" 
stationCode="ANMO" />
                  <esdp:StationIdentifier networkCode="TA" 
stationCode="C123" />
               </esdp:StationIdentifiers>
            </esdp:StationFilter>
         </esdp:getStations>
      </soapenv:Body>
   </soapenv:Envelope>

Note there is a SOAPAction: html header.  If I use SOAP1.2, that goes away.

The fitnesse request looks like:

POST /axis2/services/ESPortalCDI HTTP/1.1
Host: 127.0.0.1:8080
Accept-Encoding: gzip
Accept: text/xml, text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Content-Type: text/xml; charset=utf-8
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Java/1.5.0_12
Max-Forwards: 10
X-Forwarded-For: 69.44.86.66
X-Forwarded-Host: www.iris.edu
X-Forwarded-Server: www.iris.edu
Content-Length: 470

<SOAP-ENV:Envelope 
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <por:getStations xmlns:por="http://portal.earthscope.org">
         <por:UserToken>testuser</por:UserToken>
         <por:StationFilter>
            <por:StationIdentifiers>
               <por:StationIdentifier networkCode="TA" stationCode="z789"/>
               <por:StationIdentifier networkCode="XE" stationCode="a123"/>
            </por:StationIdentifiers>
         </por:StationFilter>
      </por:getStations>
   </SOAP-ENV:Body></SOAP-ENV:Envelope>

Attached is my wsdl.

FWIW, I've been able to cut and paste the working request into a telnet 
session, and get a correct response, but I cannot do the same for the 
fitnesse request.

Thanks for any insight!
Linus

 

Mime
View raw message