相关疑难解决方法(0)

识别并解决javax.el.PropertyNotFoundException:Target Unreachable

当尝试在EL中引用托管bean时#{bean.entity.property},有时会javax.el.PropertyNotFoundException: Target Unreachable抛出异常,通常是在设置bean属性时,或者要调用bean操作时.

似乎有五种不同的消息:

  1. 目标无法访问,标识符'bean'已解析为null
  2. 目标无法访问,'entity'返回null
  3. 目标无法访问,'null'返回null
  4. 目标无法访问,''0'返回null
  5. 目标无法访问,'BracketSuffix'返回null

这些都意味着什么?它们是如何引起的,它们应该如何解决?

jsf el cdi managed-bean propertynotfoundexception

117
推荐指数
2
解决办法
11万
查看次数

javax.el.PropertyNotFoundException:在com.example.Bean类型上找不到属性'foo'

我有结果

Query query = session.createQuery("From Pool as p left join fetch p.poolQuestion as s");
Run Code Online (Sandbox Code Playgroud)

查询,我想在JSP上显示它.

我有循环:

<c:forEach items="${pools}" var="pool"> 

    <p>${pool.name}</p>

</c:forEach>
Run Code Online (Sandbox Code Playgroud)

我想显示poolQ​​uestion表(连接表)的结果.我想要显示的值是"回答".

我该怎么做?

<c:forEach items="${pools}" var="pool"> 
    <p>${pool.answer}</p>
    <p>${pool.name}</p>             
</c:forEach>
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用.

错误是:

  org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/views/home.jsp at line 21

18:     <c:forEach items="${pools}" var="pool"> 
19:             
20:             <p>${pool.name}</p>
21:             <c:out value="${pool.poolQuestion.answer}"/>
22:             
23:     </c:forEach>
24: 

    SEVERE: Servlet.service() for servlet appServlet threw exception
javax.el.PropertyNotFoundException: Property 'answer' not found on type com.pool.app.domain.Pool
    at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:214)
    at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:191)
    at javax.el.BeanELResolver.property(BeanELResolver.java:300)
    at javax.el.BeanELResolver.getValue(BeanELResolver.java:81)
    at …
Run Code Online (Sandbox Code Playgroud)

jsp jstl el javabeans propertynotfoundexception

25
推荐指数
2
解决办法
11万
查看次数

Java表达式语言如何解析布尔属性?(在JSF 1.2中)

所以我们都知道#{someBean.value}会尝试获取someBean被调用的某些属性的内容value.它会寻找getValue().但是,如果这个属性是boolean什么?它会寻找isValue().它不会寻找的是hasValue().

这让我思考,究竟是做什么的?

Java EE 5教程章节 - 统一表达式语言是指PageContext.FindAttribute().PageContext送你去JSPContext.他们都没有真正解释他们遵循的规则来确定他们正在寻找的方法的名称.

找到说方法名称必须以get开头的文档也相当容易.但是,我知道这很isValue()有效.

任何人都可以指向我写下来的文档.我不是在寻找我正在寻找参考的教程或示例.

jsf jsp boolean el

13
推荐指数
2
解决办法
9567
查看次数