我有一个用C++,Java,Python混合编写的大型系统。我必须将这个系统的一个非常小的子集与一个使用webservice技术的门户网站连接起来。Webservice不是关键的,它必须公开3到4个方法。
现在用Java实现这一点最快的方法是什么?我以为是AXIS+Tomcat。也许还有其他最新的库?
发布于 2010-10-08 16:43:27
现在用Java语言实现这个功能最快的方法是什么?我以为是AXIS+Tomcat。也许还有其他最新的库?
是的,有一个更好的方法。忘记Axis,转而使用JAX-WS堆栈,比如JAX-WS RI (包含在Java6中)或Apache CXF。下面是使用JDK的内置HTTP服务器的测试方法的常用HelloWorld服务:
package hello;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;
@WebService
public class Hello {
@WebMethod
public String sayHello(String name) {
return "Hello, " + name + ".";
}
public static void main(String[] args) {
Endpoint.publish("http://localhost:8080/WS/Hello", new Hello());
}
}只需运行main方法,就可以开始使用web服务了。
当然,您可能希望将您的web服务部署到一个实际的容器上,以供生产使用。您可以使用GlassFish并部署您的服务(GlassFish捆绑了JAX-WS运行时)。或者,您可以选择Jetty或Tomcat并在其上安装所选的运行时(JAX-WS或Apache CXF)。请参阅他们各自的说明。
资源
相关问题
发布于 2010-10-08 16:45:08
还有一个项目"Jersey" JSR-311 (JAX-RS)参考实现。实现REST原则的网络服务框架,在我看来,现代网络服务应该遵守这一原则。它在网络上找到了很多tutorials。
发布于 2010-10-08 16:42:12
Apache Axis2、Apache CXF或Glassfish Metro 2.0都是非常最新的,将提供您所需的内容。Spring-WS可能比前3个版本更容易使用,但前提是您已经在Spring框架中构建。要进行比较,请参阅:
https://stackoverflow.com/questions/3888822
复制相似问题