请大家帮我看看这是什么问题呢?

chengwenying 2007-11-12 05:49:06
Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:516)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:423)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


root cause

java.lang.NullPointerException
com.action.TalkAction.insertTalk(TalkAction.java:25)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:276)
org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:196)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

...全文
118 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiuqiupeng 2007-11-15
  • 打赏
  • 举报
回复
24行设置一个断点看看talkForm是不是为空
olivesoup 2007-11-15
  • 打赏
  • 举报
回复
什么原因?
chengwenying 2007-11-15
  • 打赏
  • 举报
回复
谢谢大家,现在问题已经解决了,分不多,意思下吧
chengwenying 2007-11-15
  • 打赏
  • 举报
回复
谢谢大家,现在问题已经解决了,分不多,意思下,
xiaokunyu 2007-11-15
  • 打赏
  • 举报
回复
既然一開始form就為空,那下面的得到form屬性肯定也就為空咯。
既然你這句 TalkForm talkForm=(TalkForm)form;
放在insertTalk 方法的第一句,那就肯定是你的配置文件里配置出錯了.
貼出你的配置文件吧 struts的。
chengwenying 2007-11-14
  • 打赏
  • 举报
回复
我在struts-config里的form-bean指向了talkForm;
希望能有人帮我找出,测试依然是:
2007-11-13 21:53:04 org.apache.struts.util.RequestUtils createActionForm
严重: Error creating form bean of class com.actionForm.TalkForm
java.lang.NullPointerException
at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:214)
olivesoup 2007-11-13
  • 打赏
  • 举报
回复
talkForm是空啊
检查一下你的struts-config里的form-bean指向的是不是TalkForm
chengwenying 2007-11-13
  • 打赏
  • 举报
回复
按照你的设置不为空,还是打出了:
2007-11-13 4:38:25 org.apache.struts.util.RequestUtils createActionForm
严重: Error creating form bean of class com.actionForm.TalkForm
java.lang.NullPointerException
at org.apache.struts.config.FormBeanConfig.createActionForm(FormBeanConfig.java:214)
增加了System.out.println(talkForm),控制台上输出是null,
有碰过同样问题的朋友,解决了,麻烦说下
不过还是先谢谢你(xiaokunyu)
xiaokunyu 2007-11-12
  • 打赏
  • 举报
回复

public ActionForward insertTalk(ActionMapping mapping,ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
TalkForm talkForm=(TalkForm)form;
System.out.println(talkForm);
if(talkForm.getTopic() != null)
talkForm.setTopic(Chinese.toChinese(talkForm.getTopic())); //第25行
if(talkForm.getContent() != null)
talkForm.setContent(Chinese.toChinese(talkForm.getContent()));
if(talkForm.getContent() != getWho)
talkForm.setWho(Chinese.toChinese(talkForm.getWho()));
dao.insertTalk(talkForm);
request.setAttribute( "success ", "添加留言成功!!! ");
return mapping.findForward( "insertTalk ");
}


如果还不行,则将System.out.println(talkForm);结果贴出来.另外Chinese.toChinese()方法也顺便看下怎么处理的.
你在数据库里设置字段不为空,那是在数据库里嘛,JAVA程序也要限制不能为空噢.!
olivesoup 2007-11-12
  • 打赏
  • 举报
回复
如果topic是String的话:
talkForm.setTopic(Chinese.toChinese(talkForm.getTopic() + "")); //第25行
chengwenying 2007-11-12
  • 打赏
  • 举报
回复
可是数据库的字段我设置了不允许为空的,那大家说下如何才能解决这样的问题呢?
olivesoup 2007-11-12
  • 打赏
  • 举报
回复
只从你给的代码并不能确定,talkForm.getTopic()为空的可能性比较大一些
olivesoup 2007-11-12
  • 打赏
  • 举报
回复
TalkAction的第25行有字段为空
olivesoup 2007-11-12
  • 打赏
  • 举报
回复
空指针异常
chengwenying 2007-11-12
  • 打赏
  • 举报
回复
这是TalkAction 类中的一部分
public ActionForward insertTalk(ActionMapping mapping,ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
{
TalkForm talkForm=(TalkForm)form;
System.out.println(talkForm);
talkForm.setTopic(Chinese.toChinese(talkForm.getTopic())); //第25行
talkForm.setContent(Chinese.toChinese(talkForm.getContent()));
talkForm.setWho(Chinese.toChinese(talkForm.getWho()));
dao.insertTalk(talkForm);
request.setAttribute("success","添加留言成功!!!");
return mapping.findForward("insertTalk");
}

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