1. Programmera serverdelen
På denna sida ska vi programmera serverdelen av Caclualtor och sjösätta den på JBoss 4.
2. Implementation av tjänsten
Vi börjar med att skriva en klass som implementerar tjänsten:
Jag väljer att låta denna klass implementera gränssnittet javax.xml.rpc.service.ServiceLifecycle.
3. Deployment Descriptors
Vi skriver följade sjösättningsbeskrivningar:
Två saker som jag upptäckt vad det gäller JBoss:
1. Inget slash (/) för "wsdl-file": Det är ej tillåtet att använda ett begynnande / i "wsdl-file"-elementet, det måste se ut såhär:
<wsdl-file>WEB-INF/wsdl/Calculator.wsdl</wsdl-file>
|
Märkligt att "The Ultimate Guid J2EE Web Services" av "Monson-Haefel" gör fel på detta.
2. Måste ha "servlet-mappping" i web.xml: JBoss kräver att "servlet-mapping"-elementet finns i web.xml, trots att "Monson-Haefel" säger att det är frivilligt.
4. Packa WAR och sjösätt
Nu packar vi filen till en WAR.
[olle@dev1]$ jar -cf calculator.war *
[olle@dev1]$ cp calculator.war $JBOSS_HOME/server/default/deploy/
|
Får du följande utskrift från JBoss så fungerar deployen:
04:21:30,642 INFO [WSDLFilePublisher]
WSDL published to: file:/opt/jboss-4.0.5.GA/server/default/data/wsdl/calculator.war/Calculator.wsdl
04:21:30,797 INFO [ServiceEndpointManager]
WebService started: http://okullberg-pc:8080/calculator/Calculator
|
Vi har nu en webbtjänst som svarar på
http://localhost:8080/calculator/Calculator .