You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by Mir Shafiqul Islam <mi...@mindspring.com> on 2005/04/09 00:51:07 UTC

not invking main soap class

Hi I am just getting started with wss4j. So far so good. I got wss4j 
setup with a simple ping/echo service. However after successful 
authentication/verification my main soap class which holds the actual 
method to invoke is not getting called at all. Instead I am getting back 
an empty response back from server and no error. I do see the pwcallback 
class getting called successfully and user getting verified.

Here is part of my deployment file on server side

<service name="PingService">
        <requestFlow>
            <handler 
type="java:org.apache.ws.axis.security.WSDoAllReceiver">
                <parameter name="passwordCallbackClass" 
value="test.PWCallBack"/>
                <parameter name="action" value="UsernameToken"/>
            </handler>
        </requestFlow>
        <parameter name="className" value="test.PingServiceManager"/>
        <parameter name="allowedMethods" value="*"/>
        <parameter name="scope" value="application"/>
    </service>

The test.PingServiceManager and the method "echo" in it is never getting 
called.

Here is my client side config

<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
        <transport name="http" 
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
         <globalConfiguration >
          <requestFlow >
           <handler type="java:org.apache.ws.axis.security.WSDoAllSender" >
                <parameter name="action" value="UsernameToken"/>
                <parameter name="passwordCallbackClass" 
value="test.PWCallBack"/>
           </handler>
          </requestFlow >
         </globalConfiguration >
       </deployment>


I am adding other parameters programmatically:

Here is part of my client

        String echoString = "Hello Secured World! ";
        System.setProperty("axis.ClientConfigFile", "axis-client.wsdd");
        try {
           
            Service  service = new org.apache.axis.client.Service();
            Call call = (Call) service.createCall();
            call.setTargetEndpointAddress( new java.net.URL( mySOAPUrl ) );
            call.setProperty(UsernameToken.PASSWORD_TYPE, 
WSConstants.PASSWORD_DIGEST );
            call.setProperty(WSHandlerConstants.USER, "Ron");
            call.setOperationName(new QName( "urn:pingService", "echo" ) );
            call.addParameter( "input", XMLType.XSD_STRING, 
ParameterMode.IN );
            call.setReturnType( XMLType.XSD_STRING );
   
            result = (String) call.invoke( new Object[] { echoString } );
           
            System.out.println( "Result received: " + result );
            }
        catch ( Exception e ) {
            System.out.println( "Error received: " + e.toString() );
           
        }

Where run I get

Result received: null



Re: not invking main soap class

Posted by Mir Shafiqul Islam <mi...@mindspring.com>.
ok in answer to my own question, I left out provide="java:RPC" 
identifier in the service tag.

Mir

Mir Shafiqul Islam wrote:

> Hi I am just getting started with wss4j. So far so good. I got wss4j 
> setup with a simple ping/echo service. However after successful 
> authentication/verification my main soap class which holds the actual 
> method to invoke is not getting called at all. Instead I am getting 
> back an empty response back from server and no error. I do see the 
> pwcallback class getting called successfully and user getting verified.
>
> Here is part of my deployment file on server side
>
> <service name="PingService">
>        <requestFlow>
>            <handler 
> type="java:org.apache.ws.axis.security.WSDoAllReceiver">
>                <parameter name="passwordCallbackClass" 
> value="test.PWCallBack"/>
>                <parameter name="action" value="UsernameToken"/>
>            </handler>
>        </requestFlow>
>        <parameter name="className" value="test.PingServiceManager"/>
>        <parameter name="allowedMethods" value="*"/>
>        <parameter name="scope" value="application"/>
>    </service>
>
> The test.PingServiceManager and the method "echo" in it is never 
> getting called.
>
> Here is my client side config
>
> <deployment xmlns="http://xml.apache.org/axis/wsdd/"
> xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
>        <transport name="http" 
> pivot="java:org.apache.axis.transport.http.HTTPSender"/>
>         <globalConfiguration >
>          <requestFlow >
>           <handler 
> type="java:org.apache.ws.axis.security.WSDoAllSender" >
>                <parameter name="action" value="UsernameToken"/>
>                <parameter name="passwordCallbackClass" 
> value="test.PWCallBack"/>
>           </handler>
>          </requestFlow >
>         </globalConfiguration >
>       </deployment>
>
>
> I am adding other parameters programmatically:
>
> Here is part of my client
>
>        String echoString = "Hello Secured World! ";
>        System.setProperty("axis.ClientConfigFile", "axis-client.wsdd");
>        try {
>                      Service  service = new 
> org.apache.axis.client.Service();
>            Call call = (Call) service.createCall();
>            call.setTargetEndpointAddress( new java.net.URL( mySOAPUrl 
> ) );
>            call.setProperty(UsernameToken.PASSWORD_TYPE, 
> WSConstants.PASSWORD_DIGEST );
>            call.setProperty(WSHandlerConstants.USER, "Ron");
>            call.setOperationName(new QName( "urn:pingService", "echo" 
> ) );
>            call.addParameter( "input", XMLType.XSD_STRING, 
> ParameterMode.IN );
>            call.setReturnType( XMLType.XSD_STRING );
>              result = (String) call.invoke( new Object[] { echoString 
> } );
>                      System.out.println( "Result received: " + result );
>            }
>        catch ( Exception e ) {
>            System.out.println( "Error received: " + e.toString() );
>                  }
>
> Where run I get
>
> Result received: null
>
>
>