Struts2, JPA (с поддержкой гибернации), Spring… Как Struts2, так и Spring ведение журнала работают через log4j, но не через спящий режим

Редактировать 3 : Работает! Короче говоря: в папке lib glassfish были: slf4j-api-1.5.8.jar и jlf4j-jdk14-1.5.8.jar! В любом случае я переместил их в "старую" папку, созданную в lib, а затем скопировал в папку следующее:

slf4j-api-1.6.1.jar
slf4j-log4j12-1.6.1.jar jcl-over-slf4j-1.6.1.jar log4j-1.2.16.jar (как раз то, что у меня было в пути к классу, но теперь на сервере приложений, и все работает, как ожидалось)

Я мог бы поместить файл log4j.xml и в glassfish, но я просто оставлю его в своем приложении, поэтому я может вести журнал для конкретного приложения.

Я дам ответ, переработаю вопрос, чтобы он стал более полезным (в настоящее время слишком много информации, которая бесполезна).

Обновление : Я собирался ответить самостоятельно, но долго ждал. Приму ответ Стивенса, так как он оказался наиболее полезным при выяснении этого вопроса.

То, что следует ниже, является историческим ...


Править 2: Я не знаю почему, но, возможно, ему есть чем заняться. with, развертывание на Glassfish v3. Glassfish использует ведение журнала утилит Java, вот изображение http://blog.saddey.net/2010/03/27/how-to-deploy-a-grails-application-to-glassfish/ и описание из того, что делают некоторые люди с Grails, чтобы вести журнал (не то чтобы я использую grails), может быть, использование jul имеет больше смысла, как показывает эта диаграмма?

Я также получаю эти ошибки, если я повторно развертываюсь, не удаляя приложение frist:

SEVERE: log4j:ERROR log4j called after unloading, see http://logging.apache.org/log4j/1.2/faq.html#unload.
SEVERE: java.lang.IllegalStateException: Class invariant violation

Edit , я все еще застрял:

Ведение журнала работает для Spring и Struts2, но я не могу получить спящий режим для печати SQL (или чего-либо еще) с помощью log4j, и это важно, потому что, хотя я могу перейти в спящий режим для печати SQL, используя в persistence.xml единственный способ показать параметры SQL - это ведение журнала, что для меня важно прямо сейчас.

Для большей ясности есть некоторые информационные сообщения, связанные со спящим режимом, когда приложение запускается, но пока я делаю запросы к БД ничего не отображается.

Итак, раз уж я схожу с ума, я перечисляю свой pom, log4j.xml, applicationContext.xml, и, если у меня будет время, я дам ссылки на многие сайты, которые я посетил ( включая SO Q&A).

pom.xml

