我的< iframe>
标记带有 scr =“name.jsf”
。现在我想找到这个源代码放在哪里但是查看源我只看到只有* .jsp文件。这是我开始加入的遗留项目。没有JavaServer Face的经验。
任何人都可以帮助我找到源或至少如何转换file.jsp to file.jsf?


欢迎任何想法或文件。


谢谢。
&# XA;答案 0 :(得分:1)
您必须检查Web项目的web.xml文件中的以下标记
<!-- JSF mapping -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Map these files with JSF -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
您可以从<servlet-mapping />
标签中检查负责调用JSF生命周期或JSF提供的默认servlet,您可能已经扩展了JSF servlet并创建了自己的servlet。
所以没有人将JSP转换为JSF URL或者反之亦然。这一切都是由部署描述符或web.xml
完成的。
在我的情况下,我们在web.xml中有以下条目
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
但是所有的网页都有*.xhtml
扩展名(例如a.xhtml,abc.xhtml,xyz.xhtml),所以如果你试试http://localhost:8080/abc.xhtml
它会无效,但是当你试用{时{1}} OR http://localhost:8080/abc.jsf
它会起作用,因为http://localhost:8080/faces/abc.xhtml
已定义<servlet-mapping />
。当该模式匹配时,只有JSF servlet或您的设计servlet将触发。