Howdy,
You may need to post some of the source code for your appender.  For
starters, does it have a public no arguments constructor?  Are all the
getters and setters public and compliant with JavaBean conventions?

Yoav Shapira
Millennium ChemInformatics


>-----Original Message-----
>From: FLYNN, Peter -Syntegra UK [mailto:[EMAIL PROTECTED]]
>Sent: Thursday, February 06, 2003 9:49 AM
>To: '[EMAIL PROTECTED]'
>Subject: Writing a custom appender
>
>Hi,
>
>I'm trying to write my own appender.  The initial idea is to link into
>various other systems and tie up all of the systemlogging into a single
>system (Log4J).
>
>I wrote a class that extended AppenderSkeleton, but I'm getting some
>strange
>errors from DomConfigurator when trying it out.
>
>What I get is:
>
>C:\Projects\bin>test
>log4j: Threshold ="null".
>log4j: Level value for root is [DEBUG].
>log4j: root level set to DEBUG
>log4j: Class name: [org.apache.log4j.ConsoleAppender]
>log4j: Parsing layout of class: "org.apache.log4j.PatternLayout"
>log4j: Setting property [conversionPattern] to [[%-5p] [%d{DATE}]
>[%C.%M:%L]
>- %m%n].
>log4j: Adding appender named [CONSOLE] to category [root].
>log4j: Class name: [com.syntegra.logging.TestAppender]
>log4j:ERROR Could not create an Appender. Reported error follows.
>java.lang.IllegalAccessException: Class
>org.apache.log4j.xml.DOMConfigurator
>can not access a member of class com.syntegra.logging.TestAppender with
>modifiers ""
>at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:57)
>at java.lang.Class.newInstance0(Class.java:300)
>at java.lang.Class.newInstance(Class.java:259)
>at
>org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java
:164
>)
>at
>org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator
.jav
>a
>:140)
>at
>org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigu
rato
>r
>.java:153)
>at
>org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMCo
nfig
>u
>rator.java:415)
>at
org.apache.log4j.xml.DOMConfigurator.parseRoot(DOMConfigurator.java:384)
>at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:790)
>at
>org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:6
73)
>at
>org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:6
16)
>at
>org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:6
02)
>at
>org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConve
rter
>.
>java:460)
>at org.apache.log4j.LogManager.<clinit>(LogManager.java:113)
>at org.apache.log4j.Logger.getLogger(Logger.java:94)
>at com.syntegra.logging.TestAppender.main(TestAppender.java:40)
>log4j:ERROR Could not parse input source
[org.xml.sax.InputSource@ef5502].
>java.lang.NullPointerException
>at java.util.Hashtable.put(Hashtable.java:389)
>at
>org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator
.jav
>a
>:141)
>at
>org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigu
rato
>r
>.java:153)
>at
>org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMCo
nfig
>u
>rator.java:415)
>at
org.apache.log4j.xml.DOMConfigurator.parseRoot(DOMConfigurator.java:384)
>at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:790)
>at
>org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:6
73)
>at
>org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:6
16)
>at
>org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:6
02)
>at
>org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConve
rter
>.
>java:460)
>at org.apache.log4j.LogManager.<clinit>(LogManager.java:113)
>at org.apache.log4j.Logger.getLogger(Logger.java:94)
>at com.syntegra.logging.TestAppender.main(TestAppender.java:40)
>[DEBUG] [06 Feb 2003 14:35:51,868]
>[com.syntegra.logging.TestAppender.main:41] - Debug Test Message
>[DEBUG] [06 Feb 2003 14:35:51,888]
>[com.syntegra.logging.TestAppender.main:42] - Debug Test Message
>[DEBUG] [06 Feb 2003 14:35:51,919]
>[com.syntegra.logging.TestAppender.main:43] - Debug Test Message
>Press any key to continue . . .
>
>Someone must have seen this in the process of writing their own
appender
>(or
>extending an appender).  Do you know what causes it?
>
>The only thing I can think of is that my custom appender is seperate
from
>the log4j jar, and there might be a security issue (with ClassLoaders
>loading across jars).
>
>I will continue to investigate, but in the mean time, if anyone knows
>anything then it would be really appreciated.
>
>Regards
>Peter
>
>
>********************************************************************
>
>This email may contain information which is privileged or confidential.
If
>you are not the intended recipient of this email, please notify the
sender
>immediately and delete it without reading, copying, storing, forwarding
or
>disclosing its contents to any other person
>Thank you
>
>Check us out at http://www.syntegra.com
>
>********************************************************************


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to