如何删除预编译的jsps并只使用jsp来提供文件

时间:2018-02-17 21:16:31

标签: jsp precompiled

我有一个遗留的Struts 2应用程序,它被配置为Eclipse中的动态Web应用程序,它预编译JSP并将它们放在WEB-INF/classes/org下。

它们作为servlet映射到web.xml

我尝试删除web.xml中servlet的映射,所以我通常只使用JSP,但是当我尝试访问以下URL时:

  • http://localhost:8080/jsp/index.jsp
  • http://localhost:8080/index.jsp

我收到此错误:

  

原始服务器未找到目标资源的当前表示,或者不愿意透露该目标资源是否存在。

<servlet>
        <servlet-name>org.apache.jsp.index_jsp</servlet-name>
        <servlet-class>org.apache.jsp.index_jsp</servlet-class>
</servlet>

struts.xml映射下面看起来正确的JSP:

<action name="index" class="com.acr.cs.action.ClassforGreat" method="index">
        <result>/jsp/index.jsp</result>
</action>

我的项目结构

WebContent
-images
-jsp
-WEB-INF

如何让我只使用jsps并删除预编译的?

1 个答案:

答案 0 :(得分:0)

只需在WEB-INF下使用jsps并创建结果配置。

您不必直接从浏览器访问jsps,因为它们不是资源,并且在大多数情况下无法在没有关联过滤器的情况下运行。

它们被用作模板,用于生成在执行后从动作返回的HTML作为资源。

相关问题