Tôi có một ứng dụng Spring 2.5 có chứa biểu ngữ Flash. Tôi không có nguồn cho thành phần Flash nhưng có liên kết được mã hóa cứng đến các trang nhất định kết thúc bằng .html
Tôi muốn có thể chuyển hướng các trang .html đó đến các trang jsp hiện có. Làm cách nào để Spring có thể giải quyết một vài trang .html thành các trang .jsp?Mùa xuân - Viết lại một URL cho một URL khác
Dự án của tôi trông giống như:
WebContent
|
-sample.jsp
-another.jsp
WEB-INF
|
-myapp-servlet.xml
-web.xml
Tôi muốn localhost:8080/offers.html
để chuyển hướng đến localhost:8080/sample.jsp
Tôi có thể làm điều này với mùa xuân? Tôi đã có một SimpleUrlHandlerMapping và UrlFilenameViewController được định nghĩa trong tệp myapp-servlet.xml mà phải tiếp tục phục vụ các trang mà nó đã có.
Trong web.xml của tôi, tôi có
<servlet-mapping>
<servlet-name>myapp</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
Cập nhật
Đây là mapper URL. Nếu tôi thêm một bộ điều khiển, làm thế nào để tôi trả về khung nhìn jsp trong thư mục WebContent khi trình phân giải khung nhìn bao gồm thư mục/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 sẽ chỉ phân giải mẫu URL thành tên tệp, bạn không thể "ánh xạ" url tới một tệp khác. Nếu bạn muốn ánh xạ /offers.html vào một khung nhìn sample.jsp, bạn sẽ cần một trình điều khiển xử lý mẫu /offers.html và trả về sample.jsp làm khung nhìn. Bạn có thể đăng SimpleUrlHandlerMapping từ myapp-servlet.xml không? –
@Rob Beardow - Cập nhật với SimpleUrlHandlerMapping và InternalResourceViewResolver – George