忘记密码   免费注册 查看新帖 | 论坛精华区
ChinaUnix.net
  平台论坛 博客 微博 读书 人才 精华 文库 自测 | 频道操作系统 开发 数据库 存储 服务器 网络 IT新闻 Linux 下载 Power用户组
最近访问板块 发新帖
查看: 2211 | 回复: 23

为什么登录的时候,用户名丢失了呢? [复制链接]
更多

CU黑社会二当家的

Rank: 3Rank: 3

帖子
45683
主题
1900
精华
9
可用积分
2814
专家积分
1361
在线时间
1103 小时
注册时间
2004-12-30
最后登录
2012-01-08
论坛徽章:
0
发表于 2009-07-01 13:09:49 |显示全部楼层
一个登录页面,登录后一直提示用户名或密码无效。
通过跟踪发现,getusername()返回值是空的,而getpassword()却能返回输入的密码,这是怎么回事呢?
而且在返回bean时,username就没有了。谢谢
人一出生就是为了死亡,所以我们追求过程,不重视结果。
FLW说:你是希望用C语言,不是想学C语言。
小虾米

Rank: 5Rank: 5

帖子
21927
主题
1730
精华
0
可用积分
7497
专家积分
268
在线时间
10958 小时
注册时间
2003-03-28
最后登录
2012-02-09
论坛徽章:
0
发表于 2009-07-01 14:28:58 |显示全部楼层
代码贴上来
先给个提示 注意控件名称 和bean field大小写

[ 本帖最后由 tong0245 于 2009-7-1 14:30 编辑 ]
6800分了
CU黑社会二当家的

Rank: 3Rank: 3

帖子
45683
主题
1900
精华
9
可用积分
2814
专家积分
1361
在线时间
1103 小时
注册时间
2004-12-30
最后登录
2012-01-08
论坛徽章:
0
发表于 2009-07-01 14:47:28 |显示全部楼层

回复 #2 tong0245 的帖子

可以贴,但我不知道贴哪段。
在loginBean中就没有取到用户名的数据
人一出生就是为了死亡,所以我们追求过程,不重视结果。
FLW说:你是希望用C语言,不是想学C语言。
小虾米

Rank: 5Rank: 5

帖子
21927
主题
1730
精华
0
可用积分
7497
专家积分
268
在线时间
10958 小时
注册时间
2003-03-28
最后登录
2012-02-09
论坛徽章:
0
发表于 2009-07-01 14:52:55 |显示全部楼层
原帖由 山中无老虎 于 2009-7-1 14:47 发表
可以贴,但我不知道贴哪段。
在loginBean中就没有取到用户名的数据

jsp 和 javabean class 都要贴上来
6800分了
CU黑社会二当家的

Rank: 3Rank: 3

帖子
45683
主题
1900
精华
9
可用积分
2814
专家积分
1361
在线时间
1103 小时
注册时间
2004-12-30
最后登录
2012-01-08
论坛徽章:
0
发表于 2009-07-01 15:00:58 |显示全部楼层
原帖由 tong0245 于 2009-7-1 14:52 发表

jsp 和 javabean class 都要贴上来

好的。

login.jsp
<%@ page language="java" pageEncoding="gb2312"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<SCRIPT language=javascript src="<%=request.getContextPath() %>/js/main.js"></SCRIPT>
<link href="<%=request.getContextPath() %>/template/css_red/styles/xzsp.css" rel="stylesheet" type="text/css" />
</head>

