gpt4 book ai didi

java - 在 JBoss、maven 和 choices 上实现 Webservice

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:02:42 26 4
gpt4 key购买 nike

我要在运行于 Java 6 的 JBoss5 中实现一个网络服务。根据 JBoss Documentation ,选择是使用 JBoss native 实现、CXF 或 Metro。由于 native 不需要任何额外的库(CXF 会引入 Spring 吗?)我认为这将是首选。

WS 契约(Contract)在 WSDL 中给出,因此我想从中生成 stub 。但是 JBoss 工具对 WSDL 咆哮,而 CXF wsdl2java 愉快地生成源代码。我可以使用这些资源而不依赖于 CXF 而使用原生的 JBoss WS 堆栈吗?生成的类中的注释甚至指向 javax 的东西(这可能是一个 4. 选择,因为我可以使用 java 6 创建一个 WS 而无需额外的依赖?)

如何配置网络服务?我还需要一个 web.xml 来定义一些 servlet 吗?我需要什么 Maven 依赖项?

对于所有这些看似愚蠢的问题,我深表歉意,但我做了很多搜索和阅读,但我读得越多,我就越困惑。 JBoss 文档要么都是关于用 java bean 和注释和/或 ant 进行说明,公共(public) jboss maven repo 是一团糟(一些 WS 的东西在 jboss 下,其他在 org.jboss.jbossws 下,甚至在 org.jboss.ws 下的其他人工制品..)

非常欢迎任何指向 howtos 和/或文档的指针。

最佳答案

我会选择 CXF,运行自包含的 war ,将 jboss 视为一个 servlet 容器,完全忽略 jboss 试图提供的所有 web 服务垃圾。

然后您只需按照 wsdl 优先服务的常规 CXF 说明进行操作,并最终得到一个漂亮干净的可移植 .war 文件。它将/应该在 jboss 中运行(jboss 可能会尝试自己提供一些额外的库,但您应该能够设置某种类加载器包含策略以确保它首先从上下文加载,而不是首先从 jboss 加载。

这给了你

  1. nice clean wsdl 第一次开发
  2. 要遵循的一组简单说明(只需 cxf)
  3. 有意义的 maven repo
  4. 仍在使用 jboss,因为有人认为这是个好主意。

使用 java 6 标准网络服务是一种选择,取决于您还想在您的应用中使用什么。我已经打算使用 spring,CXF 的 spring 集成比 jaxws-commons spring 部分更整洁且维护得更好。此外,如果您使用现有的 jaxws-ri,用于从 wsdl 生成的 Maven 工具会更复杂且维护更少。

关于java - 在 JBoss、maven 和 choices 上实现 Webservice,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4728819/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com