如何在Tapestry Framework中为passwordfield设置init数据?

时间:2017-07-19 09:45:59

标签: java web tapestry

在我的登录页面上,我创建一个复选框以将数据保存到cookie。选中该复选框后,数据将加载到下一个打开的登录页面上的用户名字段,密码字段。现在,cookie数据加载在用户名字段上,但基于Tapestry page

  

PasswordField是TextField的一个版本,但是作为元素呈现。此外,输出值为   PasswordField始终为空白。

所以我无法为passwordfield设置init数据。我不允许使用jquery或javascript只是在服务器端将值设置为passwordfield。有人可以提出解决方案吗?

Login.tml

<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_3.xsd"
    xmlns:p="tapestry:parameter">
<body>
    <t:passwordfield t:id="password" size="30" />           
</body>
</html>

Login.java

@Property
private String password;
@InjectComponent("password")
private PasswordField passwordField;    

void setupRender() {
password = cookieTapestry.readCookieValue("userPassword") != null ?cookieTapestry.readCookieValue("userPassword") : null;
}

1 个答案:

答案 0 :(得分:0)

PasswordField就像一个更有限的TextField。尝试&lt; t:textfield type =“password”...&gt;你会发现你对这种行为有了更多的控制权。