【发布时间】:2010-07-15 09:28:39
【问题描述】:
加载登录页面时,输入文本框显示#{ad.userid}。当我删除它并输入 id 和 pwd 并单击提交按钮时,将调用登录方法,但 userid 属性在 bean 中给出了 null 值。怎么会发生这种情况,我该如何解决?
这里是login.jsp:
<%@ page contentType="text/html"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<f:view>
<html>
<h:form>
<h:outputText value="Login"/>
<h:inputText value="#{ad.userid}" id="log" required="true"/>
<h:outputText value="Password" />
<h:inputSecret id="pw" value="#{ad.password}" required="true"/>
<h:commandButton value="submit" action="#{ad.login}"/>
</h:form>
</body>
</html>
</f:view>
这里是bean的action方法。登录之前成功。所有 db 连接都在构造函数中设置。
public String login() {
ResultSet rs;
try {
System.out.println(userid); // this is giving null
String s = "select id from slogin where id='" + userid + "'";
System.out.println(s);
rs = st.executeQuery(s);
if (rs.next()) {
String loginid = rs.getString(1);
if (userid.equals(loginid)) {
id = loginid;
return "studhome";
}
} else {
System.out.println("error");
}
} catch(Exception e) {
}
}
getter 和 setter 方法:
public void setpassword(String pass) {
this.password = pass;
}
public String getpassword() {
return password;
}
public void setuserid(String uid) {
this.userid = uid;
}
public String getuserid() {
return userid;
}
【问题讨论】:
-
编辑时,邮件格式规则在右栏描述...
-
感谢您编辑我的问题。
-
这个问题解决了吗?
标签: jsf