Возникает очевидный вопрос, какие файлы журналов используются, и ответ: jcl-over-slf4j-1.6.1.jar, slf4j-log4j12-1.6.1.jar, log4j-1.2.16.jar и slf4j-api-1.6.1 (я также исключил commons-logging) ... также пробовал версия 1.5.8 для jcl-over-slf4j, slf4j-api.


    4.0.0

    com.test
    PartGroupMaster
    2011.04.12
    war

    PartGroupMaster Web App

    
        ${project.build.directory}/endorsed
        UTF-8
        gfv3ee6
    

    
        
            JBoss Repo
            http://repository.jboss.com/maven2
            JBoss Repo
        
        
            ibiblio mirror
            http://mirrors.ibiblio.org/pub/mirrors/maven2/
        
        
            jboss-public-repository-group
            JBoss Public Maven Repository Group
            https://repository.jboss.org/nexus/content/groups/public/
            default
            
                true
                never
            
            
                true
                never
            
        
        
            http://ftp.ing.umu.se/mirror/eclipse/rt/eclipselink/maven.repo
            eclipselink
            default
            Repository for library Library[eclipselink]
        
    

    
        
            org.apache.struts
            struts2-core
            2.2.3
        
        
            org.apache.struts
            struts2-convention-plugin
            2.2.3
        
        
            org.apache.struts
            struts2-spring-plugin
            2.2.3
            
                
                    spring-beans
                    org.springframework
                
                
                    spring-context
                    org.springframework
                
                
                    spring-core
                    org.springframework
                
                
                    spring-web
                    org.springframework
                
            
        
        
            org.springframework
            spring-tx
            3.0.5.RELEASE
            
                
                    commons-logging
                    commons-logging
                
            
        
        
            org.springframework
            spring-orm
            3.0.5.RELEASE
        
        
            org.springframework
            spring-web
            3.0.5.RELEASE
        
        
            mysql
            mysql-connector-java
            5.1.15
        
        
            org.hibernate
            hibernate-entitymanager
            3.6.6.Final
        
        
            org.apache.struts
            struts2-config-browser-plugin
            2.2.3
        
        
            org.eclipse.persistence
            javax.persistence
            2.0.3
            provided
        
        
            org.apache.struts
            struts2-json-plugin
            2.2.3
        
        
            commons-beanutils
            commons-beanutils
            1.8.0
            
                
                    commons-logging
                    commons-logging
                
            
        
        
            org.slf4j
            slf4j-log4j12
            1.6.1
        
        
            log4j
            log4j
            1.2.16
        
        
            org.slf4j
            jcl-over-slf4j
            1.6.1
        
        
            org.hibernate
            hibernate-validator
            4.2.0.Final
        
        
            org.hibernate
            hibernate-jpamodelgen
            1.1.1.Final
        
            
                    org.slf4j
                    slf4j-api
                    1.6.1
            
            
            javax
            javaee-web-api
            6.0
            provided
        
        
            junit
            junit
            4.8.1
            test
        
    

    
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                2.3.2
                
                    1.6
                    1.6
                    
                        ${endorsed.dir}
                    
                
            
            
                org.apache.maven.plugins
                maven-war-plugin
                2.1
                
                    false
                
            
            
                org.apache.maven.plugins
                maven-dependency-plugin
                2.1
                
                    
                        validate
                        
                            copy
                        
                        
                            ${endorsed.dir}
                            true
                            
                                
                                    javax
                                    javaee-endorsed-api
                                    6.0
                                    jar
                                
                            
                        
                    
                
            

            
                maven-antrun-plugin
                
                    
                        process-classes
                        
                            run
                        
                    
                
                
                    
                        
                            
                                
                                
                            
                        
                        
                            
                                
                            
                        
                    
                
            
        
        PartGroupMaster
    

log4j.xml





    
        
         
             
         
    

    
    
        
         
    

    
        
         
    

    
        
         
    

  
    
        
         
    

    
        
         
    

    
        
         
    

    
        
         
     
   
    
         
         
     
 

applicationContext.xml (обрезано)



                
    
    

    

    
        
    

    

    ... removed service beans... 

    

Что выводится на консоль при запуске:

INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
INFO: Hibernate Annotations 3.5.0-Final
INFO: Hibernate 3.5.0-Final
INFO: hibernate.properties not found
INFO: Bytecode provider name : javassist
INFO: using JDK 1.4 java.sql.Timestamp handling
INFO: Hibernate Commons Annotations 3.2.0.Final
INFO: Hibernate EntityManager 3.5.0-Final

...removed logging for peristence unit which was mostly just pages of "Binding Named query:..."

