【问题标题】:java: basic web service interface without a web serverjava:没有 Web 服务器的基本 Web 服务接口
【发布时间】:2010-11-03 02:43:39
【问题描述】:

向现有的 Java 服务器应用程序添加基本的 Web 服务接口而不将其转换为 .war 或嵌入像 jetty 这样的小型 Web 服务器有多难?

比如说,xml-rpc 而不是更现代的方法,如果它有帮助的话。

如果不是太难,你能建议一个起点吗?

提前谢谢你:)

【问题讨论】:

    标签: java web-services interface jetty xml-rpc


    【解决方案1】:

    查看Restlet API,它提供了一种轻松的方式来实现可以在 Web 容器内或独立运行的 RESTful Web 服务。

    【讨论】:

    • 我可以使用这个 API 看起来很棒,但是文档需要帮助。
    【解决方案2】:

    听起来您要求的是不可能的事情:在不插入或嵌入 HTTP 服务器的情况下公开 HTTP 服务!

    除非您想重新实现 Jetty 已经做的事情,否则我建议使用 Jetty 作为库。这样您就不需要遵守 Servlet 规范中更尴尬的方面。例如。你的 servlet 可以有真正的带参数的构造函数。

    JDK 6 中还有一个简单的 HTTP 服务器实现,但它位于 com.sun 命名空间中,因此我会避免在生产代码中使用它。

    【讨论】:

    • 最后我们将重构架构以使应用程序成为一个 .war 风格的 webapp,它已经足够模块化了。虽然,嵌入式码头仍然是一个安全计划,我希望尽快玩弄它,一旦学习了基础知识,它似乎会简单得多。谢谢大家。
    【解决方案3】:

    Spring-WS has the facility 用于使用 JRE 1.6 的嵌入式 Web 服务器,如果您愿意的话。 Spring-WS 为您提供了一个非常好的 SOAP 服务器层,如果这就是您所追求的。

    如果没有,那么嵌入式 Jetty 实例可能是最好的主意。

    【讨论】:

      【解决方案4】:

      我不知道你在做什么,但是rmi呢?

      RMI @ stackoverflow

      【讨论】:

      • 这确实是我们的第一次尝试,但不幸的是,由于未知原因,在调用时创建了向后看的服务器到客户端连接(可以说是客户端随机端口)(我们没有使用回调,因此我们怀疑这都是 rmi 低级别的东西,也许是 DGC??),我们无法摆脱的连接。真是可惜,但是……,那个连接是怎么回事,tcp连接不是双向的吗? :(
      • 是的,RMI 创建了两个连接。如果您有防火墙问题,您可以选择要使用的端口。
      猜你喜欢
      • 1970-01-01
      • 2012-10-03
      • 2013-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多