java.lang.NullPointerException

cleveben cleveben 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
LoginAction调用DAO时出现空指针异常,代码如下:

package com.hotel.struts.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.log4j.Logger;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;

import com.hotel.hibernate.dao.OperatorDAO;
import com.hotel.struts.form.LoginForm;
import com.hotel.struts.util.Constants;


public class LoginAction extends DispatchAction {

protected OperatorDAO operatorDAO ;

Logger log = Logger.getLogger(this.getClass());

public OperatorDAO getOperatorDAO() {
return operatorDAO;
}

public void setOperatorDAO(OperatorDAO operatorDAO) {
this.operatorDAO = operatorDAO;
}

public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {

ActionMessages messages = new ActionMessages();
ActionForward forward = new ActionForward();
LoginForm loginForm = (LoginForm) form;

// try {
// get parameters
String oid = loginForm.getOid();

// invalidate the original session if exists
HttpSession session = request.getSession(false);
if (session != null) {
session.invalidate();
}

// create a new session for the user
session = request.getSession(true);

// login
boolean isValid = valid(request, loginForm);
if (isValid) {

session.setAttribute(Constants.OPERATOR_KEY, oid);

log.info("Operator " + oid + " login.");
} else {
messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
"login.message.failed"));
}

// } catch (Exception e) {
// messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
// "register.message.failed"));
// }

// If a message is required, save the specified key(s)
// into the request for use by the <struts:errors> tag.

if (!messages.isEmpty()) {
saveErrors(request, messages);
request.setAttribute("loginFormBean", loginForm);
forward = mapping.findForward(Constants.FAILURE_KEY);
} else {
forward = mapping.findForward(Constants.SUCCESS_KEY);
}

// Finish with
return (forward);
}

private boolean valid(HttpServletRequest request, LoginForm loginForm) {
if (getOperatorDAO().isValid(loginForm.getOid(),
loginForm.getOpwd())) {
return true;
} else {
return false;
}
}

}
...全文

相关推荐

java.lang.NullPointerException出现的几种原因及解决方案

主要介绍了java.lang.NullPointerException出现的几种原因及解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

weixin_38722193

java.lang.NullPointerException的解决方法

启动Tomcat时出现了下面的这种错误,找了很久的原因终于知道是因为tomcat和jdk要放在任意一个盘的根目录下面,而不能是放在 而不能放在某个盘根目录下的子目录里面,最好是放在C盘的根目录下面(比如C:\tomcat-6.0.20、C:\jdk1.6)!

xiaodidou

CRASH问题:java.lang.NullPointerException

java.lang.NullPointerException: Attempt to invoke virtual method ‘void android.widget.ImageView.setImageResource(int)’ on a null object reference 今天在家练习ListView的时候,遇到一个java.lang.NullPointerException的空指针异常,log如下: 2020-05-10 15:40:29.249 20436-20436/? E/k.myapplicatio: Unknown bits set in runtime_flag

weixin_38571603

绝望,上传文件失败。。遇到并解决java.lang.NullPointerException

解决报错:java.lang.NullPointerException 解决方法:将文件的编码方式改为utf-8即可! 截图: 修改成功后:   代码: import os import json import re def json_to_html(i,cvenum): print('正在处理:'+cvenum) head = 漏洞对应信息摘要 \ cvesummary for this cve tail = #padding-left: 320px cvesummary_context = head + i +

weixin_38704156

java.lang.NullPointerException的可能原因及处理.docx

java.lang.NullPointerException的可能原因及处理.docx

无敌开心
评论 4
收藏 已收藏
分享
返回顶部
cleveben
Web 开发 81,108 成员 341,721 内容