簡體   English   中英

Spring MVC Servlet映射和406 HTTP核心

[英]Spring mvc servlet-mapping and 406 http core

我正在使用Spring mvc 4和glassfish 4,使用ajax調用時遇到一些問題,即使用@ResponseBody將對象作為json返回。 然后,我找到了一個合適的解決方案HTTP Status406。Spring MVC 4.0,jQuery,JSON無法完全在我的項目上運行,我認為這是因為我的servlet映射。

我的servlet映射是:

   <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>*.htm</url-pattern>
    </servlet-mapping>

但我也想像/ *這樣處理請求,以避免406 http代碼出現問題,因此我嘗試了以下方法:

    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>

但是,調度程序還映射了* .jsp並中斷了它。最后,我嘗試了以下操作:

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

但是,然后調度程序將* .js和* .css映射為引導程序,jquery等。

現在我沒有了主意。

最后,我修復了它。 為了解決406 http代碼問題,我從ajax指定了內容類型,並從控制器中刪除了* .htm。

另一方面,我必須修復servlet映射並添加資源標簽,以避免出現更多問題。

現在我的servlet映射是這樣的:

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

然后將此行添加到dispatcher-servlet中:

<bean id="viewResolver"
          class="org.springframework.web.servlet.view.InternalResourceViewResolver"
          p:prefix="/WEB-INF/jsp/"
          p:suffix=".jsp" />

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

暫無
暫無

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

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