高手帮帮忙,感谢!hibernate 查询 发生 java.lang.NullPointerException

在建产一对多关系时a.hbm.xml<setname="subitems"inverse="true"cascade="all"table="subitem"><key>... 在建产一对多关系时
a.hbm.xml
<set name="subitems" inverse="true" cascade="all" table="subitem" >
<key>
<column name="itemid" />
</key>
<one-to-many class="org.lxh.myzngt.vo.Subitem" />
</set>
b.hbm.xml
<many-to-one name="item" class="org.lxh.myzngt.vo.Item" fetch="select" lazy="false">
<column name="itemid" />
</many-to-one>

impl类查询方法
public List queryAll() throws Exception {
String hql = "FROM Item AS i";
List all = super.getSession().createQuery(hql).list();
return all;
}
万分感谢
万分感谢:报错信息
java.lang.NullPointerException
at org.lxh.myzngt.struts.action.ItemAction.selectall(ItemAction.java:55)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
展开
 我来答
heitianba
2010-01-08 · TA获得超过957个赞
知道小有建树答主
回答量:934
采纳率:0%
帮助的人:814万
展开全部
配置感觉没什么问题,class 如果是在一个包里面 可以直接写类名。
如果你的session值是取到了的,那估计就是你数据库有非法数据,不符合你配置的关联,如果你试测试应用,建议可以把表清空 重新加两调数据测试下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lydawen
2010-01-08 · TA获得超过3181个赞
知道大有可为答主
回答量:2678
采纳率:50%
帮助的人:1474万
展开全部
代码太少,异常太少。估计是(List) all这里为空,很有可能是super.getSession() 并未拿到Session,可以分两步把这里的代码改写一下。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
真难何不B
2012-04-16
知道答主
回答量:4
采纳率:0%
帮助的人:5403
展开全部
List all = super.getSession().createQuery(hql).list();
对这段代码修改跟踪下吧,看看是否super.gerSessiong()为空的。针对这样的写法建议拆分便于问题的跟踪,另外提供的有效代码太少不利于问题的分析
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友dc81944bb
2010-01-08 · TA获得超过572个赞
知道小有建树答主
回答量:793
采纳率:0%
帮助的人:719万
展开全部
你要看你是哪一句出的空指针呀。。
不过我看你代码。我觉的。。super.getSession()这句最高的希望。。我估计你的就没拿到session
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
miniapp15iwk0ai00uu0
2010-01-11 · TA获得超过159个赞
知道小有建树答主
回答量:255
采纳率:0%
帮助的人:139万
展开全部
你连信息给的这样少 还没有分给
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式