2013-07-02 3 views
1

내 패키지 모델은 EAR에 두 개의 war 파일이 있고 모든 공통 jar 파일이 EAR/lib 디렉토리에 있습니다.Log4J가 클래스 경로에 없습니다.

일부 출력을 PDF 형식으로 인쇄 할 때 apache fop jar를 사용하고 있습니다. 내가 출력을 인쇄하려고하면 지금은

`

]] Root cause of ServletException. 
    java.lang.NoClassDefFoundError: org/apache/log4j/Category 
     at org.apache.avalon.framework.logger.Log4JLogger.info(Log4JLogger.java:73) 
     at org.apache.fop.fo.FOTreeBuilder.startDocument(FOTreeBuilder.java:239) 
                            om.sun.org.apache.xml.internal.serializer.ToSAXHandler.startDocumentInternal(ToSAXHandler.java:95) 
     at com.sun.org.apache.xml.internal.serializer.SerializerBase.startDocument(SerializerBase.java:1216) 
     at GregorSamsa.transform() 
     Truncated. see log file for complete stacktrace 

Caused By: java.lang.ClassNotFoundException: org.apache.log4j.Category 
     at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:280) 
     at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:253) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 
     at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:177) 
     Truncated. see log file for complete stacktrace` 

아니 fop.jar 이래 일어나는 특정 전쟁의 한 부분이며, 내가에 log4j.jar에 배치하려고하는 이유 반드시 아래의 예외를 얻을 specfici 전쟁뿐만 아니라 아무 도움도.

+0

이 메소드가없는 servlent 엔진에서 사용하는 다른 log4j 구현이있을 수 있습니까? – fge

+0

클래스 패스에는 다른 모든 항아리가 있습니다. – sidshu

+0

예. _app 서버 _의 버전이 귀하의 _app 서버 _보다 우선합니다. – fge

답변

1

나는 마침내 작동하게 만듭니다.

사실 fop.jar에는 전쟁의 일부가 아니고 귀에있는 일반적인 jar 폴더의 일부인 avalonXX.jar에 대한 종속성이 있습니다. jar 파일을 war lib 디렉토리와 VOILA로 옮겼습니다 ... 주석 주셔서 감사합니다.

1

나는 그것이 클래스 로더 이슈라고 생각한다. 사용중인 Application Server를 지정하지 않았지만 어느 것이 든 상관없이 응용 프로그램을로드하는 클래스 로더에 jar를 사용할 수 있는지 확인해야합니다. 귀의 클래스 로더 및 관련 정책에 대한 설정을 확인하십시오.

+0

weblogic 서버를 사용하고 있습니다. 클래스 로더 설정과 정책을 확인하는 방법을 더 구체적으로 지정할 수 있습니까 – sidshu

+0

@sidshu log4j jar를 $ DOMAIN_DIR/lib에 넣으려고 할 수 있습니까? –

+0

가 가까이에 왔지만, 그런 식으로 작동하지만 이제는 두 가지 전쟁에 대한 로그가 단일 로그 파일로 이동하게됩니다. – sidshu

관련 문제