Hi,

I am getting following error while trying to invoke a WS-Security enabled
client request:

org.apache.axis2.AxisFault: WSDoAllReceiver: Incoming message does not
contain required Security header
 at
org.apache.rampart.handler.WSDoAllReceiver.processBasic(WSDoAllReceiver.java:221)
 at
org.apache.rampart.handler.WSDoAllReceiver.processMessage(WSDoAllReceiver.java:86)
 at org.apache.rampart.handler.WSDoAllHandler.invoke(WSDoAllHandler.java:72)
 at org.apache.axis2.engine.Phase.invoke(Phase.java:317)
 at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
 at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)

I am missing something I know but not sure what. Following is my client
code:

      ServiceClient client = new ServiceClient();
      Options options = new Options();
      options.setAction("invoke");
      options.setUserName("system");
      options.setPassword("manager");
      options.setTo(new EndpointReference(wsServerUrl + "services/ABS"));
      client.setOptions(options);
      client.engageModule("rampart");
      OMElement response = client.sendReceive(getPayload(args));

Following is my services.xml:

<service name="ABS" targetNamespace="http://www.abc.com/webservice";>
<description>Service description for ABS</description>
<schema 
schemaNamespace="http://www.abc.com/webservice"/<http://www.abc.com/webservice%22/>
>
<parameter name="ServiceClass">ABS</parameter>
<parameter name = "disasbleREST">true</parameter>
<operation name="invoke">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
<module ref="soapmonitor"/>
<module ref="rampart" />
<parameter name = "InflowSecurity"><action>
<items>UsernameToken</items>
<passwordCallbackClass>web.ws.control.PWCBHandler</passwordCallbackClass>
</action>
</parameter>
<parameter name="OutflowSecurity">
 <action>
  <items>UsernameToken</items>
  <passwordCallbackClass>web.ws.control.PWCBHandler</passwordCallbackClass>
 </action>
</parameter>
</service>

Any idea?

Chinmoy

Reply via email to