I just attempted to upgrade RAMADDA from 1.5a to 1.5b but had to roll back due to a java error.
On the web page, I get the normal content wrappers but:
An error has occurred:
Expected static method
org.ramadda.repository.Repository.getUrlBase()Ljava/lang/String;
...in what looks to be a JavaScript/CSS-generated window where the content would
normally be.
In catalina.out I get the errors below when the page is loaded.
Any hints would be much appreciated.
catalina.out errors.
RAMADDA ERROR:Error handling request:/repository/ ip:<IP ADDRESS="" OMITTED="">
java.lang.IncompatibleClassChangeError: Expected static method org.ramadda.repository.Repository.getUrlBase()Ljava/lang/String; at org.ramadda.geodata.thredds.CatalogOutputHandler.getEntryLinks(CatalogOutputHandler.java:260) at org.ramadda.repository.Repository.getOutputLinks(Repository.java:3468) at org.ramadda.repository.output.OutputHandler.getEntryFormStart(OutputHandler.java:1149) at org.ramadda.repository.output.OutputHandler.getEntriesList(OutputHandler.java:1387) at org.ramadda.repository.output.OutputHandler.getEntriesList(OutputHandler.java:1353) at org.ramadda.repository.output.WikiManager.getWikiIncludeInner(WikiManager.java:1612) at org.ramadda.repository.output.WikiManager.getWikiInclude(WikiManager.java:936) at org.ramadda.repository.output.WikiManager.handleWikiImport(WikiManager.java:2268) at org.ramadda.repository.output.WikiManager.getWikiPropertyValue(WikiManager.java:656) at org.ramadda.util.WikiUtil.wikifyInner(WikiUtil.java:555) at org.ramadda.util.WikiUtil.wikify(WikiUtil.java:331) at org.ramadda.repository.output.WikiManager.wikifyEntry(WikiManager.java:2801) at org.ramadda.repository.output.WikiManager.wikifyEntry(WikiManager.java:2763) at org.ramadda.repository.output.HtmlOutputHandler.outputGroup(HtmlOutputHandler.java:1633) at org.ramadda.repository.EntryManager.processGroupShow(EntryManager.java:718) at org.ramadda.repository.EntryManager.processEntryShow(EntryManager.java:649) at org.ramadda.repository.EntryManager.processEntryShow(EntryManager.java:509) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.ramadda.repository.ApiMethod.invoke(ApiMethod.java:281) at org.ramadda.repository.Repository.getResult(Repository.java:2807) at org.ramadda.repository.Repository.handleRequestInner(Repository.java:2591) at org.ramadda.repository.Repository.handleRequest(Repository.java:2554) at org.ramadda.repository.server.RepositoryServlet.doGet(RepositoryServlet.java:292) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) at java.lang.Thread.run(Thread.java:636)
Hi Adam-
Did you update your plugins as well or just the WAR file? You'll need to
put a new allplugins.jar in your servers home .ramadda/plugins directory.
Don
On Fri, May 31, 2013 at 12:55 PM, Adam Carheden acarheden@users.sf.netwrote:
Related
Support Requests: #7
Are you sure the upgrade process is simply this?
cp repository.war webapps/
cp applugins.jar ramadda_home/plugins/
Installing applugins.jar results in a tomcat error page that reports:
ucar.unidata.util.WrapperException: Error loading plugin class:org/ramadda/geodata/cdmdata/CDOOutputHandler.classjava.lang.NoClassDefFoundError: org/ramadda/data/process/DataProcessProvider
...and in catalina.out
Exception: ucar.unidata.util.WrapperException: Error loading plugin class:org/ramadda/geodata/cdmdata/CDOOutputHandler.classjava.lang.NoClassDefFoundError: org/ramadda/data/process/DataProcessProvider
java.lang.NoClassDefFoundError: org/ramadda/data/process/DataProcessProvider
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at org.ramadda.util.MultiJarClassLoader.loadClass(MultiJarClassLoader.java:443)
at org.ramadda.util.MultiJarClassLoader.loadClassFromJar(MultiJarClassLoader.java:266)
at org.ramadda.util.MultiJarClassLoader.addJar(MultiJarClassLoader.java:154)
at org.ramadda.repository.PluginManager.processPluginFile(PluginManager.java:336)
at org.ramadda.repository.PluginManager.loadPlugins(PluginManager.java:255)
at org.ramadda.repository.PluginManager.init(PluginManager.java:219)
at org.ramadda.repository.Repository.initProperties(Repository.java:979)
at org.ramadda.repository.Repository.init(Repository.java:800)
at org.ramadda.repository.server.RepositoryServlet.createRepository(RepositoryServlet.java:182)
at org.ramadda.repository.server.RepositoryServlet.createRepository(RepositoryServlet.java:155)
at org.ramadda.repository.server.RepositoryServlet.doGet(RepositoryServlet.java:270)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:636)
Caused by: java.lang.ClassNotFoundException: org.ramadda.data.process.DataProcessProvider
at java.lang.ClassLoader.findClass(ClassLoader.java:373)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at org.ramadda.util.MultiJarClassLoader.loadClass(MultiJarClassLoader.java:332)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334)
... 30 more
That should do it - though the allplugins.jar should be copied first.
Just in case there was some problem I have relbuilt and re-released the 1.5b:
https://sourceforge.net/projects/ramadda/files/ramadda1.5b/
Go and get the new repository.war and allplugins.jar file. shutdown tomcat. copy the war and plugins as above and restart tomcat.
-Jeff
I upgaded to Tomcat 7.0.40 (from Debian tomcat6-6.0.35-1+squeeze2) and JDK1.7.0_21 (from Debian's openjdk-6-jre-headless 6b18-1.8.13-0+squeeze2) and things worked.
For the google record:
Before upgrading, I tried clean installs of repository.war and allplugins.jar, ensuring I removed allplugins.zip from ramadda_home/plguins/ and ensuring tomcat6 was shut down prior to moving files, but got the same results (exceptions listed above in catalina.out and by tomcat on the ramadda website), so it appears to be an incompatibility with at least certain versions of java1.6 or tomcat6 introduced in ramadda1.5b.
Thanks for the help.
Hi Adam-
First, glad you got this working and sorry for the problems.
The error that you sent about the IncompatibleClassChangeError shouldn't be
due to a tomcat version, but more of a problem with the allplugins file.
We will be sure to update the release notes to make clear that you need to
remove the allplugins.zip and replace with allplugins.jar.
Was this the error you were getting when you used the new 1.5b release that
Jeff made this weekend and you were running Tomcat6 or was there a new
error you were getting?
Since the new version includes the latest netCDF-Java/TDS code in it and
that recommends Java7/Tomcat7, but only requires Java6/Tomcat6:
http://www.unidata.ucar.edu/projects/THREDDS/tech/TDS.html
I'm wondering if that is causing some other problems than the error above.
I will test Tomcat6 on my other machine tonight and see if I have similar
problems.
Again, sorry for the problems, but thanks for letting us know about this.
Don
On Mon, Jun 3, 2013 at 10:37 AM, Adam Carheden carheden@users.sf.netwrote:
Related
Support Requests: #7
Don,
I got the same error both with the original version and with the new
version Jeff released over the weekend. This morning, I:
I got the same error again, so I took a wild guess and tried the latest
tomcat+java, which worked, so I concluded tomcat6 and/or java1.6 where
the culprits. Perhaps the upgrade process has issues even if a new
install with tomcat6/java1.6 works (which seams a reasonable hypothesis
based 'IncompatibleClassChangeError'). Or possibly some corrupt
something-or-other in my ramadda_home from not originally removing
allplugins.zip before deploying allplugins.jar.
I have backups/test environment, etc. if you can't reproduce the error
and want me to try something.
I prefer to stick to tomcat/java that comes with my distro for somewhat
easier updates, but neither are horrible to deploy outside a package
management system.
Thanks
--
Adam Carheden
SNAT RAL UCAR
x2753
On 06/03/2013 12:19 PM, Don Murray wrote:
Related
Support Requests: #7
Hi Adam-
I was able to successfully run RAMADDA 1.5b downloaded from Sourceforge
under Tomcat 6.0.32. In the past, I've seen cases where Tomcat doesn't
unpack a new WAR file and I'm wondering if this was the case for you. In
addition to what you did, you could also move/delete the repository
directory under webapps. Another thing that seems to work well is to use
the Tomcat manager and undeploy/redeploy the war file.
Sorry I don't have a definitive answer for you about the problems you were
seeing. I still think the initial error was a war/plugins mismatch
unrelated to the tomcat version.
If you want to try again under tomcat6 let me know if you still have the
same errors.
Don
On Mon, Jun 3, 2013 at 12:47 PM, Adam Carheden carheden@users.sf.netwrote:
Related
Support Requests: #7
Thanks for checking. I'll stick with tomcat7 for now since it's working.
We'll be upgrading to Debian Wheezy shortly anyway, which has a tomcat7
native package.
--
Adam Carheden
SNAT RAL UCAR
x2753
On 06/04/2013 01:17 PM, Don Murray wrote:
Related
Support Requests: #7