2014-01-28 2 views
0

Java, EJB 3, JPA, Websphere 및 Oracle과 같은 기술을 사용하는 응용 프로그램에 대해 작업하고 있습니다. 더 이상 derby를 사용하지 않지만 websphere에 귀를 배치하려고하면 다음 오류가 발생합니다.websphere에 응용 프로그램을 배치 할 수 없습니다.

발생 원인 : java.lang.NoClassDefFoundError : org.apache.derby.jdbc .EmbeddedDriver (초기화 실패) java.lang.J9VMInternals.initialize (J9VMInternals.java:140)에서 org.apache.derby.jdbc.EmbeddedDataSource.findDriver (알 소스)에 org.apache.derby.jdbc.EmbeddedDataSource에서 .getConnection (알 수없는 소스) at org.apache.derby.jdbc.EmbeddedDataSource.getConnection (알 수없는 소스) at org.apache.derby.jdbc.EmbeddedXADataSource.setupResourceAdapter (알 수없는 소스) at org.apache.derby.jdbc. 포함 된 XADataSource.getXAC (알 수없는 소스) (com.ibm.ws.rsadapter.spi.InternalGenericDataStoreHelper $ 1.run (InternalGenericDataStoreHelper.java:1221) at com.ibm.ws.security.util.AccessController.doPrivileged (AccessController.java:118) com.ibm.ws.rsadapter.spi.WSRdbDataSource.getPooledConnection (WSRdbDataSource.java:2308) com.ibm에서 에서 com.ibm.ws.rsadapter.spi.InternalGenericDataStoreHelper.getPooledConnection (InternalGenericDataStoreHelper.java:1258) 에서 . (com.ibm.ejs.j2c.FreePool.createOrWaitForConnection에서 ) FreePool.java:1711) at com.ibm.ejs.j2c.Poo lManager.reserve (PoolManager.java:2471) at com.ibm.ejs.j2c.ConnectionManager.allocateMCWrapper (ConnectionManager.java:1059) at com.ibm.ejs.j2c.ConnectionManager.allocateConnection (ConnectionManager.java:696) com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection (WSJdbcDataSource.java:635) com.ibm에서 에서 com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection (WSJdbcDataSource.java:668) 에서 . ws.extensionhelper.db.impl.DatabaseHelperImpl $ DSWrapper.getConnection (DatabaseHelperImpl.java:1584) at com.ibm.ws.extensionhelper.db.impl.DatabaseHelperImpl.getConnection (DatabaseHelperImpl.java:746) at com.ibm. ws.extensionhelper.db.impl.DatabaseHelperImpl.getConnection (DatabaseHelperImpl.java:1354) at com.ibm.ws.extensionhelper.db.impl.Data (DatabaseHelperImpl.java:497) ... 75 more 에 의해 발생했습니다. java.lang.SecurityException : sealing violation : org.apache.derby.impl.store.raw.data 패키지는 java.net.URLClassLoader.defineClass (URLClassLoader.java:487)의 에 봉인되었습니다. java.net.URLClassLoader.defineClass (URLClassLoader.java:451)) at java.net.URLClassLoader.access $ 300 (URLClassLoader.java:79) at java.net.URLClassLoader $ ClassFinder.run (URLClassLoader.java:1034) at java.security.AccessController.doPrivileged (AccessController.java : 284) at java.net.URLClassLoader.findClass (URLClassLoader.java:429) a com.ibm.ws.bootstrap.ExtClassLoader.loadClass에서 java.lang.ClassLoader.loadClass (ClassLoader.java:653) 에서 t com.ibm.ws.bootstrap.ExtClassLoader.findClass (ExtClassLoader.java:150) (ExtClassLoader .Java : 90) at java.lang.ClassLoader.loadClass (ClassLoader.java:619) at java.lang.ClassLoader.defineClassImpl (네이티브 메소드) at java.lang.ClassLoader.defineClass (ClassLoader.java:275) at java.security.SecureClassLoader.defineClass (SecureClassLoader.java:69) at java.net.URLClassLoader.defineClass (URLClassLoader.자바 : java.net.URLClassLoader.defineClass (URLClassLoader.java:451 540) ) java.net.URLClassLoader.access $ (300) (URLClassLoader.java:79) 이는 java.net.URLClassLoader $ ClassFinder.run에서 (URLClassLoader의에서 .java : 1034) at java.security.AccessController.doPrivileged (AccessController.java:284) (java.net.URLClassLoader.java:429) at com.ibm.ws.bootstrap.ExtClassLoader.findClass (ExtClassLoader.java:150) at java.lang.ClassLoader.loadClass (ClassLoader.java:653) at com.ibm.ws.bootstrap.ExtClassLoader.loadClass (ExtClassLoader.java:90) at java.lang.ClassLoader .loadClass (ClassLoader.java:619) 에서 java.lang.Class.forNameImpl (기본 메소드)org.apache.derby.impl.services.monitor.BaseMonitor.getImplementations (알 수없는 소스)의 에서 at org.apache.derby.impl.services.monitor (org.apache.derby.impl.services.monitor에서 ) .BaseMonitor.getDefaultImplementations (알 수없는 소스) at org.apache.derby.impl.services.monitor.BaseMonitor.runWithState (알 수없는 소스) at org.apache.derby.impl.services.monitor.FileMonitor (알 수없는 소스) org.apache.derby.iapi.services.monitor.Monitor.startMonitor (알 수없는 소스) at org.apache.derby.iapi.jdbc.JDBCBoot.boot (알 수없는 소스) at org.apache.derby.jdbc.EmbeddedDriver .boot (알 수없는 소스) at org.apache.derby.jdbc.EmbeddedDriver (알 수없는 소스) at java.lang.J9VMInternals.initializeImpl (네이티브 메쏘드 OD) java.lang.Class.forName (Class.java:172) 에서 java.lang.Class.forNameImpl (기본 방법) 에서 java.lang.J9VMInternals.initialize (J9VMInternals.java:200) 에서 닷컴에서 .ibm.ws.runtime.component.EJBContainerImpl.timerDBExists (EJBContainerImpl.java:2091) com.ibm.ws.runtime.component.EJBContainerImpl.startModule (EJBContainerImpl.java:2550) 에서 ... (67)보다

그건 그렇고, 내 jdbcprovider 및 datasource 제대로 구성되어 있습니다. 나는 단지 내 응용과 더비 사이의 관계를 이해하지 못한다.

아이디어가 있으십니까? 어떤 도움이라도 대단히 감사하겠습니다!

+0

관련 질문에서 제안 사항을 살펴 보셨습니까? http://stackoverflow.com/questions/5597947/issue-with-noclassdeffounderror-error-in-a-web-environment-spring-wicket-derby- j –

답변

0

IBM Websphere는 Derby를 내부 데이터베이스로 사용합니다. 시작할 때 서버를 다시 시작하고 서버 로그를 검사하십시오. 서버 구성에 문제가있어 응용 프로그램이 정상적으로 작동했을 가능성이 큽니다. 그런데이 서버에 다른 응용 프로그램을 배포하려고 시도 했습니까?