2012-03-06 37 views
11

Làm cách nào để sử dụng log4j với JBoss 7.1?Sử dụng log4j với JBoss 7.1

Tôi có log4j-1.2.16.jar trong thư mục WebContent/WEB-INF/lib của mình. Khi tôi xuất kết quả của Logger.getRootLogger().getClass().toString() Tôi nhận được class org.jboss.logmanager.log4j.BridgeLogger đó là sai.

Nếu tôi thêm Dependencies: org.apache.commons.logging vào tệp MANIFEST.MF tôi nhận được kết quả tương tự.

Điều này dẫn đến sự cố rằng tệp log4j.properties (mà tôi đã tạo unter WEB-INF/classes) của mình bị bỏ qua.

Trả lời

22

Sẽ sớm có cách will just work for you, nhưng hiện tại bạn phải loại trừ phụ thuộc log4j khỏi triển khai của mình. Bạn cũng sẽ phải tự gọi tệp PropertyConfigurator.configure() để tải tệp thuộc tính.

Các tập tin sau (jboss-deployment-structure.xml) cần phải chứa sau:

<jboss-deployment-structure> 
    <deployment> 
     <!-- Exclusions allow you to prevent the server from automatically adding some dependencies --> 
     <exclusions> 
      <module name="org.apache.log4j" /> 
     </exclusions> 
    </deployment> 
</jboss-deployment-structure> 

Sau đó thêm bao gồm cả phiên bản của riêng bạn log4j trong thư mục WEB-INF/lib nên làm việc như bạn mong đợi nó.

+2

Cảm ơn bạn rất nhiều vì điều này. Tôi đã thực sự thất vọng. – T3rm1

+0

Không phù hợp với tôi: ( –

+0

Điều gì không hiệu quả? Phiên bản nào của JBoss AS hoặc WildFly? –

Các vấn đề liên quan