Lotus и Log4j

  • Автор темы Borz
  • Дата начала
Статус
Закрыто для дальнейших ответов.
B

Borz

#1
Что есть:
1) клиент Lotus Notes 8.5.1
2) положенный log4j и commons-logging в каталог клиента
3) "пустой" Java-агент

код в агенте очень простой:

Код:
public class JavaAgent extends AgentBase {
protected Logger LOG = Logger.getLogger(getClass());

public void NotesMain() {

try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
LOG.info("test");
....
сам log4j.properties приложен к агенту как ресурс
Код:
log4j.rootLogger=DEBUG,stdout,file
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p,%d{dd MMM yyyy HH:mm:ss,SSS},[%c],%m%n
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.file=test.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.conversionPattern=%d{ABSOLUTE} %5p %t %c{1}:%M:%L - %m%n
собственно, на консоли вывода нету (которая Java Debug Console), в файле console.log нет и самого файла test.log тоже не удаётся найти :)
 
13.03.2009
625
1
#2
похоже, что ресурсы из агента не попадают в classpath...
можно явно сконфигурить логер через PropertyConfigurator:<!--shcode--><pre><code class='java'> public void NotesMain() {

try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();

Properties log4jProperties = new Properties();
InputStream in = getClass().getClassLoader().getResourceAsStream("log4j.properties");
log4jProperties.load(in);
PropertyConfigurator.configure(log4jProperties);

Logger logger = Logger.getLogger(getClass());
logger.error( "bugaga");


} catch(Exception e) {
e.printStackTrace();
}
}[/CODE]
 
Статус
Закрыто для дальнейших ответов.