Java jboss web应用程序正在部署但未找到

Java jboss web应用程序正在部署但未找到,java,web-applications,jboss,Java,Web Applications,Jboss,好的,尝试将War部署到JBoss 4.0.4.CR2(不,我无法升级),在启动过程中没有异常,但是每当我尝试访问应用程序时,我都会得到404。我检查了所有日志,没有发现任何异常 下面是我的web.xml文件: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001

好的,尝试将War部署到JBoss 4.0.4.CR2(不,我无法升级),在启动过程中没有异常,但是每当我尝试访问应用程序时,我都会得到404。我检查了所有日志,没有发现任何异常

下面是我的web.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
    <servlet-name>GroupMaintenance</servlet-name>
    <servlet-class>com.example.servlet.GroupMaintenance</servlet-class>
</servlet>

<servlet>
    <servlet-name>ApplicationMaintenance</servlet-name>
    <servlet-class>com.example.servlet.ApplicationMaintenance</servlet-class>
</servlet>

<servlet>
    <servlet-name>EmailMaintenance</servlet-name>
    <servlet-class>com.example.servlet.EmailMaintenance</servlet-class>
</servlet>

<servlet>
    <servlet-name>FraudDefinitions</servlet-name>
    <servlet-class>com.example.servlet.FraudDefinitions</servlet-class>
</servlet>

<servlet>
    <servlet-name>UrlMaintenance</servlet-name>
    <servlet-class>com.example.servlet.UrlMaintenance</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>EmailMaintenance</servlet-name>
    <url-pattern>/email_maintenance</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>FraudDefinitions</servlet-name>
    <url-pattern>/fraud_definitions</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>UrlMaintenance</servlet-name>
    <url-pattern>/url_maintenance</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>GroupMaintenance</servlet-name>
    <url-pattern>/group_maintenance</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>ApplicationMaintenance</servlet-name>
    <url-pattern>/application_maintenance</url-pattern>
</servlet-mapping>

<session-config>
    <session-timeout>
        30
    </session-timeout>
</session-config>

<welcome-file-list>
    <welcome-file>/group_maintenance</welcome-file>
</welcome-file-list>

<login-config>
    <auth-method>FORM</auth-method>
    <realm-name>Example Form-Based Authentication Area</realm-name>
    <form-login-config>
        <form-login-page>/jsp/login.jsp</form-login-page>
        <form-error-page>/jsp/error.jsp</form-error-page>
    </form-login-config>
</login-config>

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Protected Area</web-resource-name>
        <url-pattern>/jsp/*</url-pattern>            
        <http-method>DELETE</http-method>
        <http-method>GET</http-method>
        <http-method>POST</http-method>
        <http-method>PUT</http-method>
    </web-resource-collection>
    <auth-constraint>
        <role-name>access_write</role-name>
    </auth-constraint>  
</security-constraint>    
<security-constraint>
    <web-resource-collection>
        <web-resource-name>Protected Area</web-resource-name>
        <url-pattern>/WebAdmin</url-pattern>            
        <http-method>DELETE</http-method>
        <http-method>GET</http-method>
        <http-method>POST</http-method>
        <http-method>PUT</http-method>
    </web-resource-collection>
    <auth-constraint>
        <role-name>access_write</role-name>
    </auth-constraint>  
</security-constraint> 

<security-role>
    <role-name>access_write</role-name>
</security-role> 

<resource-ref>
    <description>DB Connection</description>
    <res-ref-name>ownerDS</res-ref-name>                      
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>
<resource-ref>
    <description>DB Connection</description>
    <res-ref-name>ownerDS</res-ref-name>                      
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

组维护
com.example.servlet.GroupMaintenance
应用维护
com.example.servlet.ApplicationMaintenance
电子邮件维护
com.example.servlet.EmailMaintenance
欺诈定义
com.example.servlet.FraudDefinitions
URL维护
com.example.servlet.url维护
电子邮件维护
/电子邮件维护
欺诈定义
/欺诈定义
URL维护
/url\u维护
组维护
/组维护
应用维护
/应用程序维护
30
/组维护
形式
基于表单的身份验证区域示例
/jsp/login.jsp
/jsp/error.jsp
保护区
/jsp/*
删除
得到
邮递
放
存取/写入
保护区
/网站管理员
删除
得到
邮递
放
存取/写入
存取/写入
数据库连接
所有者
javax.sql.DataSource
容器
数据库连接
所有者
javax.sql.DataSource
容器

我已经玩了大约三个小时了,现在一事无成。我已经将其他web应用程序部署到同一个实例上,没有任何问题。我想是个小东西,但我没看到

更新:我注释掉了登录配置和安全约束,并且可以访问已定义的servlet映射。在其中一个安全约束中,我将受保护区域定义为

security-constraint>
<web-resource-collection>
    <web-resource-name>Protected Area</web-resource-name>
    <url-pattern>/WebAdmin</url-pattern>            
    <http-method>DELETE</http-method>
    <http-method>GET</http-method>
    <http-method>POST</http-method>
    <http-method>PUT</http-method>
</web-resource-collection>
<auth-constraint>
    <role-name>write</role-name>
</auth-constraint>  
安全约束>
保护区
/网站管理员
删除
得到
邮递
放
写


我猜这里有些东西配置不正确。我没有映射到WebAdmin的servlet,但希望安全约束应用于这个WebAdmin.war中的所有servlet

检查您是否在部署后启动了应用程序

我不知道JBoss应用服务器到底是怎么回事,但在Weblogic中,成功部署应用程序后应该“开始服务请求”

只是一个想法

当您启动jboss服务器时,您确定它正在启动您部署war的实例吗?您可能已将war部署到错误的服务器实例

我认为JBoss404中启动的默认实例是default,因此请确保您将war部署为default,而不是production。 反之亦然,如果要启动的默认实例是生产实例

  • 你能查一下你的战争地点吗
  • 如果能看到日志就好了
  • 进程正在运行吗
  • 你能把你的战争改名为其他东西然后再试一次吗

  • 您是否检查了
    应用程序.xml
    文件
    application.xml
    应该同时引用jar和war模块。下面是我所说的一个例子:

    <application>
        <display-name>admin-ear</display-name>
        <module>
            <ejb>admin-core.jar</ejb>
        </module>
        <module>
            <web>
                <web-uri>admin-web.war</web-uri>
                <context-root>/admin</context-root>
            </web>
        </module>
    </application>
    
    
    管理耳
    admin-core.jar
    admin-web.war
    /管理员
    
    信息不足。战争档案的名字是什么?您试图如何访问它?请仔细检查war是否绑定到您使用的确切url。war文件的名称为WebAdmin.war。我试图通过localhost:8080/webadmin访问它,还应该提到,这在Weblogic中工作得很好。如果这很重要,你有jboss-web.xml吗?你能发送“jboss web.xml”文件的内容吗?是的,根据jmx控制台,它是启动的。你说URL是localhost:8080/WebAdmin,索引文件重定向到哪里?您描述的servlet映射中的重定向目的地是吗?欢迎文件列表设置为/group\u maintenance,这是URL模式之一。