2012-05-07 3 views
0

Разверните файл войны в weblogic 10.3.3, но встретите эту ошибку.SLF4J не работает при развертывании войны с Weblogic

<May 7, 2012 2:40:10 PM ICT> <Error> <Deployer> <VIEAE747399> <AdminServer> <[STANDBY] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1336376410618> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1336376405480' for task '2'. Error is: 'weblogic.application.ModuleException: [HTTP:101216]Servlet: "quotation-service" failed to preload on startup in Web application: "service-quotation.war". 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0' defined in URL [zip:C:/Oracle/Middleware/user_projects/domains/a2_domain/servers/AdminServer/tmp/_WL_user/service-quotation/aio4oc/war/WEB-INF/lib/quotation-storage-2_0_0.jar!/config/quotation-storage-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in URL [zip:C:/Oracle/Middleware/user_projects/domains/a2_domain/servers/AdminServer/tmp/_WL_user/service-quotation/aio4oc/war/WEB-INF/lib/quotation-storage-2_0_0.jar!/config/quotation-storage-context.xml]: Invocation of init method failed; nested exception is java.lang.ExceptionInInitializerError 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) 
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) 
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) 
... 

Caused by: java.lang.ExceptionInInitializerError 
at org.hibernate.ejb.Ejb3Configuration.<clinit>(Ejb3Configuration.java:130) 
at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:72) 
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:225) 
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:308) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417) 
... 70 more 
Caused by: java.lang.IllegalStateException: org.slf4j.LoggerFactory could not be successfully initialized. See also http://www.slf4j.org/codes.html#unsuccessfulInit 
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:282) 
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:248) 
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:261) 
at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:197) 
... 76 more 

В WEB-INF/Lib сервис-quotation.war ниже файлы включены

log4j-1.2.16.jar 
slf4j-api-1.6.1.jar 
slf4j-log4j12-1.6.1.jar 

Я ценю любое предложение, намеки.

Примечание: Я развертываюсь эта война с успехом на Tomcat 6.

+0

Есть ли сообщение об ошибке, которое регистрируется до этого исключения или любая информация после него? 'org.slf4j.LoggerFactory не удалось успешно инициализировать' не происходит без причины, и об этом обычно говорят по этой причине. – Thomas

+0

@ Томас, вот и все сообщения об ошибках, которые у меня есть. Я подозреваю, что мне нужно добавить эти файлы jar в weblogic, но я не уверен, куда их вставлять. – bnguyen82

+1

Вы читали веб-страницу, упомянутую в исключении? Если да, то что произошло, когда вы пробовали, что он предлагает? – skaffman

ответ

0

Спасибо всем,

Наконец я нашел решение, чтобы исправить ошибки log4j. Я добавляю ниже файл weblogic.xml в папку WEB-INF, чтобы проинструктировать weblogic, чтобы использовать банки slf4j внутри файла войны. Мне даже не нужно добавлять эти файлы jar в папку установки weblogic.

<!DOCTYPE weblogic-web-app PUBLIC "-//BEA 
Systems, Inc.//DTD Web Application 7.0//EN" 
"http://www.bea.com/servers/wls700/dtd/weblogic700-web-jar.dtd"> 
<weblogic-web-app> 
<container-descriptor> 
<prefer-web-inf-classes>true</prefer-web-inf-classes> 
</container-descriptor> 
</weblogic-web-app> 

Тогда для того, чтобы преодолеть проблему гибернации я добавляю ниже линии первой строки кода в файле setDomainEnv.cmd для включения hiberante разделяемую библиотеку в WebLogic

set PRE_CLASSPATH=%PRE_CLASSPATH%;C:\Oracle\Middleware\modules\javax.persistence_1.1.0.0_2-0.jar;C:\Oracle\Middleware\modules\com.oracle.jpa2support_1.0.0.0_2-1.jar 

(PLS первый чек выше в Пути к файлам не существует)

Надеюсь, это будет полезно для тех, кто нуждается.