Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/70.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
未设置JSF viewParam_Jsf - Fatal编程技术网

未设置JSF viewParam

未设置JSF viewParam,jsf,Jsf,xhtml文件我使用viewParam: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns

xhtml文件我使用viewParam:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui"
    xmlns:f="http://java.sun.com/jsf/core">

<f:metadata>
    <f:viewParam name="actionId" value="#{editActionView.actionId}" required="true" />
</f:metadata>           
<h:body>
当我现在调用我的应用程序时:

http://localhost:8080/aip/editAction.jsf?actionId=37

actionId始终为0。我的错在哪里?

ManagedBean是在调用setter之前构建的。因此,@PostConstruct方法中的System.out.println(…)为long类型的actionId打印默认值,即0。
然后在更新模型值阶段调用setter。您可以通过在setter方法中放置另一个System.out.println(…)来检查这一点,该方法应打印正确的值。

hm。。。我想基于GET参数初始化我的支持bean。然后如何检索该值?下面是一个很好的答案:。总之:您可以使用
(自JSF2.2以来)或
(JSF2.0、2.1)
http://localhost:8080/aip/editAction.jsf?actionId=37