hi,
Is there a chance that these two clients share the same HTTP channel ?
it is highly unlikely but if the two requests are in different
channels then there is no chance to mix them up even when there is no
use of WS-Addressing (AFAIK)

I guess the best thing to do would be to monitor the traffic using
tcpmon (http://ws.apache.org/commons/tcpmon/) and see whether there is
a connection getting reused.  Also if this fails try enabling
WS-Addressing

Ajith

On 9/20/07, August Visco <[EMAIL PROTECTED]> wrote:
> Hello, I am new to web services and soap. I am using axis2 1.1.1 to load
> Spring 2.0 and expose a POJO as a web service. Additionally, I have a
> passwordCallbackClass for the rampart wss4j InflowSecurity which
> authenticates a username and password via kerberos via JAAS. Here is my
> services.xml:
> > <serviceGroup>
> >
> >   <service name="SpringInitV1" class="myservice.SpringInit">
> >     <description>
> >         Initialize Spring
> >     </description>
> >     <parameter name="ServiceClass">myservice.SpringInit</parameter>
> >     <parameter name="ServiceTCCL">composite</parameter>
> >     <parameter name="load-on-startup">true</parameter>
> >     <operation name="springInit">
> >         <messageReceiver
> > class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
> >     </operation>
> >   </service>
> >
> >   <service name="MyService"
> > targetNamespace="http://example.com/MyService";>
> >     <description>
> >         MyService Web Service
> >     </description>
> >     <transports>
> >       <transport>http</transport>
> >     </transports>
> >     <schema schemaNamespace="http://example.com/MyService/service/xsd";>
> >       <mapping
> > namespace="http://example.com/MyService/service/types/xsd";
> > package="myservice.types"></mapping>
> >     </schema>
> >     <parameter name="ServiceClass">myservice.MyServicePojo</parameter>
> >     <parameter
> > name="ServiceObjectSupplier">org.apache.axis2.extensions.spring.receivers.SpringAppContextAwareObjectSupplier</parameter>
> >
> >     <parameter name="SpringBeanName">myservice</parameter>
> >     <messageReceivers>
> >       <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only";
> > class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
> >       <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out";
> > class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
> >     </messageReceivers>
> >     <module ref="rampart" />
> >     <parameter name="InflowSecurity">
> >       <action>
> >         <items>UsernameToken</items>
> >
> > <passwordCallbackClass>myservice.MyServiceSecurityManager</passwordCallbackClass>
> >
> >       </action>
> >     </parameter>
> >   </service>
> >
> > </serviceGroup>
> I have a client written in perl (SOAP::Lite) which runs in a loop and
> makes requests to one of the methods exposed through the POJO. Here is a
> snippet:
> > my $soap = SOAP::Lite  -> uri($uri)  -> proxy($proxy)  -> outputxml(1);
> >
> > my $Username = SOAP::Data->name('Username' => $cur_username);
> > my $Password = SOAP::Data->name('Password' => $cur_password)
> >         ->attr({Type =>
> > 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText'});
> >
> > my $UsernameToken = SOAP::Data->name('UsernameToken')
> > ->value(\SOAP::Data->value($Username, $Password));
> > my $security = SOAP::Header->name(Security)
> >         ->attr({'xmlns' =>
> > 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd'})
> >
> >         ->value(\$UsernameToken);
> >
> > $method = SOAP::Data->name('myServiceMethodName')->attr({xmlns =>
> > '$service_ns'});
> > my $param1 = SOAP::Data->name('param1')
> > ->value(\SOAP::Data->value($param2, $param3)) ->attr({xmlns =>
> > '$service_type_ns'});
> > @param       = SOAP::Data->value($param1)->attr({xmlns =>
> > '$service_ns'});
> >
> > my $result = $soap->call($security, $method => @param);
> The WSDL lists MyServiceSOAP11Binding and MyServiceSOAP11Binding
> bindings attached to the endpoint in the web service to which I am
> making the request. I'm using soap over an http transport.
>
> It works perfectly in that I get the response I expect for that request.
> However, when I launch a parallel second client which loops and makes
> calls to a different method in the web service, then the two clients
> begin to intermittently receive responses destined to each other.
> Apparently, Axis2 is returning the first completed response to the first
> client waiting for a response. What am I doing wrong? Is this a
> configuration problem in axis2? I want a synchronous request/response
> behavior from the web service. Do I need to incorporate WS-Addressing
> into the request sent from the client? I was under the impressing that
> WS-Addressing was only required to redirect the response to a different
> endpoint than the one that made the request.
>
> Thx
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
Ajith Ranabahu

Reading, after a certain age, diverts the mind too much from its
creative pursuits. Any man who reads too much and uses his own brain
too little falls into lazy habits of thinking - Albert Einstein

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to