Hi Keith, 

Thanks for your tip to use TCP Monitor. 
I ran the client using both main method and web app. The difference I noticed 
in request was the header (see below) - other remains the same. 

<soapenv:Envelope xmlns:soapenv=" http://schemas.xmlsoap.org/soap/envelope/ " 
xmlns:wsa=" http://www.w3.org/2005/08/addressing";> 
<soapenv:Header> 
  <wsa:To>http://localhost:8080/RTBCustomer/services/RtbCallEvent</wsa:To> 
  <wsa:MessageID>urn:uuid:CEE8CBBEB2653D48CD1192428093191</wsa:MessageID> 
  <wsa:Action>""</wsa:Action> 
</soapenv:Header> 
<soapenv:Body>........ 

Again looking at the fault 
Faultcode = { http://www.w3.org/2005/08/addressing }ActionNotSupported 
Reason = The server did not recognise the action which it received: 

...makes it obvious the header is the culprit. How do I fix this?? FYI, I 
included req/response messages below. 

Regards, 

Srikanth Muthyala 

Main Method request 
POST /RTBCustomer/services/RtbCallEvent HTTP/1.1 
Content-Type: text/xml; charset=UTF-8 
SOAPAction: "" 
User-Agent: Axis2 
Host: 127.0.0.1:8080 
Transfer-Encoding: chunked 

1b1 
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv=" 
http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><ns1:callEvent 
xmlns:ns1="urn:rtbCallEvent/types"><recordId>sdfsd</recordId><direction>sdf</direction><callingNumber>sdfds</callingNumber><calledNumber>param</calledNumber><answerTime>param</answerTime><releaseTime>sdf</releaseTime><group>successq</group></ns1:callEvent></soapenv:Body></soapenv:Envelope>
 
0 

Main Method response 
HTTP/1.1 200 OK 
Server: Apache-Coyote/1.1 
Content-Type: text/xml;charset=UTF-8 
Transfer-Encoding: chunked 
Date: Mon, 15 Oct 2007 06:00:54 GMT 

109 
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv=" 
http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><ns1:callEventResponse 
xmlns:ns1="urn:rtbCallEvent/types"><result>true</result></ns1:callEventResponse></soapenv:Body></soapenv:Envelope>
 
0 

Web app request 
POST /RTBCustomer/services/RtbCallEvent HTTP/1.1 
Content-Type: text/xml; charset=UTF-8 
SOAPAction: "" 
User-Agent: Axis2 
Host: 127.0.0.1:8080 
Transfer-Encoding: chunked 

2ef 
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv=" 
http://schemas.xmlsoap.org/soap/envelope/ " xmlns:wsa=" 
http://www.w3.org/2005/08/addressing";><soapenv:Header><wsa:To>http://localhost:8080/RTBCustomer/services/RtbCallEvent</wsa:To><wsa:MessageID>urn:uuid:CEE8CBBEB2653D48CD1192428093191</wsa:MessageID><wsa:Action>""</wsa:Action></soapenv:Header><soapenv:Body><ns1:callEvent
 
xmlns:ns1="urn:rtbCallEvent/types"><recordId>30779377474759249921344.5360+100000</recordId><direction>Originating</direction><callingNumber>+61396261104</callingNumber><calledNumber>96261100</calledNumber><answerTime>20070925012009</answerTime><releaseTime>20070925012015</releaseTime><group>group1</group></ns1:callEvent></soapenv:Body></soapenv:Envelope>
 
0 


Web app response 
HTTP/1.1 500 Internal Server Error 
Server: Apache-Coyote/1.1 
Content-Type: text/xml;charset=UTF-8 
Transfer-Encoding: chunked 
Date: Mon, 15 Oct 2007 06:17:45 GMT 
Connection: close 

285 
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv=" 
http://schemas.xmlsoap.org/soap/envelope/ " xmlns:wsa=" 
http://www.w3.org/2005/08/addressing";><soapenv:Header><wsa:Action>http://www.w3.org/2005/08/addressing/fault</wsa:Action><wsa:RelatesTo>urn:uuid:CEE8CBBEB2653D48CD1192428093191</wsa:RelatesTo><wsa:FaultDetail><wsa:ProblemAction><wsa:Action>""</wsa:Action></wsa:ProblemAction></wsa:FaultDetail></soapenv:Header><soapenv:Body><soapenv:Fault><faultcode>wsa:ActionNotSupported</faultcode><faultstring>The
 [action] cannot be processed at the receiver.</faultstring><detail 
/></soapenv:Fault></soapenv:Body></soapenv:Envelope> 
0 







----- Original Message ----- 
From: "keith chapman" <[EMAIL PROTECTED]> 
To: axis-user@ws.apache.org 
Sent: Monday, 15 October 2007 02:14:19 PM (GMT+1000) Australia/Sydney 
Subject: Re: Axis 2 client part of web app 

Hi Srikanth, 

Can you use TCP-Monitor (U can use the eclipse plugin) and capture the request 
and responses in the two cases and post it here. That'll help diagnose the 
problem. 

Thanks, 
Keith. 


On 10/15/07, Srikanth Muthyala < [EMAIL PROTECTED] > wrote: 


I have a client code generated using Axiscode generator in eclipse. If I make a 
call to the service when client is running as a standalone main method it works 
fine but when the same code is called while running in web app it gets fault 
Faultcode = { http://www.w3.org/2005/08/addressing }ActionNotSupported 
Reason = The server did not recognise the action which it received: 

-I tried running cient and server on two different hosts and same host - no 
change. 

This is my services.xml 

<?xml version="1.0" encoding="UTF-8"?> 
<!-- This file was auto-generated from WSDL --> 
<!-- by the Apache Axis2 version: 1.3  Built on : Aug 10, 2007 (04:45:47 LKT) 
--> 
<serviceGroup> 
    <service name="RtbCallEvent"> 
        <messageReceivers> 
            <messageReceiver mep=" http://www.w3.org/ns/wsdl/in-out " 
class="com.customer.service.rtbcallevent.RtbCallEventMessageReceiverInOut"/> 
        </messageReceivers> 
        <parameter name="ServiceClass"> 
com.customer.service.rtbcallevent.RtbCallEventSkeleton</parameter> 
        <parameter name="useOriginalwsdl">true</parameter> 
        <parameter name="modifyUserWSDLPortAddress">true</parameter> 
        <operation name="callEvent" mep=" http://www.w3.org/ns/wsdl/in-out "> 
        <actionMapping>\"\"</actionMapping> 
            
<outputActionMapping>urn:rtbCallEvent/wsdl:rtbCallEventSEI:callEventResponse</outputActionMapping>
 
        </operation> 
    </service> 
</serviceGroup> 

This is my java code 
                        RtbCallEventStub stub = new RtbCallEventStub(" 
http://10.96.201.30:8080/RTB/services/RtbCallEvent "); 
                        CallEvent7 callEvent = new CallEvent7(); 
                        CallEvent param = new CallEvent(); 
                        
                        param.setAnswerTime("param"); 
                        param.setCalledNumber("param"); 
                        param.setCallingNumber("sdfds"); 
                        param.setDirection("sdf"); 
                        param.setGroup("successq"); 
                        param.setRecordId("sdfsd"); 
                        param.setReleaseTime("sdf"); 
                        
                        callEvent.setCallEvent(param ); 
                        CallEventResponse6 resp = stub.callEvent(callEvent); 
                        
System.out.println(resp.getCallEventResponse().getResult()); 
                        
                } catch (AxisFault e) { 
                        // TODO Auto-generated catch block 
                        System.out.println(e.getFaultCode()); 
                        System.out.println(e.getMessage ()); 
                        System.out.println(e.getReason()); 
                } catch (RemoteException e) { 
                        // TODO Auto-generated catch block 
                        e.printStackTrace(); 
                } 

Any help will be appreciated. 

Regards, 

Srikanth Muthyala 





-- 
Keith Chapman 
WSO2 Inc. 
Oxygen for Web Services Developers. 
http://wso2.org/

Reply via email to