• Recent
    • Tags
    • Popular
    • Register
    • Login

    Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

    Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website Mango 5 Documentation Website

    /internal/workItems.shtm DWR invocation exception java.lang.NoSuchMethodError:

    User help
    2
    11
    2.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      Pedro
      last edited by

      This NoSuchMethodError occurs as soon as I click on the Work Items link under Internal metric.

      • I have no class or jar files overridden.
      • This was first noticed on core 2.7.2, but continues on core 2.7.4.
      2016-02-25 09:26:35,362 ERROR (com.serotonin.m2m2.web.dwr.util.ExceptionDetectionFilter.doFilter:38) - DWR invocation exception  
      java.lang.NoSuchMethodError: com.serotonin.m2m2.rt.maint.BackgroundProcessing.getHighPriorityServiceQueueClassCounts()Ljava/util/Map; 
              at com.serotonin.m2m2.internal.threads.ThreadsDwrDef$ThreadsDwr.getWorkItems(ThreadsDwrDef.java:99) 
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
              at java.lang.reflect.Method.invoke(Method.java:497) 
              at org.directwebremoting.impl.ExecuteAjaxFilter.doFilter(ExecuteAjaxFilter.java:34) 
              at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) 
              at com.serotonin.m2m2.web.dwr.util.TranslationsFilter.doFilter(TranslationsFilter.java:37) 
              at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) 
              at com.serotonin.m2m2.web.dwr.util.ExceptionDetectionFilter.doFilter(ExceptionDetectionFilter.java:26) 
              at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) 
              at com.serotonin.m2m2.web.dwr.util.DwrPermissionFilter.doFilter(DwrPermissionFilter.java:45) 
              at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:428) 
              at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:431) 
              at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:283) 
              at org.directwebremoting.servlet.PlainCallHandler.handle(PlainCallHandler.java:52) 
              at org.directwebremoting.servlet.UrlProcessor.handle(UrlProcessor.java:101) 
              at org.directwebremoting.servlet.DwrServlet.doPost(DwrServlet.java:146) 
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) 
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) 
              at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) 
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669) 
              at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:83) 
              at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:300) 
              at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652) 
              at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) 
              at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 
              at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 
              at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 
              at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 
              at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 
              at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 
              at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 
              at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 
              at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) 
              at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 
              at org.eclipse.jetty.server.Server.handle(Server.java:499) 
              at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 
              at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 
              at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 
              at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 
              at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 
              at java.lang.Thread.run(Thread.java:745) 
      
      1 Reply Last reply Reply Quote 0
      • phildunlapP
        phildunlap
        last edited by phildunlap

        This is caused by the same issue as your medium priority pool not being able to save, probably (it is the same class you're trying to invoke methods in).

        I know you say you don't have any overrides, but I'm not sure I believe you. It doesn't help that I know you've had the BackgroundProcessing class overridden in the past. The only other thing I believe would cause that error is duplicate jars in your Mango/lib/ folder (specifically, multiple ma-core-2.x.x.jar I would think).

        1 Reply Last reply Reply Quote 0
        • P
          Pedro
          last edited by Pedro

          I have previously pasted my overrides file listing straight from the console find command output, so that should eliminate the "not sure I believe you" issue. Here it is again:

          $ find /opt/mango/overrides -type f
          /opt/mango/overrides/web/favicon.ico
          /opt/mango/overrides/web/MangoDailyScheduled.sh
          /opt/mango/overrides/web/images/favicon.ico
          /opt/mango/overrides/web/images/logo.png
          /opt/mango/overrides/web/images/Tides_icon.png
          /opt/mango/overrides/web/WEB-INF/tags/page.tag
          /opt/mango/overrides/web/WEB-INF/tags/html5/footer.tag
          /opt/mango/overrides/web/WEB-INF/tags/html5/footer.tag-orig
          /opt/mango/overrides/web/WEB-INF/tags/mobile-page.tag
          /opt/mango/overrides/properties/keystore.jks
          /opt/mango/overrides/properties/i18n.properties
          /opt/mango/overrides/properties/env.properties-derby~
          /opt/mango/overrides/properties/env.properties-mysql~
          /opt/mango/overrides/properties/env.properties
          /opt/mango/overrides/properties/env.properties.13Jan2015
          /opt/mango/overrides/__MACOSX/classes/._.DS_Store
          /opt/mango/overrides/__MACOSX/classes/com/._.DS_Store
          /opt/mango/overrides/__MACOSX/classes/com/serotonin/m2m2/._.DS_Store
          /opt/mango/overrides/__MACOSX/classes/com/serotonin/m2m2/rt/._.DS_Store
          /opt/mango/overrides/__MACOSX/classes/com/serotonin/._.DS_Store
          /opt/mango/overrides/classes/log4j.xml
          

          I don't know why there is a MACOSX override folder there as this is not a MAC. Can I delete it?

          Only one Mango/lib core file:

          $ ls /opt/mango/lib/ma-core*
          /opt/mango/lib/ma-core-2.7.4.jar
          

          There are 156 files in /opt/mango/lib/. All are dated Feb 22:

          $ ls -x /opt/mango/lib/ | wc -l
          156
          
          1 Reply Last reply Reply Quote 0
          • phildunlapP
            phildunlap
            last edited by

            I do not know what that __MACOSX directory is, but that the override path is to com.serotonin.m2m2.rt is a good sign it could be related to your issue. Definitely deletable from my perspective.

            Your jar count is also correct. I will try to find your system settings json in the spam folder, but I haven't seen that email yet.

            1 Reply Last reply Reply Quote 0
            • P
              Pedro
              last edited by

              I deleted __MACOSX/. I don't know where it came from, but I'm thinking perhaps one of you using a MAC inadvertently zipped it to me once. I can't think of another explanation. When circumstances force me to work up the courage to restart, I'll let you know how it went.

              1 Reply Last reply Reply Quote 0
              • P
                Pedro
                last edited by

                For what it's worth, /opt/mango/overrides/__MACOSX was dated Mar 16 2015. Again, I don't have a MAC.

                1 Reply Last reply Reply Quote 0
                • phildunlapP
                  phildunlap
                  last edited by

                  I do not know either, I am not a MAC guy. I suspect you are correct in how it got there.

                  The Mango/classes directory is also on the classpath. Could your override be in there?

                  1 Reply Last reply Reply Quote 0
                  • P
                    Pedro
                    last edited by Pedro

                    Thanks, I did not know to look there. I think you found the problem. I think I may have been asked to place some files there a while ago, and since they were not in /overrides/, I did not know to delete them during an upgrade. Can you please state very precisely which I should delete? Thanks.

                    $ find /opt/mango/classes/ -type f | xargs ls -l
                    -rw-r--r-- 1 root  root   1419 May  8  2015 /opt/mango/classes/com/serotonin/m2m2/rt/maint/BackgroundProcessing$1.class
                    -rw-r--r-- 1 root  root   5678 May  8  2015 /opt/mango/classes/com/serotonin/m2m2/rt/maint/BackgroundProcessing.class
                    -rw-r--r-- 1 root  root   3788 Feb 22 23:05 /opt/mango/classes/debug-log4j.xml
                    -rw-r--r-- 1 root  root   4349 Feb 22 23:05 /opt/mango/classes/env.properties
                    -rw-r--r-- 1 root  root  86283 Feb 22 23:05 /opt/mango/classes/i18n.properties
                    -rw-r--r-- 1 root  root   3756 Feb 22 23:05 /opt/mango/classes/log4j.xml
                    -rw-r--r-- 1 mango mango  4323 Jun 24  2014 /opt/mango/classes/org/jfree/data/Range.class
                    -rw-r--r-- 1 root  root     34 Feb 22 23:05 /opt/mango/classes/swagger.properties
                    
                    
                    1 Reply Last reply Reply Quote 0
                    • phildunlapP
                      phildunlap
                      last edited by

                      I didn't either, or I would have mentioned it sooner. You can delete your classes/com directory entirely.

                      1 Reply Last reply Reply Quote 0
                      • P
                        Pedro
                        last edited by

                        Deleted. I presume this will only take effect after a restart?

                        1 Reply Last reply Reply Quote 0
                        • phildunlapP
                          phildunlap
                          last edited by

                          Correct

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post