【问题标题】:include-prelude not being picked from web.xml using Spring 4使用 Spring 4 未从 web.xml 中选择 include-prelude
【发布时间】:2015-04-12 02:07:06
【问题描述】:

您好,我正在使用 spring 4 MVC 组合一个相当基本的应用程序。我使用的是配置 java 类而不是 xml 配置。我对此很陌生,但一切都在慢慢地向前发展。我遇到了一个问题,因为我想在所有 jsp 页面视图中包含一个标题。

所以我已将 include-prelude 包含到我的 web.xml 文件中

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                         http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
     version="3.1">

<display-name>Web Application</display-name>
<jsp-config>
    <jsp-property-group>
        <url-pattern>*.jsp</url-pattern>
        <include-prelude>/WEB-INF/views/include/header.jspf</include-prelude>        </jsp-property-group>
</jsp-config>
</web-app>

如果我将一个虚拟 jsp 文件添加到 webapp 文件夹(我使用的是 maven 和 eclipse)并直接访问它,这将起作用。但是它不适用于通过 spring MVC 访问的 JSP。它在我继承的一个类似应用程序中工作,该应用程序在 xml 文件而不是 java 类中具有 spring bootstrap 配置。我不会有数百万页,所以我想我可以使用 jsp:include 但是...

谁能告诉我应该如何获取 header.jspf ?理想情况下,我想将配置保留在 java 类中,但也许我必须使用 xml bootstrapping ?

另外作为一个补充问题,这并不是我真正要问的问题,所以请忽略它是否违反所有规则(!)当我在谷歌上搜索了一下时,我一直在阅读 JSP 不再适用意见。我正在编写一个相当基本的 Intranet 表单应用程序(我最近从 microsoft 技术切换,如果您不喜欢该术语,请道歉!)。你认为我应该使用 JSP 和 jspf 以外的东西吗

谢谢

【问题讨论】:

    标签: java spring jsp spring-mvc


    【解决方案1】:

    如果您想知道 OP 问题的答案是什么,答案就是简单地将其添加到您的 web.xml tag(如果您使用的是 Tomcat 而不是 GlassFish):

    xmlns:my="http://jakarta.apache.org/tomcat/jsp2-example-taglib"
    

    所以你的 web.xml 开头应该是这样的:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app
            version="3.0"
            xmlns="http://java.sun.com/xml/ns/javaee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
            xmlns:my="http://jakarta.apache.org/tomcat/jsp2-example-taglib">
    

    我希望这可以帮助你;)

    【讨论】:

    • 非常感谢。我完全错过了!我已经对其进行了测试并且它有效(您可能知道它会,但只是为了确认以防其他人也错过它!)
    • 是的,小细节可以产生巨大的影响! Tomcat 的启动和运行稍微复杂一些!干杯!
    【解决方案2】:

    你可以使用jsp。没有问题,你唯一需要改变的就是不要像.jsp使用url映射.abc那样给url-mapping,这里你可以使用abc, xyz,ani,spring,do 等等,而不是 jsp。所以它会正常工作。 如果你在 url 映射中使用 *.jsp 并使用 jsp 作为视图,它每次都会给你 404。

    【讨论】:

      猜你喜欢
      • 2010-12-19
      • 2013-07-16
      • 2017-07-16
      • 2016-10-11
      • 2019-07-14
      • 2016-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多