Время от времени в нашем приложении возникают следующие исключения, когда пользователь пытается загрузить приложение через веб-запуск java:
java.lang.NoClassDefFoundError: jnlp.sample.servlet.ResourceCatalog$PathEntries
at jnlp.sample.servlet.ResourceCatalog.lookupResource(ResourceCatalog.java:109)
at jnlp.sample.servlet.JnlpDownloadServlet.handleVersionRequest(JnlpDownloadServlet.java:233)
...
Caused by: java.lang.ClassNotFoundException: jnlp.sample.servlet.ResourceCatalog$PathEntries
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1340)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)
... 44 more
или
java.lang.NoClassDefFoundError: jnlp.sample.util.VersionID
at jnlp.sample.util.VersionString.<init>(VersionString.java:58)
или
java.lang.NoClassDefFoundError: jnlp.sample.servlet.XMLNode
at jnlp.sample.servlet.XMLParsing.convert(XMLParsing.java:67)
Перезапуск Tomcat устраняет эти проблемы.
У кого-нибудь есть идеи - что может быть основной причиной этих исключений?
UPDATE:
Мне кажется, что это исключение существует на клиентах, которые запускают Tomcat только на Java 1.5.
И, насколько я понимаю, такого исключения нет на клиентах, использующих Java 1.4.