gpt4 book ai didi

java - 更改 Wildfly 中公开的 WebService URL

转载 作者:行者123 更新时间:2023-12-01 16:56:37 31 4
gpt4 key购买 nike

我有一个 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/

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