IndexOutOfsetboundssException是什么意思,错在哪里?

最近项目在生产环境抛错:
at org.hibernate.impl.SessionFactoryImpl.get(SessionFactoryImpl.java:339) at org.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:411) at org.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:884) at org.hibernate.impl.SessionImpl.iterate(SessionImpl.java:920) at org.hibernate.impl.QueryImpl.iterate(QueryImpl.java:41)
上述是调用Hibernate查询数据query.iterate();后,就抛错了,根据日志分析,错误日志记录的一般是java.lang.ArrayIndexOutOfBoundsException: -68,后面是一个-128范围内的负数,并且根据时间逐渐增大,比如到java.lang.ArrayIndexOutOfBoundsException: -2,然后java.lang.ArrayIndexOutOfBoundsException: -1,然后又轮回到java.lang.ArrayIndexOutOfBoundsException: -127。
开始看了半天一直在找自己代码的问题,最后通过查看hibernate源码SessionFactoryImpl.java的339附近代码,方法如下:
private synchronized Object get(Object key)
Object result = this.softQueryCache.get(key);
if (result != null) {
this.strongRefs[(++this.strongRefIndex % 128)] =
this.strongRefs[(++this.strongRefIndex % 128)] =为第339行,strongRefs数组是初始化长度为128的数组,strongRefIndex被定义为:private transient int strongRefIndex = 0;
strongRefIndex是根据每次获取数据都递增1的,根据报错内容,应该是strongRefIndex为负数了,而且每次也确实在递增。
通过上述分析,strongRefIndex字段要不内存中被无故修改了,或者就是递增到int的最大长度了,导致变为了负数。好像没有其他办法,只能重启网站,重启后问题果然解决了!
阅读(...) 评论()exception in thread main java.lang.ArrayIndexOutOfBoundsException:5出现错误谁来帮帮忙_好搜问答
|注册&您有新任务,
exception in thread main java.lang.ArrayIndexOutOfBoundsException:5出现错误谁来帮帮忙
被浏览74次
import java.awt.*;//1
public class Layout extends Frame{//2
MenuBar menuB//3
Panel panels[];//4
Panel currentP//5
static int border=0;//6
static int card=1;//7
static int flow=2;//8
static int grid=3;//9
static int gridBag=4;//10
Menu cardM//11
public static void main(String args[]){//12
Layout app=new Layout();//13
采纳率:44%
数组越界了. 用微信扫描二维码分享至好友和朋友圈分享到:
下面是答答童鞋给您的小建议,您看靠谱吗?初来乍到,弄错了您不要生气哦(*^__^*)答答小贴士
等您帮助的附近的朋友换一换
大家都在搜好搜APP下载好搜摸字APP 随时随地随心搜索 用好搜, 特顺手!
第9天生活就像海洋,只有意志坚强的人才能达到生命的彼岸。知道了出现java.lang.IndexOutOfBoundsException: Index: 0, Size: 0错误 - Java Web - 网站开发技术
帮助别人就是帮助自己!
如果这里解决了您的问题,请您点一下推荐
出现java.lang.IndexOutOfBoundsException: Index: 0, Size: 0错误
The server encountered an internal error () that prevented it from fulfilling this request.exception
javax.servlet.ServletException: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515) org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:422)root cause
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 java.util.ArrayList.RangeCheck(ArrayList.java:547) java.util.ArrayList.get(ArrayList.java:322) teacher.action.RecordAction.convertr(RecordAction.java:97) 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:404) com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:267) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:229) com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:221) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:150) org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:48) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:123) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:184) com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:105) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:83) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:207) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:74) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:127) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) org.apache.struts2.interceptor.ProfilingActivationInterceptor.intercept(ProfilingActivationInterceptor.java:107) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:224) com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(DefaultActionInvocation.java:223) com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:455) com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:221) org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(
javax.servlet.ServletException: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0303112345678910111213141516171819202122232425262728293031123456789
阅读排行榜
评论排行榜}

我要回帖

更多关于 index out of bounds 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信