Ik ben me momenteel aan het verdiepen in webservices, meer bepaald Axis. Ik heb het concept dan ook redelijk goed door, maar ik zit toch nog met enkele vragen. Vooral op het vlak van implementatie.
Er zijn verschillende manieren om een webservice via Axis te integreren. De eerste (en simpelste) manier is om een simpele java class te maken; deze te hernoemen naar HelloService.jws en te deployen in de Axis applicatie.
De manier die ik voorlopig gebruik, maakt gebruik van een simpele Service:
Ik beschrijf deze Service in een deploy.wsdd file
Dit werkt allemaal goed en wel, maar ik zou mijn Web service graag willen ontwikkelen met WSDL ondersteuning (zodat er requestor-side stubs, provider-side skeleton impl. en deployment descriptors gegenereerd kunnen worden).
Maar hier zit ik een beetje mee in de knoop. Op welke wijze kan ik dit nu het beste verwezenlijken. Ik ga er vanuit dat ik eerst de code van mijn webservice zal schrijven en pas erna deze stubs e.d. zal genereren.
Ik dacht daarom ook volgende manier van werken te volgen
• java interface voor webservice schrijven en compileren
• java class implementatie voor webservice schrijven en compileren (met debug optie)
• Java2WDSL (creeert de WSDL files)
• WSDL2Java (creeert files voor de webservice (stubs, proxy, ..)
• de ClassNaamSoapBindingImpl.java aanpassen (hier heb ik problemen mee; ik wil dat er automatisch gebruik wordt gemaakt van mijn al geschreven service)
• Webservice files compileren
• Deployen van de webservice
Op welke wijze kan ik dit dan nu het beste realiseren??
Ik wil dus gewoon mijn webservice-side code schrijven en vanaf daar (via ANT) overgaan tot het compileren, genereren, deployen van de WS, zonder nog enige tussenkomst van de deployer/developer
Er zijn verschillende manieren om een webservice via Axis te integreren. De eerste (en simpelste) manier is om een simpele java class te maken; deze te hernoemen naar HelloService.jws en te deployen in de Axis applicatie.
De manier die ik voorlopig gebruik, maakt gebruik van een simpele Service:
Java:
1
2
3
4
5
6
| public class HelloServer { public String sayHello(String name){ System.out.println("sayHello(String name)"); return "Hello "+name+", How are you doing?"; } } |
Ik beschrijf deze Service in een deploy.wsdd file
Java:
1
2
3
4
5
6
| <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <service name="HelloService" provider="java:RPC"> <parameter name="className" value="com.domein.webservice.HelloServer"/> <parameter name="allowedMethods" value="*"/> </service> </deployment> |
Dit werkt allemaal goed en wel, maar ik zou mijn Web service graag willen ontwikkelen met WSDL ondersteuning (zodat er requestor-side stubs, provider-side skeleton impl. en deployment descriptors gegenereerd kunnen worden).
Maar hier zit ik een beetje mee in de knoop. Op welke wijze kan ik dit nu het beste verwezenlijken. Ik ga er vanuit dat ik eerst de code van mijn webservice zal schrijven en pas erna deze stubs e.d. zal genereren.
Ik dacht daarom ook volgende manier van werken te volgen
• java interface voor webservice schrijven en compileren
• java class implementatie voor webservice schrijven en compileren (met debug optie)
• Java2WDSL (creeert de WSDL files)
• WSDL2Java (creeert files voor de webservice (stubs, proxy, ..)
• de ClassNaamSoapBindingImpl.java aanpassen (hier heb ik problemen mee; ik wil dat er automatisch gebruik wordt gemaakt van mijn al geschreven service)
• Webservice files compileren
• Deployen van de webservice
Op welke wijze kan ik dit dan nu het beste realiseren??
Ik wil dus gewoon mijn webservice-side code schrijven en vanaf daar (via ANT) overgaan tot het compileren, genereren, deployen van de WS, zonder nog enige tussenkomst van de deployer/developer