【问题标题】:How to define Context Path in Wildfly?如何在 Wildfly 中定义上下文路径?
【发布时间】:2015-04-12 19:10:55
【问题描述】:

我使用以下代码在 tomcat 中设置上下文路径,我可以通过覆盖 tomcat 的默认路径直接使用localhost:8080 访问我的应用程序。

<Context path="" docBase="G:\bitbucket\projectpath\project\build\libs\project-1.0" workDir="G:\bitbucket\projectpath\project\build\libs\project-1.0\work"  debug="0" reloadable="false" autoDeploy="true" unpackWARs="true" crossContext="true"/>

现在我将使用 wildfly-8.2.0 作为运行时环境。我尝试将 .war 文件直接粘贴到 G:\wildfly-8.2.0.Final\standalone\deployments 中,我可以在浏览器中访问我的项目,例如 localhost:8080/project-1.0

我需要像在 tomcat 中所做的那样为 wildfly 设置相同的配置,以通过覆盖 wildfly 的默认欢迎页面来访问我在localhost:8080 中的项目。我试图在wildfly中做同样的事情,但我被困在哪里做那件事。 Wildfly 文件夹中有很多 .xml 文件(与 tomcat 的简单 server.xml 文件相比),我对从哪里开始感到困惑。我使用“如何在 Wildfly 中设置上下文路径”进行搜索,但没有成功。任何人都可以帮助我如何做到这一点..?如果它与编码有关,那么我可以进行大量搜索,至少我可以获得一些想法,但我被困在配置中。提前致谢。

【问题讨论】:

    标签: deployment jboss wildfly-8


    【解决方案1】:

    您可以通过在您部署的应用程序中添加 /WEB-INF/jboss-web.xml 文件来执行此操作:

    <?xml version="1.0" encoding="UTF-8"?>
    <jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
          http://www.jboss.com/xml/ns/javaee
          http://www.jboss.org/j2ee/schema/jboss-web_5_1.xsd">
       <context-root>/</context-root>
    </jboss-web>
    

    【讨论】:

    • 得到它的工作.. 谢谢.. 顺便说一句,我遇到了一个奇怪的问题,我已经使用这个命令启动了 wildfly,./standalone.sh -b xxx.xx.xx.xxx &gt; $HOME/web.log 2&gt;1 &amp; 并且为了停止它,我使用了./jboss-cli.sh --connect command=:shutdown ..一切正常,如果我启动服务器,我可以访问相应的网站,如果我停止服务器访问该网站,chrome 会告诉我“服务器没有响应”。但是一旦我把手放在 sqlserver 上,就会发生一些奇怪的事情。
    • 我在 sqlserver 中使用转储创建了一个数据库,然后每当我部署我的 .war 文件时,它都会因为部署失败而不断出现,我尝试了很多。即使在我使用关机命令之后,我也可以访问给我 404 not found 消息的站点。我认为一个进程正在免费中运行,即使在关闭命令之后也不会停止。你知道我该如何解决吗?
    • 当您启动进程时,使用标准输出重定向日志不是一个好方法。最好从日志配置中删除控制台附加程序,以避免填满$HOME/web.log 中的文件系统。只需从根记录器中删除控制台处理程序。您可以使用 boss-cli 再次添加它而无需在服务器上重新启动。
    • 如果有人想知道:xml命名空间的当前schemaLocation是xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/j2ee/schema/jboss-web_7_2.xsd"
    • 如果您想使用 /,您可能还必须删除 Wildfly 发行版的 welcome-content 文件夹。
    【解决方案2】:

    使用注释直接在 WebService 类中更改上下文根。

    import org.jboss.ws.api.annotation.WebContext;
    
    @Stateless
    @WebService(portName = "SampleWSPort", serviceName = "SampleWS")
    @SOAPBinding(style = Style.DOCUMENT)
    @WebContext(contextRoot = "/SWS", urlPattern = "/SampleWS")
    public class SampleWS implements SampleWSInterface {
    

    org.jboss.ws.api.annotation.WebContext 在 MAVEN 工件中:

    <dependency>
       <groupId>org.jboss.ws</groupId>
       <artifactId>jbossws-api</artifactId>
       <version>1.1.2.Final</version>
    </dependency>
    

    【讨论】:

    • 我认为依赖不正确,库没有@WebContect注解。
    • 非常好的解决方案,适用于 WildFly 12!
    猜你喜欢
    • 2021-05-18
    • 1970-01-01
    • 1970-01-01
    • 2016-01-07
    • 2012-04-20
    • 2017-02-16
    • 2019-01-02
    • 2011-11-02
    • 2021-05-31
    相关资源
    最近更新 更多