java.lang.IndexOutOfBoundsException:

java.util.Collections$EmptyList.get(Collections.java:2970)com.accp.action.DossierActi... java.util.Collections$EmptyList.get(Collections.java:2970)
com.accp.action.DossierAction.execute(DossierAction.java:24)
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:597)
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
展开
 我来答
阿拉豆自媒体
2018-12-25 · TA获得超过526个赞
知道答主
回答量:232
采纳率:0%
帮助的人:27.6万
展开全部

该异常通常是指数组下标越界异常。

例如:一个ArrayList数组中没有元素,而你想获取第一个元素,运行是就会报此类型的错误。

案例如下:

扩展资料:

java中还有其他几种常见异常

1、java.lang.NullPointerException

该异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在创建图片,调用数组这些操作中,比如图片未经初始化,或者图片创建时的路径错误等等。

2、java.lang.ClassNotFoundException

该异常的解释是“指定的类不存在”,这里主要考虑一下类的名称和路径是否正确即可,如果是在eclipse等开发工具下做的程序包,一般都是默认加上Package的,所以转到WTK下后要注意把Package的路径加上。

3、java.lang.ArithmeticException

该异常的解释是“数学运算异常”,比如程序中出现了除以零这样的运算就会出这样的异常,对这种异常,要检查一下自己程序中涉及到数学运算的地方,公式是不是有不妥。

4、java.lang.ArrayIndexOutOfBoundsException

该异常的解释是“数组下标越界”,现在程序中大多都有对数组的操作,因此在调用数组的时候一定要认真检查,看自己调用的下标是不是超出了数组的范围。

5、java.lang.IllegalArgumentException

该异常的解释是“方法的参数错误”,很多J2ME的类库中的方法在一些情况下都会引发这样的错误,比如音量调节方法中的音量参数如果写成负数就会出现这个异常。

6、java.sql.SQLException 

该异常的解释是“Sql语句执行异常”,由数据库管理系统抛出至服务器,应检查sql语句是否书写正确等。

参考资料:jdk9官方文档-Exception类

java_lyvee
2011-11-16 · 超过15用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:48万
展开全部
贴源码出来啊,这样谁看的出。不过就Exception信息应该是你越界访问了。譬如你有一个ResultSet 他是从1开始访问的,你访问了一个0。即你get(0);你把代码贴出来一看就知道了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友96b20a22d
2011-11-16
知道答主
回答量:19
采纳率:0%
帮助的人:23.6万
展开全部
List<Dossier> dossierList=dossierBiz.listDossier();
ActionContext.getContext().put("dossierList", dossierList);
System.out.println(dossierList.get(0));

你的问题是数组越界了,也就是你所取的list中可能是完全没有数据,问题应该在这句
List<Dossier> dossierList=dossierBiz.listDossier();
这里你就没有获取到数据,所以下面的dossierList.get(0)就出问题了。
你应该在debug下查看listDossier是否也有值。

看你下面的代码return this.getHibernateTemplate().findByCriteria(criteria);
就知道你应该检查一下你的findByCriteria方法,该方法的返回的时候可能就已经出问题了,你应该在debug下一步一步的往上追踪看是到哪一步开始没有取到数据,以后上班后在debug下调试找问题是十分重要的!
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
喜欢扮酷
2011-11-16 · 超过12用户采纳过TA的回答
知道答主
回答量:43
采纳率:0%
帮助的人:37.5万
展开全部
exception 里面写的很清楚。EmptyList.getXXXXXX 很明显list 是空的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wwwwsohucom1
2011-11-16
知道答主
回答量:17
采纳率:0%
帮助的人:5.5万
展开全部
数组越界了,看看你在取ist中值的是不是超过list本身的size值了
更多追问追答
追问
List dossierList=dossierBiz.listDossier();
ActionContext.getContext().put("dossierList", dossierList);
System.out.println(dossierList.get(0));
这样也可以越界?
追答
是不是 dossierList 里根本就没有数据呢,设个断点看看哈
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式