我有 6 个 JSP 应用程序在 Windows Server 2003 机器上运行,带有 JRun 4 和 Updater 7 和 Java 1.6.0_14。除了其中一个和我在 JRun 中创建的任何新应用程序之外,我所有的应用程序都运行良好。我只是找不到配置或权限的差异在哪里。
每当我尝试访问不工作的应用程序上的 JSP 文件时,我都会收到以下错误。
java.lang.ClassNotFoundException: jrun__jsp__navigation__cm_doc2ejsp1a
at jrun.jsp.JSPClassLoader.findClass(JSPClassLoader.java:135)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at jrun.jsp.JSPEngine.loadClass(JSPEngine.java:657)
at jrun.jsp.JSPEngine.loadClass(JSPEngine.java:646)
at jrun.jsp.JSPEngine.loadServlet(JSPEngine.java:874)
at jrun.jsp.JSPEngine.getServlet(JSPEngine.java:728)
at jrun.jsp.JSPServlet.service(JSPServlet.java:115)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
javax.servlet.ServletException: JSPTranslator.CouldNotLoadClass/jsp/navigation/cm_doc.jsp
at jrun.jsp.JSPEngine.loadServlet(JSPEngine.java:880)
at jrun.jsp.JSPEngine.getServlet(JSPEngine.java:728)
at jrun.jsp.JSPServlet.service(JSPServlet.java:115)
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
我了解该错误意味着无法将 JSP 文件编译到 WEB-INF/jsp 文件夹中,但我不知道为什么。所有其他网站都运行良好。此外,对于我在尝试调试时创建的任何新 JRun 应用程序都有相同的问题。我们最近将 JVM 从 1.4.2.18 更新到 1.6.0.14,但不是最近,而且其他站点正在运行的事实让我感到困惑。我不知道,我很茫然。为了完整起见,我将发布我的 jrun-web.xml 文件,如果有任何可能有帮助的特定日志,请告诉我。感谢您提供的任何帮助或建议。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jrun-web-app PUBLIC "-//Macromedia, Inc.//DTD jrun-web 4.0//EN" "http://jrun.macromedia.com/dtds/jrun-web.dtd">
<jrun-web-app>
<session-config>
<persistence-config>
<active>true</active>
</persistence-config>
<replication-config>
<active>false</active>
</replication-config>
</session-config>
<context-root>/</context-root>
<compile>false</compile>
<reload>false</reload>
<uri-character-encoding>UTF-8</uri-character-encoding>
<virtual-mapping>
<resource-path>/*</resource-path>
<system-path>D:\WebApps\RegAbbrev\</system-path>
</virtual-mapping>
<enable-jrun-web-services>true</enable-jrun-web-services>
<virtual-mapping>
<resource-path>/</resource-path>
<system-path />
</virtual-mapping>
</jrun-web-app>