【问题标题】:servlet mapping is shown as the project name on the URL. do i need ibm-web-bnd.xmi?servlet 映射在 URL 上显示为项目名称。我需要 ibm-web-bnd.xmi 吗?
【发布时间】:2012-05-19 17:41:49
【问题描述】:

我在我的 Servlet 类中创建了一个 servlet 映射作为 /reskilling。当我运行应用程序时,url 包含项目名称。这是一个 WebSphere Web 应用程序,它是我的 EAR 项目的一部分。我需要 ibm-web-bnd.xmi 来解决这个问题吗?

这是我的 web.xml

<display-name>HibernateReskillingWeb</display-name>
<servlet>
    <description>Paid Up Plan List</description>
    <display-name>PaidUpPlanServlet</display-name>
    <servlet-name>PaidUpPlanServlet</servlet-name>
    <servlet-class>za.co.test.PaidUpPlanServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>PaidUpPlanServlet</servlet-name>
    <url-pattern>/reskilling</url-pattern>
</servlet-mapping>

<welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
</welcome-file-list>

错误信息如下图...

    HTTP Error Code:   404


Error Message:JSPG0036E: Failed to find resource /HibernateReskillingWeb/views/PaidUpPlan.jsp

Root Cause:java.io.FileNotFoundException: JSPG0036E: Failed to find resource /HibernateReskillingWeb/views/PaidUpPlan.jsp   at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.findWrapper(AbstractJSPExtensionProcessor.java:395)...

【问题讨论】:

    标签: websphere


    【解决方案1】:

    此 Web 应用程序的上下文根是什么?从错误消息来看,它是 HibernateReskillingWeb

    如果您尚未对 Context Root 进行任何操作,则默认值为 Dynamic Web 项目的名称。

    您可以在 application.xml 中看到此值,并且可以将其更改为您想要的任何值。

    是否有一个名为views 的目录来存储您的JSP?这就是 Container 正在寻找您的 JSP 的地方。

    当您尝试访问 JSP 时,servlet 映射(您已显示)在这里没有任何作用。

    HTH

    【讨论】:

    • 错误是我在服务器中运行 .jsp 文件的结果,而不是 servlet。是的,HibernateReskillingWeb 是上下文根,并且 servlet 映射附加到此。
    猜你喜欢
    • 2012-06-28
    • 2016-07-05
    • 1970-01-01
    • 1970-01-01
    • 2012-05-09
    • 1970-01-01
    • 2017-09-14
    • 1970-01-01
    • 2011-06-05
    相关资源
    最近更新 更多