你好。我在将属性从代码后面绑定(bind)到前端时遇到问题,并且似乎无法找出问题所在。
背后的代码如下(Layout.java)
private String userEmail;
public String getUserEmail()
{
userEmail = getUser() == null ? "Not logged in" : getUser().getName();
return userEmail;
}
public Users getUser()
{
return login.isLoggedIn() ? login.getLoggedUser() : null;
}
这就是我尝试在 .tml 文件(Layout.tml)中显示它的方式:
${userEmail}
例如,如果在 getUserEmail()
函数中我只返回一个简单的字符串,则会显示它。当我这样做时,出现以下错误:
org.apache.tapestry5.ioc.internal.OperationException
Render queue error in Expansion[PropBinding[expansion Index:layout(userEmail)]]: org.apache.tapestry5.ioc.internal.util.TapestryException
谁能告诉我我做错了什么吗?
最诚挚的问候,马吕斯。
最佳答案
并非没有更多的异常(exception)。
此外,请阅读 JavaBeans 属性;您不需要 userEmail 字段来拥有 userEmail 属性,您只需要 getter(对于这种动态计算的只读属性)。
关于java - Apache Tapestry 5 属性绑定(bind) - 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25549080/