Как исправить ошибку Resource Not Found в OC4J? - PullRequest
1 голос
/ 06 апреля 2009

Я пытаюсь развернуть веб-приложение на OC4J, и хотя я следовал инструкциям, приведенным в письме, и процесс развертывания идет без проблем, я получаю ошибку 500 (ниже). Я новичок в OC4J, поэтому я был бы признателен за некоторые советы о том, что нужно посмотреть и что нужно сделать (XML / settings / etc), чтобы это исправить. Вот фактическая ошибка, на всякий случай:

500 Internal Server Error

java.lang.IllegalArgumentException: Resource /login.do not found
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.EvermindPageContext.forward(EvermindPageContext.java:316)
    at _index._jspService(_index.java:46)
    [SRC:/index.jsp:14]
    at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.1.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)

1 Ответ

0 голосов
/ 07 июня 2009

Похоже, ваш index.jsp выполняет перенаправление на ваш login.do Struts Action; но ваше приложение не настроено для перенаправления URL-адресов .do в Struts. Настроен ли сервлет действий Struts так, чтобы он отвечал за все сопоставления URL-адресов * .do? Пожалуйста, найдите в файле конфигурации web.xml (WEB-INF \ web.xml) запись, подобную этой:

<servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>
        org.apache.struts.action.ActionServlet
    </servlet-class>
    <init-param>
        <param-name>config</param-name>
        <param-value>
         /WEB-INF/struts-config.xml
        </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

и отображение сервлета, например:

<servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>/*.do</url-pattern>
</servlet-mapping>
...