<body>
<form method="post" action="login.action">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td height="128" align="center" background="<%=request.getContextPath() %>/template/css_red/images/login_bg.gif"><img src="<%=request.getContextPath() %>/template/css_red/images/login01.gif" width="626" height="128" /></td>
  </tr>
  <tr>
    <td align="center"><table width="626" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="335"><img src="<%=request.getContextPath() %>/template/css_red/images/login02.gif" width="335" height="322" /></td>
        <td align="left" valign="top" background="<%=request.getContextPath() %>/template/css_red/images/login03.gif"><table width="80%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="34" height="80"></td>
            <td width="24" nowrap="nowrap"></td>
            <td width="146">&nbsp;</td>
          </tr>
          <tr>
            <td></td>
            <td>用户名:</td>
            <td><input type="text" id="username" name="pageBean.user.username"/></td>
          </tr>
          <tr>
            <td></td>
            <td></td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td>密 码:</td>
            <td><input type="password" id="password" name="pageBean.user.password" onkeydown="document.onkeydown();"/></td>
          </tr>
          <tr>
            <td height="30"></td>
            <td>
                   
            </td>
            <td>&nbsp;</td>
          </tr>
          <tr>
            <td></td>
            <td></td>
            <td><a href="#" onclick="validateNull()"><img src="<%=request.getContextPath() %>/template/css_red/images/login_d.gif" width="61" height="25" border="0" /></a>&nbsp;<a href="#" onclick="clearText();"><img src="<%=request.getContextPath() %>/template/css_red/images/login_c.gif" width="61" height="25" border="0" /></a></td>
          </tr>
          <tr>
          <td colspan='3'>
          <div style="overflow:auto;height:60px;width:220px">
          <font color="red">
            <s:fielderror />
                    <br>
                    <s:actionerror/>
                  </font>
                  </div>
          </td>
          </tr>
          <tr>
          <td colspan='3'>
          <font color="">
             &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="download/Silverlight.exe" target=_blank><u>常用下载:统计分析显示控件下载</u></a>
                  </font>
          </td>
          </tr>
        </table></td>
      </tr>
      <tr>
        <td height="50" colspan="2" align="center"><table width="80%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td align="center"></td>
          </tr>
        </table></td>
        </tr>
    </table></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
</table>
</form>
</body>
</html>
<script>
function document.onkeydown()                //网页内按下回车触发
{
        if(event.keyCode==13)
        {
                validateNull();   
                return false;                              
        }
}

function validateNull(){
        if(document.getElementById('username').value==null||document.getElementById('username').value==""||document.getElementById('username').value==undefined){
          alert('用户名不能为空!');
        }else if(document.getElementById('password').value==null||document.getElementById('password').value==""||document.getElementById('password').value==undefined){
          alert('密码不能为空!');
        }else{
          document.forms[0].submit();
        }
}

function clearText(){
        document.getElementById('username').value="";
        document.getElementById('password').value="";
}
</script>


loginBean

public class LoginBean
{

    public LoginBean()
    {
    }

    public String getReLoginFlag()
    {
        return reLoginFlag;
    }

    public void setReLoginFlag(String reLoginFlag)
    {
        this.reLoginFlag = reLoginFlag;
    }

    public boolean isLoginFlag()
    {
        return loginFlag;
    }

    public void setLoginFlag(boolean loginFlag)
    {
        this.loginFlag = loginFlag;
    }

    public SysUser getUser()
    {
        return user;
    }

    public void setUser(SysUser user)
    {
        this.user = user;
    }

    private SysUser user;
    private boolean loginFlag;
    private String reLoginFlag;
}


