On 26/07/06, David Melgar <[EMAIL PROTECTED]> wrote:


Setting the message receiver to RawXMLMessageReceiver still appears to require 
<actionMapping> to determine which method to invoke. In axis1, the specified 
method would receive all messages for that service. Equivalent behavior should be 
available in axis2 regardless of the value of the wsa:Action header.

To further clarrify, the service I'm writing bridges between webservices and a 
non-Java object invocation mechanism. It dynamically determines what operations are 
allowed. This services does not know at deployment time what operations are possible. 
I therefore don't know all the wsa:Action header values that it might be included in 
request messages. Therefore I cannot declare <actionMapping> values in the 
service deployment descriptor. In case you're wondering, this service also 
dynamically generates WSDL to describe the discovered supported operations.

Is there a way to wildcard <actionMapping> to say that any action maps to a 
method? Or to avoid the requirement for specifying an actionMapping if 
RawXMLMessageReceiver is used.

Are there other approaches that could be used?

What you are trying to do sounds pretty advanced (given that you're
dynamically generating WSDL).

There are a couple of options I can think of...
1. Remove the dispach phase from your Axis2 configuration and write
your own MessageReceiver (which removes the need for an AxisOperation
to be identified)
2. Define a single operation for the service and add a handler to the
DispatchPhase which selects that operation when the
RawXMLInOutReceiver will then invoke on the endpoint object.

David

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

Reply via email to