Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我不能用jsf获取url参数?_Java_Jsf - Fatal编程技术网

Java 为什么我不能用jsf获取url参数?

Java 为什么我不能用jsf获取url参数?,java,jsf,Java,Jsf,我使用JSF1.x。我不明白我的代码哪里错了 faces config.xml <managed-bean> <managed-bean-name>mainNavigationParametersHandlerBean</managed-bean-name> <managed-bean-class>com.test.MainNavigationParametersHandlerBean</managed-bean-class>

我使用JSF1.x。我不明白我的代码哪里错了

faces config.xml

<managed-bean>
  <managed-bean-name>mainNavigationParametersHandlerBean</managed-bean-name>
  <managed-bean-class>com.test.MainNavigationParametersHandlerBean</managed-bean-class>
  <managed-bean-scope>request</managed-bean-scope>
  <managed-property>
   <property-name>userType</property-name>
   <property-class>java.lang.String</property-class>
   <value>#{param.userType}</value>
  </managed-property>
 </managed-bean>
和我的jsp页面(实际上它使用jsf文件中的内容):

但是,在我的xhtml页面中,
{mainNavigationParametersHandlerBean.userType}
似乎是空的

你明白为什么吗


谢谢。

右键单击浏览器中打开的页面,然后选择“查看源”。您是否看到生成的JSF标记的HTML输出,或者HTML中未解析的JSF标记?我敢打赌是后者

您的JSP方法有点奇怪。我只是将
userapp main.jsp
页面的内容放在
index userapp.jsp
页面中,并通过一个与
FacesServlet
中定义的
web.xml
的URL模式相匹配的URL调用该页面。例如,如果是
*.jsf
,则需要通过打开页面


如果有空间,我也会考虑升级。JSP 1.2非常古老(已经有10年历史了),它现在是2.2,它的继承者Facelets已经在Java EE 6中取代了它的位置,Java EE 6是在1.5年前发布的。

您的faces servlet映射到了什么模式?您是否检查了托管bean本身是否已初始化(例如,通过在其构造函数中放入println)?
public class MainNavigationParametersHandlerBean {
    // url parameters
    private String userType = "";

    public String getUserType() {
        return userType;
    }

    public void setUserType(String userType) {
        this.userType = userType;
    }
}
<jsp:root
    xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:c="http://java.sun.com/jstl/core"
    version="1.2">
    <head>
    </head>
    <body>   
        <jsp:forward page="/WEB-INF/jsf/userapp-main.jsf" />        
    </body>
</jsp:root>
http://localhost:8080/index-userapp.jsp?userType=grav