Menu

ArrayStoreException

Help
2006-07-25
2013-01-24
  • Francois Mercier

    Hello,
    as I get a -1 as session attribute size for several attributes, I've added a re.printStackTrace(); in
    ObjectProfiler.sizeof and now I can see a ArrayStoreException with the stack trace below, but I don't understand why the home made implementation of IdentityHashMap throws this exeption.
    Any Hints Please ?

         [exec] java.lang.ArrayStoreException
         [exec]     at clime.messadmin.utils.IdentityHashMap.put(IdentityHashMap.java:431)
         [exec]     at clime.messadmin.providers.sizeof.ObjectProfiler.computeSizeof(ObjectProfiler.java:251)
         [exec]     at clime.messadmin.providers.sizeof.ObjectProfiler.sizeof(ObjectProfiler.java:76)
         [exec]     at clime.messadmin.providers.sizeof.ObjectProfilerProvider.sizeof(ObjectProfilerProvider.java:31)
         [exec]     at clime.messadmin.taglib.SizeofTag.doEndTag(SizeofTag.java:52)
         [exec]     at jsp_servlet._messadmin.__sessiondetail._jspService(__sessiondetail.java:1154)
         [exec]     at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
         [exec]     at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1072)
         [exec]     at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
         [exec]     at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
         [exec]     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         [exec]     at clime.messadmin.filter.MessAdminFilter.doFilter(MessAdminFilter.java:106)
         [exec]     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         [exec]     at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:644)
         [exec]     at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:423)
         [exec]     at clime.messadmin.admin.MessAdminServlet.displaySessionDetailPage(MessAdminServlet.java:246)
         [exec]     at clime.messadmin.admin.MessAdminServlet.process(MessAdminServlet.java:124)
         [exec]     at clime.messadmin.admin.MessAdminServlet.doGet(MessAdminServlet.java:71)
         [exec]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         [exec]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         [exec]     at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1072)
         [exec]     at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
         [exec]     at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:28)
         [exec]     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         [exec]     at clime.messadmin.filter.MessAdminFilter.doFilter(MessAdminFilter.java:106)
         [exec]     at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:27)
         [exec]     at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6987)
         [exec]     at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         [exec]     at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         [exec]     at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3892)
         [exec]     at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2766)
         [exec]     at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
         [exec]     at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)

     
    • Francois Mercier

      Applying the workaround described in http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5012949
      for the classes:
      sun.reflect.UnsafeStaticFieldAccessorImpl
      sun.reflect.UnsafeStaticObjectFieldAccessorImpl
      sun.reflect.UnsafeStaticLongFieldAccessorImpl

      seams to solve my problem
      HTH

       
      • Cédrik

        Cédrik - 2006-07-26

        Good catch! Do you have a patch that I can include in the codebase?

        On a side note, the "home made" implementation of IdentityHashMap is just a copy of java.util.IdentityHashMap, as Java 1.3 does not have such a beast.

         

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.