我收到一个奇怪的异常:
JBWEB000289: Servlet InitServlet threw load() exception:
java.lang.ClassNotFoundException:
**com.ibm.as400.access.ConnectionPoolException**
当我使用ConnectionPoolException类的类初始化时,就会发生这种情况。
我正在使用Java 1.7 sun jdk在JBoss eap 6.4上运行此项目。
我有一个globals.java类(as400manager.jar->这是另一个项目,并添加为对其他项目的依赖关系),它为我准备了as400连接。还有我以前用来返回Connect对象的信息。
问题是,当我尝试在此类中使用函数时,它可以工作,但是当我尝试使用其准备连接对象并返回的getInstance方法时,出现此异常。
这是我称之为Globals Class get实例方法的地方:
public PRCConnect(KYSAuthType auth) {
this.auth = auth;
g = Globals.getInstance();
}
这是getInstance方法:
public static Globals getInstance() {
return instance;
}
它甚至没有返回实例行。只是抛出异常然后消失。
Globals类是我为与as400数据库相关的常见目的而构建的其他项目的一部分。它在as400manager中。
我在pom.xml中具有jt400-9.3.jar作为依赖项,并且肯定有该类。在任何其他应用程序中都没有与此相关的错误。
这是完整的错误跟踪:
17:37:33,485 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/CommonsApp]] (ServerService Thread Pool -- 55) JBWEB000289: Servlet InitServlet threw load() exception: java.lang.ClassNotFoundException: com.ibm.as400.access.ConnectionPoolException from [Module "deployment.CommonsApp.ear.CommonsAppWeb.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.6.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.6.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) [jboss-modules.jar:1.3.6.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.6.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.6.Final-redhat-1]
at com.BBBBBBBB.as400.process.PRCConnect.<init>(PRCConnect.java:31) [AS400Manager.jar:]
at com.BBBBBBBB.as400.operation.KYSServisInitPort.connect(KYSServisInitPort.java:36) [AS400Manager.jar:]
at com.BBBBBBBB.servis.util.shell.ShellFactory.getKYSAuthType(ShellFactory.java:456) [classes:]
at com.BBBBBBBB.servis.util.shell.ShellFactory.getKYSAuthType(ShellFactory.java:437) [classes:]
at com.BBBBBBBB.servis.data.StaticTable.loadStaticTables(StaticTable.java:642) [classes:]
at com.BBBBBBBB.servis.util.InitServlet.statikTablolar(InitServlet.java:374) [classes:]
at com.BBBBBBBB.servis.util.InitServlet.load(InitServlet.java:295) [classes:]
at com.BBBBBBBB.servis.util.InitServlet.init(InitServlet.java:269) [classes:]
at javax.servlet.GenericServlet.init(GenericServlet.java:242) [jboss-servlet-api_3.0_spec-1.0.2.Final-redhat-2.jar:1.0.2.Final-redhat-2]
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1194) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1]
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1100) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1]
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3593) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3802) [jbossweb-7.5.7.Final-redhat-1.jar:7.5.7.Final-redhat-1]
at org.jboss.as.web.deployment.WebDeploymentService.doStart(WebDeploymentService.java:163) [jboss-as-web-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21]
at org.jboss.as.web.deployment.WebDeploymentService.access$000(WebDeploymentService.java:61) [jboss-as-web-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21]
at org.jboss.as.web.deployment.WebDeploymentService$1.run(WebDeploymentService.java:96) [jboss-as-web-7.5.0.Final-redhat-21.jar:7.5.0.Final-redhat-21]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_80]
at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_80]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_80]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_80]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_80]
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
我期望的是获得连接对象,并进一步运行我的查询器,依此类推。
我不想太多更改代码,因为这是一个旧项目,并且有很多地方在使用它。
谢谢。
答案 0 :(得分:0)
使用maven重新部署后,问题已解决。上次更改后,Jar尚未从代码中更新。看来这就是问题所在