Веб-приложение jboss развертывается, но не найдено - PullRequest
3 голосов
/ 28 сентября 2010

Хорошо, я пытаюсь развернуть 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>

Я играл с этим дляоколо трех часов сейчас и никуда не денусь.Я развернул другие веб-приложения в том же экземпляре без проблем.Я думаю, что это что-то маленькое, но я не вижу этого.

ОБНОВЛЕНИЕ: я закомментировал конфигурацию входа в систему и ограничения безопасности, и я могу получить доступ к определенным сопоставлениям сервлета.В одном из ограничений безопасности я определяю защищенную область как

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, но я хочу, чтобы ограничение безопасности применялось ко всем сервлетам в этом WebAdmin.war.

Ответы [ 4 ]

0 голосов
/ 20 октября 2014

Вы проверяли файл application.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>
0 голосов
/ 29 сентября 2010

Просто мысль ...

Когда вы запускаете свой сервер jboss, вы уверены, что он запускает экземпляр, на котором вы развернули свою войну?Возможно, вы развернули свою войну на неправильном экземпляре сервера.

Я думаю, что экземпляр по умолчанию для запуска в Jboss 404 является стандартным, поэтому убедитесь, что вы развернули свою войну по умолчанию, а не в производстве.Или наоборот, если для запуска по умолчанию используется экземпляр production.

0 голосов
/ 29 сентября 2010
  1. Можете ли вы проверить местоположение вашей войны?
  2. Было бы неплохо увидеть журнал
  3. запущен ли процесс?
  4. Можете ли вы переименовать вашу войну?к чему-то еще и попробуйте еще раз?
0 голосов
/ 28 сентября 2010

Проверьте, запустили ли вы приложение после развертывания.

Я не знаю точно, как это сервер приложений JBoss, но в Weblogic следует «начать обслуживать запросы» после успешного развертывания приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...