当前位置:编程学习 > JAVA >>

java.lang.NullPointerException at com.thit.oa.action.MyProjProcessAction.addMyP

问题:  是突然出现的,也不知道动了那里。  查询功能可以,但新增不时出错,即没得到Form传过来的实体对象。
java.lang.NullPointerException 
at com.thit.oa.action.MyProjProcessAction.addMyProjProcess(MyProjProcessAction.java:81)


JSP:
<form action="addMyProjProcess.action" method="post">
<table width="100%" border="0" align="center" cellpadding="0"
cellSpacing="1">
<tr>
<td rowspan="2" align="center" class="AddGoods_Left">
客 户:
</td>
<td class="AddGoods_Right">
<input name="projProcess.customName" type="text"
id="ClassName" style="width: 200px;" />
</td>
</tr>
<tr>
<td class="AddGoods_Right_Text">
请输入项目对应的 客户
</td>
</tr>
<tr>
<td rowspan="2" align="center" class="AddGoods_Left">
机 型:
</td>
<td class="AddGoods_Right">
<input name="projProcess.model" type="text" id="ClassName"
style="width: 200px;" />
</td>
</tr>
<tr>
<td class="AddGoods_Right_Text">
请输入项目对应的 机型
</td>
</tr>
<tr>
<td rowspan="2" align="center" class="AddGoods_Left">
商 务:
</td>
<td class="AddGoods_Right">
<input name="projProcess.businessName" type="text"
id="ClassName" style="width: 200px;" />
</td>
</tr>
<tr>
<td class="AddGoods_Right_Text">
请输入项目对应的 商务负责人
</td>
</tr>

<tr>
<td rowspan="2" align="center" class="AddGoods_Left">
状态描述:
</td>
<td class="AddGoods_Right">
<textarea name="projProcess.stateDesc" cols="30" rows="5"></textarea>
</td>
</tr>
<tr>
<td class="AddGoods_Right_Text">
请输入项目状态情 况
</td>
</tr>
<tr>
<td rowspan="2" align="center" class="AddGoods_Left">
需求描述:
</td>
<td class="AddGoods_Right">
<textarea name="projProcess.needsDesc" cols="30" rows="5"></textarea>
</td>
</tr>
<tr>
<td class="AddGoods_Right_Text">
请输入项目需求
</td>
</tr>
<tr>
<td rowspan="2" align="center" class="AddGoods_Left">
计划完成时间:
</td>
<td class="AddGoods_Right">
<input size="20"    name="projProcess.planCompleteDate"   />
</td>

</tr>
<tr>
<td class="AddGoods_Right_Text">
请输入计划完成时间
</td>
</tr>

<tr>
<td rowspan="2" align="center" class="AddGoods_Left">
更新时间:
</td>
<td class="AddGoods_Right">
<input size="20"   name="projProcess.planUpdateDate"  type="text" />
</td>
</tr>
<tr>
<td class="AddGoods_Right_Text">
请输入项目更新的计划完成时间
</td>
</tr>

<TR>
</TR>
<tr>
<td class="AddGoods_Left">
 

</td>
<td class="AddGoods_Right">
<input type="submit" name="AddClasss" value="添加项目" onclick=""
id="AddClasss" class="C_input02" />
 
<INPUT type="button" class="C_input"
onClick="javascript:location.href('queryAllByUser.action')"
value="返回列表"/>
</td>
</tr>
</table>
</form>



ACTION:



private HttpServletRequest request;
private ProjProcess projProcess;

public HttpServletRequest getRequest() {
return request;
}

public void setRequest(HttpServletRequest request) {
this.request = request;
}

private ProjProcessBizDao projProcessBizDao;
private OperateLogBizDao operateLogBizDao;

public OperateLogBizDao getOperateLogBizDao() {
return operateLogBizDao;
}

public void setOperateLogBizDao(OperateLogBizDao operateLogBizDao) {
this.operateLogBizDao = operateLogBizDao;
}

// 所有的项目
public String quryAllMyProjProcess() {
UserInfo userInfo = (UserInfo) request.getSession()
.getAttribute("user");
List<ProjProcess> list = null;
try {
list = projProcessBizDao.queryAllByUser(userInfo);
request.getSession().setAttribute("allMyProjProcesssByUser", list);
} catch (Exception e) {
e.printStackTrace();
}
return SUCCESS;
}

// 所有的项目
public String queryAllByUser() {
UserInfo userInfo = (UserInfo) request.getSession()
.getAttribute("user");
List<ProjProcess> list = null;
try {
list = projProcessBizDao.queryAllByUser(userInfo);
request.getSession().setAttribute("allMyProjProcesssByUser", list);
} catch (Exception e) {
e.printStackTrace();
}
return SUCCESS;
}
// 增加项目
public String addMyProjProcess() {
UserInfo userInfo = (UserInfo) request.getSession()
.getAttribute("user");
try {
System.out.println(this.projProcess.getBusinessName() + "  "
+ this.projProcess.getCustomName());

String createTime = new Date().toLocaleString();
// String a= createTime.substring(0, 8);
// System.out.println(a);
this.projProcess.setCreateTime(createTime);
this.projProcess.setUserInfo(userInfo);
// this.projProcess.setBusinessName(businessName);
} catch (Exception e) {
e.printStackTrace();
}

OperateLog operateLog = new OperateLog();
try {
operateLog.setObjectId("" + userInfo.getUserName());
operateLog.setOperateName("增加");
operateLog.setOperateTime(new Date().toLocaleString());
operateLog.setUserInfo(userInfo);
projProcessBizDao.insert(this.projProcess);
operateLog.setOperateDesc("增加项目成功");
} catch (Exception e) {
e.printStackTrace();
operateLog.setOperateDesc("增加项目失败");
} finally {
try {
operateLogBizDao.insert(operateLog);
} catch (Exception e) {
e.printStackTrace();
}
}
return SUCCESS;
}


配置:
<!-- ***************** 项目   ***************** -->
        <!-- 所有的项目 -->
        <action name="quryAllMyProjProcess" class="quryAllMyProjProcessAction" method="quryAllMyProjProcess">
            <result type="redirect">/MyProjProcess.jsp</result>
        </action>
        <!-- 某用户的项目 -->
        <action name="queryAllByUser" class="queryAllByUserAction" method="queryAllByUser">
            <result type="redirect">/MyProjProcess.jsp</result>
        </action>
        <!-- 增加 项目-->
        <action name="addMyProjProcess" class="addMyProjProcessAction" method="addMyProjProcess">
            <result type="redirect">/queryAllByUser.action</result>
        </action>
        <!-- 删除 项目-->
        <action name="deleteMyProjProcessById" class="deleteMyProjProcessByIdAction" method="deleteMyProjProcessById">
            <result type="redirect">/queryAllByUser.action</result>
        </action>
        <!-- 确定修改项目 -->
        <action name="updateMyProjProcessConfrim" class="updateMyProjProcessConfrimAction" method="updateMyProjProcessConfrim">
            <result type="redirect">/queryAllByUser.action</result>
        </action>




补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,