簡體   English   中英

HTML與Spring MVC的集成

[英]Html integration with Spring MVC

我有使用jsp和spring mvc進行的示例poc,並且工作正常,我像這樣配置了DispatcherServlet和InternalResourceViewResolver

<servlet>
        <servlet-name>appServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
</servlet>

    <servlet-mapping>
        <servlet-name>appServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

在我的servlet-context.xml中,我像這樣配置了InternalResourceViewResolver

<beans:bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <beans:property name="prefix" value="/WEB-INF/views/" />
        <beans:property name="suffix" value=".jsp"  />
</beans:bean>

我的要求和回應運作良好。 現在,我嘗試使用html而不是jsp啟動一個新的示例項目,我這樣更改了InternalResourceViewResolver

class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <beans:property name="prefix" value="/WEB-INF/views/" />
            <beans:property name="suffix" value=".html"  />
</beans:bean>

但我得到一個例外

“信息:警告:org.springframework.web.servlet.PageNotFound-在名稱為'appServlet'的DispatcherServlet中找不到帶有URI [/Organization_Management/WEB-INF/views/check.html]的HTTP請求的映射”

我想用html和spring mvc啟動一個新的示例應用程序。 有人可以在這方面建議我。

and the InternalResourceViewResolver will resolve both .jsp as well as .html files. 解決方案1:InternalResourceViewResolver中 ,可以將后綴部分保留為 ,而InternalResourceViewResolver將同時解析.jsp和.html文件。

但是請確保您的控制器中具有返回html視圖的方法和基於后綴返回jsp視圖的方法。 例如,如果WEB-INF / pages中都存在index.html和index.jsp,則可以執行以下操作:

@RequestMapping("/htmlView")
   public String renderHtmlView() {
      return "index.html";
}

@RequestMapping("/jspView")
   public String renderJspView() {
      return "index.jsp";
}

解決方案2 :由於.html文件是靜態的,不需要servlet進行處理,因此使用映射更加有效和簡單。 這需要Spring 3.0.4+。

例如:

<mvc:resources mapping="/static/**" location="/static/" />

它將通過所有以/ static /開頭的請求傳遞到webapp / static /目錄。

因此,將index.html放在webapp / static /中並使用return“ static / index.html”; 從您的方法中,Spring應該找到視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM