我有一個包含Flash橫幅的Spring 2.5應用程序。我沒有Flash組件的源代碼,但它具有硬編碼鏈接到以.html
結尾的某些頁面的鏈接我希望能夠將這些.html頁面重定向到現有的jsp頁面。我如何讓Spring將幾個.html頁面解析爲.jsp頁面?Spring - 將一個URL重寫爲另一個
我的項目是這樣的:
WebContent
|
-sample.jsp
-another.jsp
WEB-INF
|
-myapp-servlet.xml
-web.xml
我想localhost:8080/offers.html
重定向到localhost:8080/sample.jsp
我能做到這一點與Spring?我已經在myapp-servlet.xml中定義了一個SimpleUrlHandlerMapping和UrlFilenameViewController,它必須繼續爲已經存在的頁面提供服務。
在我的web.xml,我有
<servlet-mapping>
<servlet-name>myapp</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
更新
這裏是URL映射器。如果我添加一個控制器,如何返回WebContent目錄中的jsp視圖,因爲視圖解析器包含/ WEB-INF/jsp目錄。
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/page1.htm">page1Controller</prop>
<prop key="/page2.htm">page2Controller</prop>
</props>
</property>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
UrlFilenameViewController會只會解析URL的模式到一個文件名,你不能網址「映射」到不同的文件。 如果您想將/offers.html映射到sample.jsp視圖,您需要一個控制器來處理/offers.html模式並將sample.jsp作爲視圖返回。 你能從myapp-servlet.xml發佈你的SimpleUrlHandlerMapping嗎? – 2010-02-25 03:33:48
@Rob Beardow - 用SimpleUrlHandlerMapping和InternalResourceViewResolver更新 – George 2010-02-25 04:39:50