Skip to Main Content

Java Programming

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

log4j smtp appender

807580Mar 5 2010 — edited Mar 5 2010
I'm using log4j. The log to the console and the file writer work, but the mailer doesn't.
Here is the log4j.xml I'm using. I have mail.jar in my buildpath.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" >

<log4j:configuration>
	<appender name="console" class="org.apache.log4j.ConsoleAppender">
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%5p - (%F:%L) - %m%n" />
		</layout>
		<filter class="org.apache.log4j.varia.LevelRangeFilter">
			<param name="LevelMin" value="WARN" />
		</filter>
	</appender>

	<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
		<param name="file" value="logs/log4j.log" />
		<param name="MaxFileSize" value="10MB" />
		<param name="MaxBackupIndex" value="10" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern" value="%5p - (%F:%L) - %m%n" />
		</layout>
	</appender>

	<appender name="mailAppender" class="org.apache.log4j.net.SMTPAppender">
		<param name="From" value="mail@gmail.com" />
		<param name="To" value="mail@gmail.com" />
		<param name="Subject" value="Register WARNING" />
		<param name="SMTPHost" value="smtp.gmail.com" />
		<param name="BufferSize" value="1" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern"
				value="=[%d{HH:mm:ss.SSS}] %n server: %X{hostname} %n ip: (%X{ip}) %n %n %m" />
		</layout>
		<param name="Threshold" value="WARN" />
	</appender>

	<root>
		<priority value="ALL" />
		<appender-ref ref="console" />
		<appender-ref ref="fileAppender" />
		<appender-ref ref="mailAppender" />
	</root>
</log4j:configuration>
I get the following error:
log4j:WARN Continuable parsing error 34 and column 13
log4j:WARN The content of element type "appender" must match "(errorHandler?,param*,rollingPolicy?,triggeringPolicy?,connectionSource?,layout?,filter*,appender-ref*)".
log4j:WARN Error during default initialization
java.lang.NoClassDefFoundError: javax/activation/DataSource
	at org.apache.log4j.net.SMTPAppender.activateOptions(SMTPAppender.java:122)
	at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:257)
	at org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:285)
	at org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:171)
	at org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigurator.java:184)
	at org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMConfigurator.java:502)
	at org.apache.log4j.xml.DOMConfigurator.parseRoot(DOMConfigurator.java:471)
	at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:921)
	at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:790)
	at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:696)
	at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:471)
	at org.apache.log4j.LogManager.<clinit>(LogManager.java:125)
	at org.apache.log4j.Logger.getLogger(Logger.java:105)
	at logger.Logger.<clinit>(Logger.java:6)
	at main.HibernateMain.main(HibernateMain.java:18)
 WARN - (Configurator.java:126) - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/PATH/ehcache-1.1.jar!/ehcache-failsafe.xml
Can anyone help me with this?
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Apr 2 2010
Added on Mar 5 2010
6 comments
1,938 views