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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.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
为什么${bean.property}会在JSP中自动创建bean?_Jsp_Jsf_El_Managed Bean - Fatal编程技术网

为什么${bean.property}会在JSP中自动创建bean?

为什么${bean.property}会在JSP中自动创建bean?,jsp,jsf,el,managed-bean,Jsp,Jsf,El,Managed Bean,我知道JSP已经被弃用了 ,提到 在JSP中,${}不会在托管bean不在时自动创建它 范围尚未确定。因此,只有当您能够保证{}在 同一个托管bean以前在 组件树,并查看构建时间与查看渲染时间 生命周期考虑在内 为了验证这是否属实,我提出了以下建议: 这样一个简单的JSP页面 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <html> <head&g

我知道JSP已经被弃用了

,提到

在JSP中,${}不会在托管bean不在时自动创建它 范围尚未确定。因此,只有当您能够保证{}在 同一个托管bean以前在 组件树,并查看构建时间与查看渲染时间 生命周期考虑在内

为了验证这是否属实,我提出了以下建议:

这样一个简单的JSP页面

    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <html>
        <head>
        </head>
        <body>

            ${myPlayersBean.playerName}
            Here
        </body>
    </html>
点击
http://localhost:8080/Leonard/faces/create.jsp

Rafael Here
请建议?

此声明

在JSP中,${}在托管bean不在作用域内时不会自动创建它

仅当您使用JSF1.1或更高版本,或当您使用JSP2.0或更高版本时,才适用。自从JSF1.2和JSP2.1以来,JSFEL一直与JSPEL在一起,这就是它开始工作的原因(通过)


尽管如此,不建议使用
${…}
访问JSF托管bean。它是不可写的,而
{…}
是可写的,因此您确实需要在输入组件中使用
{…}
。在同一个JSF页面中混合使用
${…}
{…}
可能会让未来的代码读者/维护者感到困惑。

哪个JSF impl/版本?与过去相比,行为可能有所改变。@BalusC:Mojarra 2.0。3@BalusC:请据此进行编辑;哪个容器impl/version?您启用了CDI吗?我只会编辑一次,我知道,并可以解释的原因。我可以保证,这是永远不会起作用的。至少,不是在JavaEE5时代。@BalusC:我使用的是Tomcat7.0.68。没有CDI。
Rafael Here