1

我需要修改现有的 Java SE 进程以公开 Web 服务。

我注意到 ApacheCXF 可以从 Java SE 进程中公开 Web 服务,但我的公司正在大力推动我使用 Axis2。

所有示例似乎都假设您正在运行一个成熟的 servlet 容器。但是由于 Java SE 6 包含 com.sun.net.httpserver,我希望有一种方法可以避免设置类似 Jetty 或 Tomcat 的东西。

如何使用 Axis2 来执行此操作?

4

1 回答 1

1

Axis 2 Web 服务,包括JAX-WS Web 服务,需要打包并部署在 Axis 2 容器中(Axis 2 Web 应用程序本身就是 Web 服务的容器)。所以你有你的答案,Axis 2 必须在 servlet 容器中运行。

虽然我了解 Axis 2“容器式”架构及其部署模型背后的动机,但我真的很讨厌它,并且看到的缺点多于优点(就像它的包装地狱完全适得其反)。如果至少它比替代品表现更好,但没有!例如,请参见与 RI的比较。真的,如果您可以重新考虑使用 Axis 2,那就去做吧。

于 2010-01-28T09:42:10.413 回答