AXIS2/Un service sur une interface (plusieurs implémentations possibles)
Bonjour,
J'utilise Axis2 et j'aimerais créer un webservice qui se base sur une interface avec une implémentation fixe que j'aimerais setter dans le services.xml
Mes classes sont :
Code:
1 2 3 4
| public interface IExample extends Remote
{
Integer add (Integer first, Integer second) throws RemoteException;
} |
et
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| public class IExampleImpl implements IExample
{
public IExampleImpl () throws RemoteException
{
super ();
}
public Integer add (Integer first, Integer second) throws RemoteException
{
return first+second;
}
} |
Mais quand je crée mon service et le déploie dans Tomcat, quand je teste avec soapUI, j'ai toujours
Code:
<faultstring>java.lang.NullPointerException</faultstring>
Mon fichier services.xml est le suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <service name="IExample" >
<description>
Service for the IExemple
</description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<operation name="add">
<messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
<actionMapping>urn:add</actionMapping>
</operation>
<parameter name="ServiceClass" locked="false">IExampleImpl</parameter>
</service> |
En gros : est-ce possible de faire un webservice basé sur une interface ?
Merci beaucoup