Java 如何修复Tomcat中的log4j警告消息
我不熟悉Java 如何修复Tomcat中的log4j警告消息,java,tomcat,log4j,activemq,Java,Tomcat,Log4j,Activemq,我不熟悉JMS和Activemq package PackageName; import java.io.IOException; import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Queue; import javax.jms.Session; import javax.jms.TextMessage; import javax.servlet.Se
JMS
和Activemq
package PackageName;
import java.io.IOException;
import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.Queue;
import javax.jms.Session;
import javax.jms.TextMessage;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.activemq.ActiveMQConnectionFactory;
//@SuppressWarnings("serial")
public class MessageProducer extends HttpServlet {
@Override
protected void service(HttpServletRequest arg0, HttpServletResponse arg1)
throws ServletException, IOException {
try {
//created ConnectionFactory object for creating connection
ConnectionFactory factory = new ActiveMQConnectionFactory("admin","admin","tcp://localhost:61617");
//Establish the connection
Connection connection = factory.createConnection();
Session session = connection.createSession(false,
Session.AUTO_ACKNOWLEDGE);
Queue queue = session.createQueue("MessageTesing123");
//Added as a producer
javax.jms.MessageProducer producer = session.createProducer(queue);
// Create and send the message
TextMessage msg = session.createTextMessage();
msg.setText("TestMessage3");
producer.send(msg);
} catch (Exception e) {
// TODO: handle exception
}
}
}
如果我使用ApacheTomcat运行这个.java文件,它运行得很好,但是我收到了以下警告
log4j:WARN找不到记录器(org.apache.activemq.transport.wireformatcongregator)的附加程序。
log4j:WARN请正确初始化log4j系统。
log4j:警告请参见http://logging.apache.org/log4j/1.2/faq.html#noconfig 有关更多信息。
我怎样才能解决这个问题
谢谢。这不是ActiveMq警告;这是一个log4j警告
log4j.properties
或
log4j.xml
文件/webapps//WEB-INF/classes
,或放入
相同相对路径下的WAR文件:/WEB-INF/classes
log4j.logger.com.foo=DEBUG, MYPROJECT
...
后来我
log4j.appender.MYPROJECT=org.apache.log4j.RollingFileAppender
和其他RollingFileAppender详细信息。log4j.properties应该在类路径中。典型的位置是web inf/类 我把
log4j.properties
文件放在/lib文件夹下。它仍然不工作。我把log4j.properties
文件放在WEB-INF/classes
文件夹下。它工作得很好。如果您编辑您的答案,我将接受您的答案。当war
文件导出时,我是否可以维护相同的log4j.properties
文件。我问的原因可能是,我们将在我的应用程序服务器中使用更新版本的Activemq
。@user2642355是的,如果log4j
文件中的日志文件路径与文件系统一致,则这应该不会是一个问题,以便记录器可以适当地进行日志记录;答案已更新。
log4j.appender.MYPROJECT=org.apache.log4j.RollingFileAppender