3.6. 为 Web 服务应用设置模块依赖项
JBoss EAP Web 服务以一组模块和库的形式交付,包括 org.jboss.as.webservices.*
和 org.jboss.ws.*
模块。您应该不需要更改这些模块。
使用 JBoss EAP 时,您无法直接使用 JBossWS 实施类,除非将依赖关系明确设置为对应的模块。您可以声明您要添加到部署中的模块依赖项。
只要有 webservices
子系统可用,都默认可用 JBossWS API。您可以使用它们而不为这些模块创建显式依赖项声明。
3.6.1. 使用 MANIFEST.MF
若要配置部署依赖项,请将它们添加到 MANIFEST.MF
文件中。例如:
Manifest-Version: 1.0 Dependencies: org.jboss.ws.cxf.jbossws-cxf-client services export,foo.bar
此 MANIFEST.MF
文件声明对 org.jboss.ws.cxf.jbossws-cxf-client
和 foo.bar 模块的
依赖关系。有关在 MANIFEST.MF
文件中声明依赖关系的更多信息(包括 导出
和服务
选项),请参阅 JBoss EAP 开发指南中 向 MANIFEST.MF 添加依赖性配置。
在端点和处理程序上使用注释时,如 Apache CXF 端点和处理程序,请在清单文件中添加正确的模块依赖项。如果您跳过此步骤,您的注解不会被使用,并完全被静默忽略。
3.6.1.1. 使用 JAXB
若要在容器内运行的客户端或端点中成功直接使用 JAXB 上下文,请设置 JAXB 实施。例如,设置以下依赖项:
Dependencies: com.sun.xml.bind services export
3.6.1.2. 使用 Apache CXF
要使用 Apache CXF API 和实施类,请将依赖项添加到 org.apache.cxf
(API)模块或 org.apache.cxf.impl
(实施)模块。例如:
Dependencies: org.apache.cxf services
其依赖性纯粹是 Apache CXF,没有任何 JBossWS 自定义或附加扩展。因此,客户端聚合模块可用于您可能需要的所有 Web 服务依赖项。
3.6.1.3. 客户端 Web 服务聚合模块
当您要使用所有 Web 服务功能和功能时,您可以将依赖项设置为便捷的客户端模块。例如:
Dependencies: org.jboss.ws.cxf.jbossws-cxf-client services
需要 services
选项通过加载 JBossWS 特定的类来启用所有 JBossWS 功能。在声明 org.jboss.ws.cxf .jbossws-cxf 和 org.
几乎始终需要 apache.cxf
模块的依赖关系时,services
选项。选项影响通过 服务
API 加载类,这是用于连线大多数 JBossWS 组件和 Apache CXF 总线扩展的类。
3.6.1.4. 注解扫描
应用服务器使用注释索引来检测用户部署中的 JAX-WS 端点。为属于不同模块的类声明 Web 服务端点时,如在 web.xml
描述符中引用它,请使用 注释
类型依赖项。如果没有这种依赖关系,您的端点将被忽略,因为它们不会显示为 webservices
子系统的带注释类。
Dependencies: my.org annotations