loginTransactionimpl类
public class LoginTransactionImpl
    implements ILoginTransaction
{

    public LoginTransactionImpl()
    {
    }

    public List login(LoginBean pageBean)
        throws Exception
    {
            SysUser suser=pageBean.getUser();
            String username=suser.getUsername();
            String pswd=suser.getPassword();
        List userList = userDao.getUserByUsernameAndPasswordAndState(pageBean.getUser().getUsername(), pageBean.getUser().getPassword());
        return userList;
    }

    public List getMenuListByUsername(String username)
        throws Exception
    {
        List tempUserList = userDao.getUserByUsername(username);
        if(tempUserList == null || tempUserList.size() == 0)
            throw new FuLongException((new StringBuilder(String.valueOf(username))).append(" \u4E0D\u5B58\u5728!").toString());
        if(1 != tempUserList.size())
            throw new FuLongException((new StringBuilder("\u7528\u6237:")).append(username).append(" \u5728\u6570\u636E\u5E93\u4E2D\u4E0D\u662F\u552F\u4E00\u7684!").toString());
        SysUser user = (SysUser)tempUserList.get(0);
        List tempSysUserRole = sysUserRoleDao.getSysUserRoleByUserId(user.getId());
        if(tempSysUserRole == null || tempSysUserRole.size() == 0)
            throw new FuLongException((new StringBuilder("\u7528\u6237\uFF1A")).append(username).append(" \u6CA1\u6709\u5206\u914D\u6743\u9650\uFF01").toString());
        if(1 != tempSysUserRole.size())
            throw new FuLongException((new StringBuilder("\u7528\u6237\uFF1A")).append(username).append(" \u6743\u9650\u4E0D\u552F\u4E00\uFF01").toString());
        SysUserRole sysUserRole = (SysUserRole)tempSysUserRole.get(0);
        List tempPermissionList = permissionDao.getPermissionByRoleId(sysUserRole.getRoleId());
        if(tempPermissionList == null || tempPermissionList.size() == 0)
            throw new FuLongException((new StringBuilder("\u7528\u6237\uFF1A")).append(username).append(" \u6240\u5728\u6743\u9650\u6CA1\u6709\u5206\u914D\u83DC\u5355").toString());
        List finalMenuList = new ArrayList();
        for(int i = 0; i < tempPermissionList.size(); i++)
        {
            SysPermission tempPermission = (SysPermission)tempPermissionList.get(i);
            List menuList = menuDao.getMenuByMenuCode(tempPermission.getModuleCode());
            if(menuList == null || menuList.size() == 0)
                throw new FuLongException((new StringBuilder("\u6CA1\u6709\u83DC\u5355\u7684code\u662F:")).append(tempPermission.getModuleCode()).toString());
            if(1 != menuList.size())
                throw new FuLongException((new StringBuilder("moduleCode:")).append(tempPermission.getModuleCode()).append(" \u4E0D\u552F\u4E00").toString());
            SysMenu menu = (SysMenu)menuList.get(0);
            finalMenuList.add(menu);
        }

        return finalMenuList;
    }

    public ISysUserDao getUserDao()
    {
        return userDao;
    }

    public void setUserDao(ISysUserDao userDao)
    {
        this.userDao = userDao;
    }

    public ISysMenuDao getMenuDao()
    {
        return menuDao;
    }

    public void setMenuDao(ISysMenuDao menuDao)
    {
        this.menuDao = menuDao;
    }

    public ISysPermissionDao getPermissionDao()
    {
        return permissionDao;
    }

    public void setPermissionDao(ISysPermissionDao permissionDao)
    {
        this.permissionDao = permissionDao;
    }

    public ISysUserRoleDao getSysUserRoleDao()
    {
        return sysUserRoleDao;
    }

    public void setSysUserRoleDao(ISysUserRoleDao sysUserRoleDao)
    {
        this.sysUserRoleDao = sysUserRoleDao;
    }

    private ISysUserDao userDao;
    private ISysMenuDao menuDao;
    private ISysPermissionDao permissionDao;
    private ISysUserRoleDao sysUserRoleDao;
}

XML配置还用贴吗?
人一出生就是为了死亡,所以我们追求过程,不重视结果。
FLW说:你是希望用C语言,不是想学C语言。
CU黑社会二当家的

Rank: 3Rank: 3

帖子
45683
主题
1900
精华
9
可用积分
2814
专家积分
1361
在线时间
1103 小时
注册时间
2004-12-30
最后登录
2012-01-08
论坛徽章:
0
发表于 2009-07-01 15:08:01 |显示全部楼层
SysUser类

