jboss报错,非常难以解决

menglishuixiang21 2009-12-22 01:34:56
13:29:43,250 ERROR [STDERR] java.lang.IndexOutOfBoundsException: Remember that ordinal parameters are 1-based!


public PurchaseBefore getPurchaseBeforeByMID(int purchaseBeforeID){
try{
Query query = em.createNativeQuery("select n.purchaseApplyID,n.productOrderItemID,n.saleRemarks,n.notPurchaseNum,n.urgent,n.prePurchase,n.createTime,o.billid,m.productname,m.producer,m.specification,m.tprice,m.tcou,(select providername from Provider where providerid=m.providerid) as providername,(select truename from Admin where adminid=o.lastadminid) as truename,b.purchaseBeforeID,b.getNum,b.getPrice,(select providername from Provider where providerid=b.providerid) as providername2,b.purchaseStatus,b.purchaseRemarks,b.confirmPurchase,b.createTime,b.total from PurchaseApply n left join ProductOrderItem m on n.productOrderItemID=m.productorderitemid left join Productorder o on m.orderid=o.orderid left join purchaseBefore b on b.purchaseApplyID=n.purchaseApplyID order by n.purchaseApplyID desc");
query.setParameter(1,purchaseBeforeID);
List list=query.getResultList();
if(list.size()==1){
PurchaseBefore hfAD=(PurchaseBefore)list.get(0);
return hfAD;
}else{
return null;
}

}catch (Exception e) {
e.printStackTrace();
return null;
}
}
...全文
127 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jkgao801 2010-07-19
  • 打赏
  • 举报
回复
数组 越界 问题。
firelfy_selma 2010-07-06
  • 打赏
  • 举报
回复
9楼说得对,sql语句中没有需要传参的地方
starcloudmountain 2010-06-29
  • 打赏
  • 举报
回复
建议调试运行,确定抛出异常的那条语句
letian_w 2010-06-18
  • 打赏
  • 举报
回复
1. log 报的是query.setParameter(1,purchaseBeforeID);这一句,sql没有set参的地方。
2. list 需要先check null
wve 2010-06-18
  • 打赏
  • 举报
回复
query.setParameter(1,purchaseBeforeID);有问题,
前面的sql查询没有需要设置参数/变量的地方。要修改前面的sql语句

wxa1627 2010-06-17
  • 打赏
  • 举报
回复
错在:
query.setParameter(1,purchaseBeforeID);
yuhuijuanjuan 2010-06-16
  • 打赏
  • 举报
回复
如果你的list为空的话,用list.size()就会有问题的,不过这个不关jboss的事
IndexOutOfBoundsException

超过长度了
幻想多巴胺 2010-06-10
  • 打赏
  • 举报
回复
zhanjun_chen 2009-12-22
  • 打赏
  • 举报
回复
另外,这个参数purchaseBeforeID 传给那个变量了
zhanjun_chen 2009-12-22
  • 打赏
  • 举报
回复
if(list.size()==1){
这个判断可能有问题

改为

if(list!=null && list.size()>=0){
menglishuixiang21 2009-12-22
  • 打赏
  • 举报
回复
请问我的问题出现在哪里?谢谢各位大侠的指点

6,787

社区成员

发帖
与我相关
我的任务
社区描述
JBoss技术交流
社区管理员
  • JBoss技术交流社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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