INFO: Hibernate Validator not found: ignoring
INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
INFO: Unable to find org.hibernate.search.event.FullTextIndexEventListener on the classpath. Hibernate Search is not enabled.
INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
INFO: Initializing connection provider: org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider
INFO: Using provided datasource
INFO: RDBMS: DB2 UDB for AS/400, version: 06.01.0000 V6R1m0
INFO: JDBC driver: AS/400 Toolbox for Java JDBC Driver, version: 9.4
INFO: Using dialect: org.hibernate.dialect.DB2400Dialect
INFO: Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4
INFO: Transaction strategy: org.hibernate.ejb.transaction.JoinableCMTTransactionFactory
INFO: instantiating TransactionManagerLookup: org.hibernate.transaction.SunONETransactionManagerLookup
INFO: instantiated TransactionManagerLookup
INFO: Automatic flush during beforeCompletion(): disabled
INFO: Automatic session close at end of transaction: disabled
INFO: Scrollable result sets: enabled
INFO: JDBC3 getGeneratedKeys(): enabled
INFO: Connection release mode: auto
INFO: Default batch fetch size: 1
INFO: Generate SQL with comments: disabled
INFO: Order SQL updates by primary key: disabled
INFO: Order SQL inserts for batching: disabled
INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
INFO: Using ASTQueryTranslatorFactory
INFO: Query language substitutions: {}
INFO: JPA-QL strict compliance: enabled
INFO: Second-level cache: enabled
INFO: Query cache: disabled
INFO: Cache region factory : org.hibernate.cache.impl.NoCachingRegionFactory
INFO: Optimize cache for minimal puts: disabled
INFO: Structured second-level cache entries: disabled
INFO: Statistics: disabled
INFO: Deleted entity synthetic identifier rollback: disabled
INFO: Default entity-mode: pojo
INFO: Named query checking : enabled
INFO: Check Nullability in Core (should be disabled when Bean Validation is on): disabled
INFO: building session factory
INFO: Not binding factory to JNDI, no JNDI name configured
INFO: JNDI InitialContext properties:{}
INFO: PWC1412: WebModule[null] ServletContext.log():Initializing Spring root WebApplicationContext
INFO: Root WebApplicationContext: initialization started
INFO: Refreshing Root WebApplicationContext: startup date [Wed Jul 27 15:04:50 MDT 2011]; root of context hierarchy
INFO: Loading XML bean definitions from class path resource [applicationContext.xml]
INFO: JSR-250 'javax.annotation.ManagedBean' found and supported for component scanning
INFO: JSR-330 'javax.inject.Named' annotation found and supported for component scanning
INFO: JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
INFO: Building JPA container EntityManagerFactory for persistence unit 'co05in'

...removed logging for peristence unit which was mostly just pages of "Binding Named query:..."

