Hi Bob,
I have noticed that other people have
asked about this type of scenario.
Yet another
embedded Axis question
DIEGO Moreira da Rosa
DATACOM - Diego [EMAIL PROTECTED]
DIEGO Moreira da Rosa
DATACOM - Diego [EMAIL PROTECTED]
I am using Axis 1.4 in a standalone
mode that does not require an Application Server
What
follows is a very high level set of steps.
=============================================================
byte[] content = "the SOAP XML
request UTF-8 encoded bytes"
Message requestMessage = new Message
( content ) ;
AxisServer engine = new AxisServer ()
;
SOAPServerProvider requestProvider =
new SOAPServerProvider () ; // This is a custom class that extends
org.apache.axis.providers.java.RPCProvider
SOAPService service = new SOAPService
( requestProvider ) ;
service.setOption (
RPCProvider.OPTION_CLASSNAME, "com.acme.classname" ) ; // This class has the methods and your
code
service.setOption (
RPCProvider.OPTION_ALLOWEDMETHODS, "method1, method2" ) ; //
Methods that are allowed to be used
service.setEngine ( engine )
;
MessageContext requestContext = new
MessageContext ( engine ) ;
requestContext.setService ( service )
;
requestContext.setMaintainSession ( false ) ;
requestContext.setRequestMessage (
requestMessage ) ;
TypeMapping mapping =
requestContext.getTypeMapping () ;
engine.invoke (
requestContext ) ;
I needed to extend the RPC provider,
but in your case just using RPCProvider could be ok.
If you
are using Beans you will need to register the bean serializers / deserializers
via the mapping.
I hope
this gets you up and going
======================================================
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Thursday, 31 August 2006 8:50 AM
To: [email protected]
Subject: Newbie Question: Must Axis run in an App Server?
Our company is embarking on implementation of a new architecture that is
heavily message based.
Much of the software components already exist, but do not use messaging.
They are written in either C/C++ or Java.
Our goal is to use Web services (SOAP/WSDL) over JMS for internal
messages. However, we don't want to host all the applications on an app
server (such as WLS, Tomcat, etc) due to complexity and cost reasons.
I've been told that we could use Axis to manage the SOAP messages over JMS -
but all the Axis documentation I've read talks about installing it on an application server
Is it possible to use Axis to receive SOAP messages and invoke the
appropriate method, and return a response, without an app server?
Thanks,
Bob Kendall
This e-mail and any attachments are intended only for the
individual or company to which it is addressed and may contain
information which is privileged, confidential and prohibited from
disclosure or unauthorized use under applicable law. If you are
not the intended recipient of this e-mail, you are hereby notified
that any use, dissemination, or copying of this e-mail or the
information contained in this e-mail is strictly prohibited by the
sender. If you have received this transmission in error, please
return the material received to the sender and delete all copies
from your system.
