At 03:08 PM 7/9/2002 -0400, you wrote:
>I've got a test web service that gets and sets a java class. I used
>WSDL2Java to gen the stub and skeleton. The stub implements my interface.
>In the impl's constructor, I create and populate several private field
>variable instances of my base class.
>
> From my client, I'm able to instantiate my interface using the service
>locator. I'm also able to successfully call the interface get method to
>retrieve the instances of my base class created in the impl constructor.
>However, when I call the set method to change the values of one of those
>base class instances and then call the get method to see the changed values
>on the client, I see the original values that were created in the impl
>constructor. I put a println in the set method in the impl - the object is
>making it's way there and I'm able to assign the values to the field
>variable bases classes and print out their values (in tomcat.) But the get
>method returns the original values. I'm expecting to see the changed
>values, not the original.
>
>Is there something I'm missing concerning service instantiation? With each
>call to the service, is a new class instantiated (which would explain why my
>set values aren't kept?)
right, unless you declare the service with session scope in the deploy.wsdd
file like this:
<service name="blah" provider="java:RPC">
<parameter name="allowedMethods" value="blah"/>
<parameter name="scope" value="Session"/>
<parameter name="className" value="blah"/>
</service>
>I tried setting the maintainSession flag to true on the stub, but that
>didn't help.
>
>Thanks.
>
>
>Sean Cohan
>Software Performance Systems