我正在创建一个Web服务.我想知道如何声明参数类型并使用它
因为Java类型例如有所不同.日期.我已经编写了使用Java可以很好地使用Web服务的客户端程序,但是我想知道是否可以使用使用其他语言编写的客户端来使用相同的Web服务.我给您一个我的Web服务的代码示例:
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.Style;
import javax.xml.ws.Endpoint;
@WebService
public class WiseQuoteServer {
@SOAPBinding(style = Style.RPC)
public String getQuote(String category) {
if (category.equals("fun")) {
return "5 is a sufficient approximation of infinity.";
}
if (category.equals("work")) {
return "Remember to enjoy life, even during difficult situatons.";
} else {
return "Becoming a master is relatively easily. Do something well and then continue to do it for the next 20 years";
}
}
public static void main(String[] args) {
WiseQuoteServer server = new WiseQuoteServer();
Endpoint endpoint = Endpoint.publish(
"http://localhost:9191/wisequotes", server);
}
}
解决方法:
Jigar是正确的. JAX-WS使用JAXB将参数转换为XML. JAXB具有广泛的注释集,可用于自定义如何将数据转换为XML.由于数据是以XML格式发送的,因此几乎所有语言都可以读取/写入服务.此外,大多数语言都有某种可用的SOAP库.