public class SysUser
    implements Serializable
{

    public SysUser()
    {
    }

    public Date getLoginTime()
    {
        return loginTime;
    }

    public void setLoginTime(Date loginTime)
    {
        this.loginTime = loginTime;
    }

    public String getRoleId()
    {
        return roleId;
    }

    public void setRoleId(String roleId)
    {
        this.roleId = roleId;
    }

    public String getId()
    {
        return id;
    }

    public void setId(String id)
    {
        this.id = id;
    }

    public String getUsername()
    {
        return username;
    }

    public void setUsername(String username)
    {
        this.username = username;
    }

    public String getRealName()
    {
        return realName;
    }

    public void setRealName(String realName)
    {
        this.realName = realName;
    }

    public String getPassword()
    {
        return password;
    }

    public void setPassword(String password)
    {
        this.password = password;
    }

    public String getPhone()
    {
        return phone;
    }

    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getMobile()
    {
        return mobile;
    }

    public void setMobile(String mobile)
    {
        this.mobile = mobile;
    }

    public String getEmail()
    {
        return email;
    }

    public void setEmail(String email)
    {
        this.email = email;
    }

    public String getDeptCode()
    {
        return deptCode;
    }

    public void setDeptCode(String deptCode)
    {
        this.deptCode = deptCode;
    }

    public String getAreaCode()
    {
        return areaCode;
    }

    public void setAreaCode(String areaCode)
    {
        this.areaCode = areaCode;
    }

    public static long getSerialVersionUID()
    {
        return 0x637f576ee66097ecL;
    }

    public String getDutyCode()
    {
        return dutyCode;
    }

    public void setDutyCode(String dutyCode)
    {
        this.dutyCode = dutyCode;
    }

    public String getSubClass()
    {
        return subClass;
    }

    public void setSubClass(String subClass)
    {
        this.subClass = subClass;
    }

    public String getState()
    {
        return state;
    }

    public void setState(String state)
    {
        this.state = state;
    }

    public String getCreator()
    {
        return creator;
    }

    public void setCreator(String creator)
    {
        this.creator = creator;
    }

    public Date getCreateTime()
    {
        return createTime;
    }

    public void setCreateTime(Date createTime)
    {
        this.createTime = createTime;
    }

    public String getRemark()
    {
        return remark;
    }

    public void setRemark(String remark)
    {
        this.remark = remark;
    }

    private static final long serialVersionUID = 0x637f576ee66097ecL;
    private String id;
    private String username;
    private String realName;
    private String password;
    private String phone;
    private String mobile;
    private String email;
    private String deptCode;
    private String areaCode;
    private String dutyCode;
    private String subClass;
    private String state;
    private String creator;
    private Date createTime;
    private String remark;
    private String roleId;
    private Date loginTime;
}
人一出生就是为了死亡,所以我们追求过程,不重视结果。
FLW说:你是希望用C语言,不是想学C语言。
小虾米

Rank: 5Rank: 5

帖子
21927
主题
1730
精华
0
可用积分
7497
专家积分
268
在线时间
10958 小时
注册时间
2003-03-28
最后登录
2012-02-09
论坛徽章:
0
发表于 2009-07-01 15:21:15 |显示全部楼层
你看一下 浏览器里边  id=username 控件名字到底是啥 "pageBean.user.username
是什么啊?你用struts?
我还真么有这样用过
6800分了
小虾米

Rank: 5Rank: 5

帖子
21927
主题
1730
精华
0
可用积分
7497
专家积分
268
在线时间
10958 小时
注册时间
2003-03-28
最后登录
2012-02-09
论坛徽章:
0
发表于 2009-07-01 15:24:31 |显示全部楼层
看上去没啥不对的啊
6800分了
小虾米

Rank: 5Rank: 5

帖子
21927
主题
1730
精华
0
可用积分
7497
专家积分
268
在线时间
10958 小时
注册时间
2003-03-28
最后登录
2012-02-09
论坛徽章:
0
发表于 2009-07-01 15:29:17 |显示全部楼层
你吧username的 name 直接写成username试试
6800分了
CU黑社会二当家的

Rank: 3Rank: 3

帖子
45683
主题
1900
精华
9
可用积分
2814
专家积分
1361
在线时间
1103 小时
注册时间
2004-12-30
最后登录
2012-01-08
论坛徽章:
0
发表于 2009-07-01 15:34:14 |显示全部楼层
我试试看吧。谢谢
人一出生就是为了死亡,所以我们追求过程,不重视结果。
FLW说:你是希望用C语言,不是想学C语言。
您需要登录后才可以回帖 登录 | 注册

北京皓辰网域网络信息技术有限公司. 版权所有 京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:1101082001
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP