Hi Sebastien,

This is all good stuff - much nicer :)
I've updated the windows build files to create the Axis dispatcher
library & it should deploy in a similar manner to the Linux build.
Also successfully tested the windows sample runwsserver.bat files and
updated the deployment files to put things in the right places again.

Cheers!
Andy


On 9/20/06, Jean-Sebastien Delfino <[EMAIL PROTECTED]> wrote:
Hi,

Under revision r448112, I committed some changes to our Axis2C
integration to simplify our Web Service deployment story.

Before these changes, to publish an SCA service to Axis2 we had to
create a directory named like that service under Axis2C/services, place
there a copy of tuscany_sca_ws_service.so and handwrite a services.xml
file declaring the Axis2 service, configure service parameters
indicating the Tuscany system root and SCA service to publish, and list
all its methods... We had to do this for each service... not very simple :)

With the changes I made, we don't need to do any of this anymore. Here
are the new steps.

1) Configure Axis2C to know about Tuscany. You only do this once. The
simplest is to copy the Tuscany/extensions/ws/service directory over
your Axis2C installation, but if you don't want to do that here are the
detailed steps:

-  Create a modules/tuscany directory containing
libtuscany_sca_ws_dispatcher.so and the module.xml file distributed
under Tuscany/extensions/ws/service. This module.xml file declares to
Axis2C a handler that will handle the dispatching of all requests to SCA
services.

- Add a <ref module="tuscany"> element to your axis2.xml file. This will
register the above module.

- Create a services/tuscany directory containing
libtuscany_sca_ws_service.so and the services.xml file distributed under
Tuscany/extensions/ws/service. This services.xml file declares to Axis2C
a single service skeleton that will handle all requests to SCA services.

2) Before starting the Axis2C axis2_http_server:

- Configure the TUSCANY_SCACPP_SYSTEM_ROOT and
TUSCANY_SCACPP_DEFAULT_COMPONENT environment variables the same way you
usually do a for a Tuscany client.

- The Axis2 HTTP server will then automatically serve all composite
services exposed by your default (composite) component.

3) The name of the composite service to invoke is found in the target
URI of incoming Web Service requests. For example to talk to a service
named CalculatorService, send your SOAP request to
http://localhost:9090/axis2/services/CalculatorService.

The old deployment scheme should continue to work, but I think that this
new scheme is much simpler, as you don't need to wire any Axis2C
deployment descriptor anymore. You just write your SCA services, start
the Axis2 HTTP server with the right pointers to your system root and
default composite, and that's it.

In the future we may want to implement more sophisticated addressing
schemes (to allow a single server to support multiple composites) but
I'd prefer to keep things very simple for now and instead investigate
deployment scenarios inside a real Apache HTTPD server and how to best
use URL mapping, rewrites, virtual hosting etc in this environment.

Thoughts?

--
Jean-Sebastien


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



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

Reply via email to