java - 更改 Wildfly 中公开的 WebService URL

标签 java web-services jboss jax-ws wildfly

我有一个 Web 应用程序当前在 Glassfish 4.0 下运行,并希望将其修改为在 Wildfly 8.2 下运行。我目前遇到的问题是:

我有一些 Web 服务(带有注释 @WebService),目前发布在 /ws/

f.e. “PanelService”将在 /myAppContextRoot/ws/PanelService

下公开

我通过将Glassfish-WS-Servlet(ergo JAXWS-RI)绑定(bind)到web.xml中的/ws/*来做到这一点。 是否有一种可比的方式让 Wildfly 更好,而不使用 Wildfly 特定注释 - 仅通过配置?我不想在我的 classpath 中包含 jboss-classes

我当前的“解决方案”是将 JAXWS-RI 添加到类路径并发布服务两次 - 通过 JBoss-WSJAXWS-RI :-(

欧元编辑:

Terrence Curran 的解决方案实际上有效......但是......我必须添加一些小的更改。

  • 我不知道的是:必须将文件放在 src/main/webapp/META-INF (Maven Web 项目)下 - 尝试过 src/main/resources/META- INF 之前...
  • 上下文根必须包含我的应用程序名称......我的jboss-webservices.xml现在是:

.

<webservices>
    <context-root>myApp/ws</context-root>
</webservices>
  • 我必须将至少一个 Web 服务标记为 @Stateless EJB。不要问我为什么 - 但如果我删除注释,该文件似乎不会被解析和应用。仅当存在一个 WS 也作为 EJB 时,我的 wildlfy 才会应用 jboss-webservices.xml。 (错误?)

最佳答案

我还会考虑在 jboss-webservices.xml 文件中定义上下文根。这样您就可以避免修改 web.xml,否则会破坏 GlassFish 中的部署。

<webservices>
    <context-root>ws</context-root>
</webservices>

关于java - 更改 Wildfly 中公开的 WebService URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31851719/

相关文章:

c# - 有没有办法从 ASP.NET WebMethod 中获取原始 SOAP 请求?

c# - 与身份验证方法作斗争

jboss - 丰富:fileUpload is not working in jboss-6. 0.0.Final

java - 没有安全标志的 Cookie jboss 5.1

Java 内存不足,即使我给了它很多!

java - 将 REST 查询参数存储为静态字段

java - 如何找到重复的行并在它们前面显示重复的次数

java - 如何避免有关原始类型的代码重复?

php - 用于连续检查 MYSQL 数据库的 Web Worker AJAX 或 Web 套接字?

内存不足时的 Java EE 堆转储