我想知道如何在WEB-INF
的某個目錄下直接訪問JSP頁面,並且在/
路徑上運行Spring,而無需爲轉發視圖編寫任何控制器。如何用Spring加載直接訪問JSP頁面?
例如,我有一個項目myapp
結構如下:
src
WebRoot
`-- WEB-INF
|-- public
| `-- example.jsp
|-- views
現在,我想直接前往http://localhost/myapp/public/example
沒有實施任何控制器訪問example.jsp
。
我試過到目前爲止:
添加
<mvc:resources mapping="/public/**" location="/WEB-INF/public/"/>
到我的上下文XML,但它只是將無法正常工作,容器不斷抱怨HTTP 404 - PAGE NOT FOUND /public/example.jsp
。將內部資源視圖解析器添加到我的上下文xml。
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix"> <value>/WEB-INF/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean>
,但我不知道下一步該怎麼做,我也許把很多JSP頁面
/WEB-INF/public
下,所以寫控制器爲他們每個人將是乏味的。
是否有任何規範的方式來做到這一點?請幫忙!
你想要做這樣的事情瀏覽器類型/這重定向example.jsp頁? –
@ T.Jung問題已更新。 –
你甚至不應該嘗試。如果您需要直接訪問JSP,則應將其存儲在WEB-INF之外。 JSP不是一個**靜態**資源。它通過servlet容器編譯成servlet,並且該編譯代碼由servlet容器調用。 –