我的问题类似于: JSF tags not rendered,JSf tags not being rendered以及JSF tags not being rendered as HTML没有任何建议可以帮助我。
基本上问题是,无论是否通过欢迎页面,都不会呈现页面。 IE尝试下载文件和chrome基本上只是跳过所有的jsf标签。很明显,它不是由框架翻译,但我不明白为什么。
后面的故事是我做了一个将系统从jsf 1.2转换为jsf2的试验。飞行员成功了,我设法让它在试点部门工作。但是,当我试图实现同样的事情时,我无法让它发挥作用。
通常的问题似乎是(相应经验丰富的回答者BalusC):
页面URL与FacesServlet的url-pattern不匹配,因此没有机会解析标签。 或者:标记中缺少JSF组件的xmlns声明,因此它被视为明文。
通常的修正似乎是: 在html声明中包含xmlns(我在web.xml和.xhtml文件中都有这个) 在web.xml中包含或修改Faces Servlet Mapping。然而,我可以找到我的错。我也尝试将/ faces / *切换为* .xhtml。我认为在web.xml中相关的部分包含在下面(整个文件很大,这是一个很大的系统):
web.xml的一部分:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_5.xsd"
version="2.5">
<context-param>
<description>
Tell the runtime where we are in the project development
lifecycle.
</description>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<context-param>
<param-name>facelets.DEVELOPMENT</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.expressionFactory</param-name>
<param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
<url-pattern>*.xhtml</url-pattern>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xhtml</param-value>
</context-param>
<welcome-file-list id="default">
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
</welcome-file-list>
我知道欢迎文件是一个html文件,但这在飞行员中起作用。该文件使用
<body bgcolor="#FFFFFF" onload="window.location='portal/login/login.jsf'">
</body>
让事情顺利进行。如果我手动将地址输入到包含很少和简单代码的随机测试页面中,问题仍然会发生,因此问题与欢迎页面无关。
很乐意协助任何其他信息,我真的陷入困境。谢谢你的阅读。
答案 0 :(得分:0)
通过编辑faces-config解决以包含xmlns:xsi。