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]
