Hello,

With in a single aar file, I want to specify two services that provides
operations from a single service class. For instance, I have the class:


import org.apache.axiom.om.OMElement;

public class PingTest {
  public void pingXML(OMElement element) {
  }

  public void pingRPC() {
  }
}

and the services.xml file:

<serviceGroup>
  <service name="RPCPingService" targetNamespace="rpc">
    <messageReceivers>
      <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only";
       class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
    </messageReceivers>

    <operation name="pingRPC"
               mep="http://www.w3.org/2004/08/wsdl/in-only";>
      <actionMapping>pingRPC</actionMapping>
    </operation>

    <parameter name="ServiceClass">PingTest</parameter>
  </service>

  <service name="RawXMLPingService" targetNamespace="xml">
    <messageReceivers>
      <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only";
       class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
    </messageReceivers>

    <operation name="pingXML"
               mep="http://www.w3.org/2004/08/wsdl/in-only";>
      <actionMapping>pingXML</actionMapping>
    </operation>
    <parameter name="ServiceClass">PingTest</parameter>
  </service>
</serviceGroup>

If I list the services using the Axis2 list service page, both of the
operations (pingRPC and pingXML) are available operations. More over, if
I add a method public int foo() to PingTest, it will get added as an
available operation to both services.

Is there a way of restricting the operations available in a service? Or
will I have to create a facade to achieve this?

Thanks a lot!
-Alex


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

Reply via email to