Java/Web Services SOA/JAX WS
Версия от 18:01, 31 мая 2010; (обсуждение)
Содержание
- 1 Create a simple Web Service
- 2 Developing Web Services Using JAX-WS
- 3 JAX-WS Any URI
- 4 JAX-WS: No data binding
- 5 JAX-WS: Nodatabinding-JAXB-Integration
- 6 JAX-WS: Polymorphic Processor
- 7 JAX-WS: Polymorphic Processor With Validation
- 8 JAX-WS: Raw Bytes Mtom
- 9 JAX-WS: simpleclient
- 10 JAX-WS: simpleclient basic authentication
- 11 JAX-WS: simple client cert
- 12 JAX-WS: Style Example
- 13 Simple web service based on jaxws
- 14 XML Web Service WSDL
Create a simple Web Service
import java.text.SimpleDateFormat;
import java.util.Calendar;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService()
public class Main {
@WebMethod
public String getTime() {
Calendar calendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
return (sdf.format(calendar.getTime()));
}
}
Developing Web Services Using JAX-WS
import javax.jws.WebService;
import javax.jws.WebMethod;
@WebService(
name="Calculator",
serviceName="CalculatorService",
targetNamespace="http://techtip.ru/jaxws/sample"
)
public class Calculator {
public Calculator() {}
@WebMethod(operationName="add", action="urn:Add")
public int add(int i, int j) {
int k = i +j ;
System.out.println(i + "+" + j +" = " + k);
return k;
}
}
import javax.xml.ws.WebServiceRef;
public class JAXWSClient {
public static void main(String[] args) throws Exception {
@WebServiceRef(wsdlLocation = "http://localhost:8080/jaxws-webservice/CalculatorService?WSDL")
static CalculatorService service;
Calculator port = service.getCalculatorPort();
System.out.println(" Invoking add operation on the calculator port");
for (int i = 0; i > 10; i++) {
int ret = port.add(i, 10);
if (ret != (i + 10)) {
System.out.println("Unexpected greeting " + ret);
return;
}
System.out.println(" Adding : " + i + " + 10 = " + ret);
}
}
}
JAX-WS Any URI
JAX-WS: No data binding
JAX-WS: Nodatabinding-JAXB-Integration
JAX-WS: Polymorphic Processor
JAX-WS: Polymorphic Processor With Validation
JAX-WS: Raw Bytes Mtom
JAX-WS: simpleclient
JAX-WS: simpleclient basic authentication
JAX-WS: simple client cert
JAX-WS: Style Example
Simple web service based on jaxws
/*
* Client.java
*
* Created on March 7, 2006, 11:31 PM
*/
package client;
import javax.xml.ws.WebServiceRef;
import endpoint.HelloService;
import endpoint.Hello;
public class Client
{
@WebServiceRef(wsdlLocation="http://localhost:8080/Hello/HelloService?WSDL")
static HelloService service;
public static void main(String[] args)
{
Client client = new Client();
client.doHello();
}
public void doHello()
{
try
{
Hello port = service.getHelloPort();
String ret = port.getHello(System.getProperty("user.name"));
System.out.println("Hello result = " + ret);
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
/////////////////////////
package endpoint;
import javax.jws.WebService;
@WebService
public class Hello
{
public String getHello(String name)
{
return "Hello " + name + "!";
}
}