Cách đơn giản để giải quyết đường dẫn đến tệp JSP không nằm trong thư mục gốc JSP của ứng dụng web là gì bằng cách sử dụng khung nhìn của SpringMVCsResolvers? Ví dụ, giả sử chúng ta có cấu trúc ứng dụng web sau đây:Spring MVC: Cách giải quyết đường dẫn đến thư mục con của thư mục gốc 'JSP' trong ứng dụng web
web-app
|-WEB-INF
|-jsp
|-secure
|-admin.jsp
|-admin2.jsp
index.jsp
login.jsp
Tôi muốn sử dụng một số thành phần out-of-the-box để giải quyết các tập tin JSP trong thư mục gốc jsp và an toàn thư mục con. Tôi có một tập tin *-servlet.xml
định nghĩa:
một out-of-the-box, InternalResourceViewResolver
:
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
một ánh xạ xử lý:
<bean id="handlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/index.htm">urlFilenameViewController</prop>
<prop key="/login.htm">urlFilenameViewController</prop>
<prop key="/secure/**">urlFilenameViewController</prop>
</props>
</property>
</bean>
một out-of-the-box UrlFilenameViewController
bộ điều khiển:
<bean id="urlFilenameViewController" class="org.springframework.web.servlet.mvc.UrlFilenameViewController">
</bean>
Vấn đề tôi có là yêu cầu Không thể giải quyết JSP trong thư mục an toàn an toàn vì chỉ jspViewResolver
chỉ có tiền tố được xác định là /jsp/
chứ không phải /jsp/secure/
.
Có cách nào để xử lý các thư mục con như thế này không? Tôi muốn giữ cấu trúc này vì tôi cũng đang cố gắng sử dụng Bảo mật mùa xuân và có tất cả các trang bảo mật trong thư mục con là một cách hay để thực hiện việc này.
Có lẽ một cách đơn giản để đạt được điều này nhưng tôi mới làm quen với Spring và Spring MVC framework nên mọi con trỏ sẽ được đánh giá cao.
Lưu ý không liên quan, nhưng bạn không cần phải chỉ định 'JstlView' làm' viewClass' nữa, Spring sẽ tìm ra theo mặc định. – skaffman