SpringWebFlow视图解析器配置:JSP文件的子文件夹
使用Spring webflow和serlvet配置,我为JSP文件提供了以下内容:SpringWebFlow视图解析器配置:JSP文件的子文件夹,spring,jsp,spring-webflow-2,Spring,Jsp,Spring Webflow 2,使用Spring webflow和serlvet配置,我为JSP文件提供了以下内容: <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
以下是XML文件的流程:
<webflow:flow-registry id="flowRegistry"
flow-builder-services="flowBuilderServices">
<webflow:flow-location-pattern value="/WEB-INF/flows/**/*-flow.xml" />
</webflow:flow-registry>
由于/**/
的原因,任何流XML文件(可能在子目录中,也可能不在子目录中)都会自动解析,因此我不需要在流定义中指定子文件夹。
对于JSP,***
似乎不起作用
有没有办法做到这一点?我喜欢使用子目录,因为它使它看起来更干净,而不必在PackageExplorer中滚动浏览一堆JSP文件。另一方面,如果每次都必须指定子目录,则很可能无法检测到输入错误我认为没有办法在“prefix”或“suffix”属性中指定ant样式的通配符 正如您所说,您可以在流定义中指定路径,如下所示
<view-state id="showSearchCriteria" view="customer/search">
<transition on="lookupCriteriaEntered" to="searchCustomer" />
</view-state>
虽然不是一个优雅的解决方案,但您可以在jsp文件夹的多个子文件夹中尝试jsp,使用tile作为:
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/>
</bean>
<bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/tilesDef.xml</value>
</list>
</property>
</bean>
或作为:
new ModelAndView("page2");
但是这样做的缺点是,由于定义名称是唯一的,所以不能在不同的文件夹中有两个同名的JSP
new ModelAndView("page1");
new ModelAndView("page2");