Re: Servlet WSDL and Session-ed Endpoints
Re: Servlet WSDL and Session-ed Endpoints
- Subject: Re: Servlet WSDL and Session-ed Endpoints
- From: Mike Schrag <email@hidden>
- Date: Wed, 31 May 2006 16:31:54 -0400
If you get a hankering to do so, this sounds like a handy addition to
the wikibook ... I'm sure I'll run into this sooner or later as well.
ms
On May 31, 2006, at 4:13 PM, email@hidden wrote:
Hello Francis;
I'm not actually using D2WS, but I did notice that there. I found
a solution yesterday afternoon and that involved writing an AXIS
handler to run before reaching the pivot. The handler simply
forces the URL 'location' endpoint for the WSDL by assembling it
from information in the WOContext manually. This achieves the
correct result of getting the servlet-container modified URL as the
location for the web services and therefore the inbound request
ends up at the right servlet container.
cheers.
You can force namespaces definition in rules (see reference
below). I've never did that kind of thing before, but maybe you
could define dynamically it a new rule set, using
D2WModel.setDefaultModel(D2WModel)? You can even create your own
D2WModel subclass that can build the "serviceLocationURL" /
"WSDLDefinitionName" values dynamically?
Defining custom WebServices namespace and definitions:
http://en.wikibooks.org/wiki/Programming:WebObjects/Web_Services/
Problems#DirectToWebService_can.
27t_return_a_WSDL_with_custom_namespace_and_definitions_name_in_it_.2
8WO_5.2.x.29
...
I am using session-ed web services in a servlet deploy. If the
endpoint I want including the session/instance is as follows...
http://foo.co.nz/FOO/WebObjects/FOO.woa/ws/
FooService;jsessionid=abc.i1?wsdl
...then the resultant WSDL returned actually contains the
following endpoint...
[SNIP]
<wsdl:service name="FooService">
<wsdl:port name="FooService" binding="impl:FooService
SoapBinding">
<wsdlsoap:address location="http://foo.co.nz/FOO/WebObjects/
FOO.woa/ws/FooService"/>
</wsdl:port>
</wsdl:service>
[SNIP]
Note the lack of a session/instance ("abc.i1") and because of
this, the adaptor has no idea which servlet instance to send it
to and the whole thing fails. Has anybody found a way of getting
the 'jsessionid' into the 'location' of the WSDL?
___
Andrew Lindesay
www.lindesay.co.nz
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40mdimension.com
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden