-
1. Re: why is logging not showing in the log file when method is called from a xhtml page?
jamezp Oct 11, 2013 5:33 PM (in response to bhoman)What logging facade are you using?
--
James R. Perkins
-
2. Re: why is logging not showing in the log file when method is called from a xhtml page?
bhoman Oct 15, 2013 10:35 AM (in response to bhoman)I am using log4j.
import org.jboss.seam.log.Log;
import org.jboss.seam.annotations.Logger;
...
@Logger private Log log;
...
public List<NexusMember> getNexusMembers() {
log.debug("getNexusMembers");
System.out.println("getNexusMembers");
Query query = nexusDatabase.createQuery("SELECT m FROM NexusMember m ORDER BY m.memberId");
return query.getResultList();
}
when I call this method from another Java method the logs are written. when I call this from xhtml (snippet follows) no logs are created
<s:decorate id="memberField" template="/layout/edit.xhtml">
<ui:define name="label">Nexus Member</ui:define>
<h:selectOneMenu id="member" required="true" value="#{currentFunction.nexusMember}">
<s:selectItems value="#{nexus.functionManager.manageFunction.nexusMembers}" var="member" label="#{member.memberId}" noSelectionLabel="" />
<f:converter converterId="nexusEntityConverter" />
</h:selectOneMenu>
</s:decorate>
-
3. Re: why is logging not showing in the log file when method is called from a xhtml page?
jamezp Oct 15, 2013 3:09 PM (in response to bhoman)That seems weird. Do you by chance have a log4j configuration file in your deployment?
--
James R. Perkins
-
4. Re: why is logging not showing in the log file when method is called from a xhtml page?
bhoman Oct 15, 2013 3:22 PM (in response to jamezp)yes I do.
it is a log4j.xml file under the project/src directory, along with a log4j.dtd
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
<!-- Appenders -->
<appender name="NEXUS_C-SYSOUT" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="Nexus Core [%-10X{username}] [%-15X{clientip}] %c{3} - %m%n" />
</layout>
</appender>
<appender name="NEXUS_C-SYSOUT-MFCOMM" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="Nexus Core [%-10X{username}] [%-15X{clientip}] %c{3} GI Service Call Log: %X{serviceName} - Auth Info='%X{appName}' - '%X{targetUrl}' - %X{elapsedTime} ms %m%n" />
</layout>
</appender>
<!-- Loggers -->
<logger name="edu.psu" additivity="false">
<level value="DEBUG" />
<appender-ref ref="NEXUS_C-SYSOUT" />
</logger>
<logger name="edu.psu.nexus.gi" additivity="false">
<level value="DEBUG" />
<appender-ref ref="NEXUS_C-SYSOUT-MFCOMM" />
</logger>
<logger name="org.jboss.seam" additivity="false">
<level value="DEBUG" />
<appender-ref ref="NEXUS_C-SYSOUT" />
</logger>
<root>
<priority value="OFF" />
<appender-ref ref="NEXUS_C-SYSOUT" />
</root>
</log4j:configuration>
-
5. Re: why is logging not showing in the log file when method is called from a xhtml page?
jamezp Oct 15, 2013 3:54 PM (in response to bhoman)If you're using a build off a 7.1.2+ tag or JBoss EAP 6.x then it's likely picking up that configuration file and configuring logging. You have the root priority set to OFF so if System.out.printx() definitely won't show up. The logger may or may not based on the package name.
The first thing to try is to pass -Dorg.jboss.as.logging.per-deployment=false or remove the log4j.xml file from your deployment. Also make sure you're not including a log4j library in your deployment either.
--
James R. Perkins