INFO: Hibernate Validator not found: ignoring
INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
INFO: Unable to find org.hibernate.search.event.FullTextIndexEventListener on the classpath. Hibernate Search is not enabled.
INFO: Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.
INFO: Initializing connection provider: org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider
INFO: Using provided datasource
INFO: RDBMS: DB2 UDB for AS/400, version: 06.01.0000 V6R1m0
INFO: JDBC driver: AS/400 Toolbox for Java JDBC Driver, version: 9.4
INFO: Using dialect: org.hibernate.dialect.DB2400Dialect
INFO: Disabling contextual LOB creation as JDBC driver reported JDBC version [3] less than 4
INFO: Transaction strategy: org.hibernate.ejb.transaction.JoinableCMTTransactionFactory
INFO: instantiating TransactionManagerLookup: org.hibernate.transaction.SunONETransactionManagerLookup
INFO: instantiated TransactionManagerLookup
INFO: Automatic flush during beforeCompletion(): disabled
INFO: Automatic session close at end of transaction: disabled
INFO: Scrollable result sets: enabled
INFO: JDBC3 getGeneratedKeys(): enabled
INFO: Connection release mode: auto
INFO: Default batch fetch size: 1
INFO: Generate SQL with comments: disabled
INFO: Order SQL updates by primary key: disabled
INFO: Order SQL inserts for batching: disabled
INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
INFO: Using ASTQueryTranslatorFactory
INFO: Query language substitutions: {}
INFO: JPA-QL strict compliance: enabled
INFO: Second-level cache: enabled
INFO: Query cache: disabled
INFO: Cache region factory : org.hibernate.cache.impl.NoCachingRegionFactory
INFO: Optimize cache for minimal puts: disabled
INFO: Structured second-level cache entries: disabled
INFO: Statistics: disabled
INFO: Deleted entity synthetic identifier rollback: disabled
INFO: Default entity-mode: pojo
INFO: Named query checking : enabled
INFO: Check Nullability in Core (should be disabled when Bean Validation is on): disabled
INFO: building session factory
INFO: Not binding factory to JNDI, no JNDI name configured
INFO: JNDI InitialContext properties:{}
INFO: Bean 'entityManagerFactory' of type [class org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@5ecada2f: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalPersistenceAnnotationProcessor,dataSource,org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0,entityManagerFactory,transactionManager,inventoryService,codeService,orderService,addressService,partService,pickTicketService,employeeService,batchService,rateCodeService,payPeriodService,basicORMParser,org.springframework.aop.config.internalAutoProxyCreator,org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0,org.springframework.transaction.interceptor.TransactionInterceptor#0,org.springframework.transaction.config.internalTransactionAdvisor]; root of factory hierarchy
INFO: Using JTA UserTransaction: com.sun.enterprise.transaction.UserTransactionImpl@72ae2192
INFO: Using JTA TransactionManager: com.sun.enterprise.transaction.TransactionManagerHelper@61e3310
INFO: Using JTA TransactionSynchronizationRegistry: com.sun.enterprise.transaction.TransactionSynchronizationRegistryImpl@2877770c
INFO: Root WebApplicationContext: initialization completed in 4725 ms
INFO: Parsing configuration file [struts-default.xml]
INFO: Parsing configuration file [struts-plugin.xml]
INFO: Parsing configuration file [struts.xml]
INFO: Initializing Struts-Spring integration...
INFO: Setting autowire strategy to name
INFO: ... initialized Struts-Spring integration successfully
INFO: WEB0671: Loading application [com.aerose_PartGroupMaster_war_2011.04.12] at [/com.aerose_PartGroupMaster_war_2011.04.12]
INFO: com.aerose_PartGroupMaster_war_2011.04.12 was successfully deployed in 25,884 milliseconds.
INFO: log4j: reset attribute= "false".
INFO: log4j: Threshold ="null".
INFO: log4j: Retreiving an instance of org.apache.log4j.Logger.
INFO: log4j: Setting [com.opensymphony] additivity to [true].
INFO: log4j: Level value for com.opensymphony is  [ERROR].
INFO: log4j: com.opensymphony level set to ERROR
INFO: log4j: Class name: [org.apache.log4j.ConsoleAppender]
INFO: log4j: Setting property [target] to [System.out].
INFO: log4j: Parsing layout of class: "org.apache.log4j.PatternLayout"
INFO: log4j: Setting property [conversionPattern] to [%d{ABSOLUTE} %5p %c{1}:%L - %m%n].
INFO: log4j: Adding appender named [STDOUT] to category [com.opensymphony].
INFO: log4j: Retreiving an instance of org.apache.log4j.Logger.
INFO: log4j: Setting [org.apache.struts2] additivity to [true].
INFO: log4j: Level value for org.apache.struts2 is  [ERROR].
INFO: log4j: org.apache.struts2 level set to ERROR
INFO: log4j: Adding appender named [STDOUT] to category [org.apache.struts2].
INFO: log4j: Retreiving an instance of org.apache.log4j.Logger.
INFO: log4j: Setting [org.hibernate] additivity to [true].
INFO: log4j: Level value for org.hibernate is  [TRACE].
INFO: log4j: org.hibernate level set to TRACE
INFO: log4j: Adding appender named [STDOUT] to category [org.hibernate].
INFO: log4j: Retreiving an instance of org.apache.log4j.Logger.
INFO: log4j: Setting [org.hibernate.hql] additivity to [true].
INFO: log4j: Level value for org.hibernate.hql is  [TRACE].
INFO: log4j: org.hibernate.hql level set to TRACE
INFO: log4j: Adding appender named [STDOUT] to category [org.hibernate.hql].
INFO: log4j: Retreiving an instance of org.apache.log4j.Logger.
INFO: log4j: Setting [org.hibernate.SQL] additivity to [true].
INFO: log4j: Level value for org.hibernate.SQL is  [TRACE].
INFO: log4j: org.hibernate.SQL level set to TRACE
INFO: log4j: Adding appender named [STDOUT] to category [org.hibernate.SQL].
INFO: log4j: Retreiving an instance of org.apache.log4j.Logger.
INFO: log4j: Setting [org.hibernate.type] additivity to [true].
INFO: log4j: Level value for org.hibernate.type is  [TRACE].
INFO: log4j: org.hibernate.type level set to TRACE
INFO: log4j: Adding appender named [STDOUT] to category [org.hibernate.type].
INFO: log4j: Retreiving an instance of org.apache.log4j.Logger.
INFO: log4j: Setting [org.springframework] additivity to [true].
INFO: log4j: Level value for org.springframework is  [WARN].
INFO: log4j: org.springframework level set to WARN
INFO: log4j: Adding appender named [STDOUT] to category [org.springframework].
INFO: log4j: Level value for root is  [INFO].
INFO: log4j: root level set to INFO
INFO: log4j: Adding appender named [STDOUT] to category [root].

5
задан Quaternion 9 April 2012 в 16:50
поделиться