vytvoříme si jednoduchou metodu, kterou budeme chtít zpřístupnit jako webovou službu
package mypackage;
public class Calculator {
public int add(int i1, int i2) {
return i1 + i2;
}
}
zkompilujeme
pomocí utility Java2WSDL vytvoříme WSDL soubor
java org.apache.axis.wsdl.Java2WSDL -o Calculator.wsdl
-l"http://localhost:8080/axis/services/Calculator"
-n"urn:Mypackage" -p"mypackage" "urn:Mypackage"
mypackage.Calculator
pomocí utility WSDL2Java vytvoříme potřebná napojení
java org.apache.axis.wsdl.WSDL2Java -o . -d Session -s -S true -Nurn:Mypackage
mypackage Calculator.wsdl
Axis nám tímto vygeneroval všechny potřebné soubory:
CalculatorSoapBindingImpl.java : Java soubor obsahující defaultní serverovou implementaci webové služby Calculator. Je potřeba implementaci změnit podle vlastních potřeb.
Pomocí Admin klienta deploydneme serverovou část:
Zkompilujeme a nahrajeme serverovou část do tomcatu do adresáře: axis/WEB-INF/classes.
java org.apache.axis.client.AdminClient deploy.wsdd
A nyní už můžeme naši webovou službu vyzkoušet. Nejprve se přesvědčíme zdali opravdu na příslušné adrese služba běží.
http://localhost:8080/axis/services/Calculator?wsdl
Dále potřebujeme vytvořit nějaký příklad volání:
package mypackage;
public class Main {
public static void main (String[] args) throws Exception {
int first = Integer.parseInt(args[0]);
int second = Integer.parseInt(args[1]);
Calculator binding = new CalculatorServiceLocator().getCalculator();
int result = ((CalculatorSoapBindingStub)binding).add(first, second);
System.out.println(first + " + " + second + " = " + result);
}
}
java mypackage.Main 1 3