Hi Nancy,

The suggested method fails because all arguments to fop are passed as
arguments to the application, not the JVM.
You could change the fop script and add '-Dlog4j.configuration=...' *
directly* before or after '$HEADLESS'  on the line 'run_java ...'.

Better still you could put something like $MY_JVM_VARS instead and run
* export MY_JVM_VARS='-Dlog4j.configuration=file:///wherever/log4j.xml' fop*

Any other JVM arguments required can be placed in the MY_JVM_VARS variable.

The problem with this would be when an update changes the /usr/bin/fop.  You
might want to copy this script into ~/ somewhere and run that instead,
merging any potential future changes to fop when thy occur.

Pete

On Tue, May 25, 2010 at 4:34 PM, nancy_b <[email protected]> wrote:

>
> Hi Julien!
>
> Thanks a lot for trying to help me. Unfortunately, fop fails printing the
> following error:
> 2010-05-25 18:32:35,176 [main] ERROR FOP - Exception
> java.lang.IllegalArgumentException: Error creating InputHandler object.
>        at
>
> org.apache.fop.cli.CommandLineOptions.createInputHandler(CommandLineOptions.java:849)
>        at
> org.apache.fop.cli.CommandLineOptions.parse(CommandLineOptions.java:167)
>        at org.apache.fop.cli.Main.startFOP(Main.java:154)
>        at org.apache.fop.cli.Main.main(Main.java:197)
>
> Please, advise!
> Thanks a lot again!
> Nancy
>
>
> Julien Aymé wrote:
> >
> > Hello,
> >
> > Assuming your log4j configuration file is placed in the
> > "/home/cozy/doc/xsl/" folder,
> > you can tell fop to use your log4j file like this:
> >
> > fop -Dlog4j.configuration=file:///home/cozy/doc.xsl/log4j.xml-c
> > /home/cozy/doc/xsl/myconf.xml -fo  \
> >          user_manual.fo -pdf  user_manual.pdf
> >
> > (replace log4j.xml with the actual name of your configuration file).
> >
> > HTH,
> > Julian
> >
> > 2010/5/25 nancy_b <[email protected]>:
> >>
> >> From http://wiki.apache.org/xmlgraphics-fop/HowTo/SetupLog4JLogging:
> >>
> >> "Set the following system property when you start the JVM:
> >> -Dlog4j.configuration=file:///C:/Dev/FOP/log4j.properties
> >> ..."
> >> Does anybody know how do I define this on Linux Debian and where?
> >>
> >> Thanks a lot in advance!
> >> nancy
> >>
> >>
> >> nancy_b wrote:
> >>>
> >>> Hi Folks!
> >>>
> >>> I use FOP 0.95 to compile PDF documents from DocBook sources on my
> Linux
> >>> Debian machine. After upgrading my Debian to v5.2, I get the following
> >>> log4j-related problem:
> >>>
> >>> fop -c /home/cozy/doc/xsl/myconf.xml -fo  \
> >>>           user_manual.fo -pdf  user_manual.pdf
> >>> log4j:WARN No appenders could be found for logger
> >>> (org.apache.fop.util.ContentHandlerFactoryRegistry).
> >>> log4j:WARN Please initialize the log4j system properly.
> >>>
> >>> and FOP does not produce any compilation-related warnings that I expect
> >>> it
> >>> to print in the console.
> >>> 2.6.18.3
> >>> I did not have this problem before (on my Debian v.2.6.18.3).
> >>>
> >>> After reading related posts on this forum, I did the following:
> >>>
> >>> 1) Created a log4j conf file (log4j-properties.xml) with the following
> >>> contents:
> >>>
> >>> <?xml version="1.0" encoding="UTF-8" ?>
> >>> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
> >>>
> >>> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/";>
> >>>   <appender name="console" class="org.apache.log4j.ConsoleAppender">
> >>>
> >>>     <layout class="org.apache.log4j.PatternLayout">
> >>>
> >>>     </layout>
> >>>   </appender>
> >>>   <appender name="logfile" class="org.apache.log4j.FileAppender">
> >>>     <layout class="org.apache.log4j.PatternLayout">
> >>>
> >>>     </layout>
> >>>   </appender>
> >>>   <!-- ALL | DEBUG | INFO | WARN | ERROR | FATAL | OFF
> >>>   <root>
> >>>     <priority value ="warn" />
> >>>     <appender-ref ref="console" />
> >>>     <appender-ref ref="logfile" />
> >>>   </root>-->
> >>>   <logger name="org.apache.fop">
> >>>     <level value="warn"/>
> >>>     <appender-ref ref="console" />
> >>>   </logger>
> >>>   <logger name="org.apache.xmlgraphics">
> >>>    <level value="warn"/>
> >>>    <appender-ref ref="console" />
> >>>   </logger>
> >>> </log4j:configuration>
> >>>
> >>> It sits together with log4j in the /usr/share/java/ directory. I also
> >>> placed there the log4j.dtd file.
> >>>
> >>> 2) In bashrc, I defined the following:
> >>>
> >>> export
> >>>
> LOG4J_OPTS="-Dlog4j.configuration=/usr/share/java/log4j-properties.xml".
> >>>
> >>> But, guess what? It did not help at all. I still get the log4j message.
> >>> The posts also mention that it is necessary to define the conf. file in
> >>> the classpath. I have no idea what it is and how to find it....
> >>>
> >>> Please, people, help! :-(
> >>>
> >>> Thanks a lot in advance!!!!
> >>> nancy
> >>>
> >>>
> >>>
> >>
> >> --
> >> View this message in context:
> >> http://old.nabble.com/Log4j-Woes-tp28658124p28669034.html
> >> Sent from the FOP - Users mailing list archive at Nabble.com.
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> >
> >
>
> --
> View this message in context:
> http://old.nabble.com/Log4j-Woes-tp28658124p28669930.html
> Sent from the FOP - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to