我有一个旧的JSF 1应用程序,该应用程序通过spring结合了JSF和JSP。我们曾经将所有.htm映射到spring DispatcherServlet来处理静态jsp文件。如果页面需要JSF,我们将在jsp中包含jspx文件,如下所示:
<jsp:include page="/jsp/admin.jspx" />
hack,但效果很好。现在,我们将切换到JSF2,并且不再起作用。当我需要JSF页面时,我们将直接在URL上调用该页面。如果我们将.jsf扩展名映射到web.xml中的faces servlet,并将.htm扩展名映射到spring dispatcherservlet,则效果很好:
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
工作正常,但是现在所有指向jsfpage.htm的客户书签链接将无法正常工作,因为他们现在需要转到jsfpage.jsf。
是否可以对两种类型的页面都使用.htm,但是有wildfly 10.1,spring或某些东西知道如果我有.xhtml页面,请使用JSF,如果我有.jsp页面,则将其提供给弹簧?还是Spring可以处理所有内容并将我们发送到JSF视图?
谢谢!