Arrays JSF inputSecret无法访问char-typed属性
我想通过ajax提交以下表单。但当我提交它时,它并没有获取/设置char-typed属性的值。但当我将托管bean类型中的password属性更改为String时,它就工作了。为什么呢 表格Arrays JSF inputSecret无法访问char-typed属性,arrays,jsf,passwords,Arrays,Jsf,Passwords,我想通过ajax提交以下表单。但当我提交它时,它并没有获取/设置char-typed属性的值。但当我将托管bean类型中的password属性更改为String时,它就工作了。为什么呢 表格 <h:form> <h:inputText value="#{login.username}" id="username" a:placeholder="Username" /> <br /> &
<h:form>
<h:inputText value="#{login.username}" id="username"
a:placeholder="Username" />
<br />
<h:inputSecret a:placeholder="Password" id="password"
value="#{login.password}" />
<br />
<h:inputText value="#{login.mvc}" />
<h:commandButton value="Submit" >
<f:ajax execute="@form" render="out" />
</h:commandButton>
<h:outputText id="out" />
</h:form>
没有显示和显示控制台日志错误。当数据类型密码为字符串时,控制台显示
getuser
setuser
getpass
setpass
。当数据类型为char时,它会显示getuser
getpass
为什么<代码>字符[]无效吗 请看一下它清楚地提到的这一点
- 属性名称:-值
- 描述:-值属性设置此组件的当前值
- 类型:-字符串
那么,如何将其转换为char[]作为安全的方式呢?@top11为什么您认为字符串不安全
@ManagedBean
public class Login {
private String username;
private char[] password;
private String msg;
private String mvc;
@EJB
private LoginService ls;
public Login() {
}
public String getMvc() {
return mvc;
}
public void setMvc(String mvc) {
this.mvc = mvc;
}
public String getUsername() {
System.out.println("getuser");
return username;
}
public void setUsername(String username) {
System.out.println("setuser");
this.username = username;
}
public char[] getPassword() {
System.out.println("getpass");
return password;
}
public void setPassword(char[] password) {
System.out.println("setpass");
this.password = password;
}
public String getMsg() {
return msg;
}
}