Re: Exploring the FOP API design space
Peter, I think they don't define it because it is a common well known (to them) idea that is used across many specs. Here is a quick definition I found: http://www.w3.org/TR/2000/PR-UAAG10-2310/#def-user-agent So if the user agent is FOP (+ how the document is eventually viewed) then the values and decisions are determined by FOP. My point is that these are typically things that *may* take one value or another so we should allow users of FOP to alter what values are used. Keiron. On Thu, 2002-06-06 at 03:59, Peter B. West wrote: Keiron, You have nicely summarised the references to the user agent in the spec (except for the first one, invalid markup error handling, which I think you have added.) However, my problem with the notion in the spec of user agent remains. The authors have never bothered to define it, and we are left to work out what, exactly, it is from the various references. The references that we have - certainly the references to non-interactive agents - are all to configuration items. At the moment these things are, as I said, in the XML files. It would, prima facie, be straightforward to get this from the configuration, in whatever form that eventually takes, whether we continue to use the XSLT, or introduce the properties into the CVS tree. I.e., whatever form the expression of the properties takes, we would need to extract certain key property values from the configuration. Assuming that we have no plans to go into the interactive presentation business as yet, we can disregard the interactive elements. Even where an interactive agent would presumably expose the options for modification, those elements would still require initial values. For our purposes, I think that user agent functions should be merged into configuration. Incidentally, I think the multi-properties, title and hot links elements should be in the Interactive list. The aural properties (pause-before, pause-after, voice-family) are not necessarly interactive. It would be quite feasible to produce an audio file rendering of a document within FOP. Peter - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
cvs commit: xml-fop/src/org/apache/fop/svg SVGElement.java SVGUserAgent.java
keiron 2002/06/06 00:57:02 Modified:src/org/apache/fop/image/analyser Tag: fop-0_20_2-maintain SVGReader.java src/org/apache/fop/svg Tag: fop-0_20_2-maintain SVGElement.java SVGUserAgent.java Log: YAAPIC Revision ChangesPath No revision No revision 1.12.2.3 +6 -1 xml-fop/src/org/apache/fop/image/analyser/SVGReader.java Index: SVGReader.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/image/analyser/SVGReader.java,v retrieving revision 1.12.2.2 retrieving revision 1.12.2.3 diff -u -r1.12.2.2 -r1.12.2.3 --- SVGReader.java13 May 2002 10:29:52 - 1.12.2.2 +++ SVGReader.java6 Jun 2002 07:57:02 - 1.12.2.3 @@ -1,5 +1,5 @@ /* - * $Id: SVGReader.java,v 1.12.2.2 2002/05/13 10:29:52 keiron Exp $ + * $Id: SVGReader.java,v 1.12.2.3 2002/06/06 07:57:02 keiron Exp $ * Copyright (C) 2001 The Apache Software Foundation. All rights reserved. * For details on use and redistribution please refer to the * LICENSE file included with these sources. @@ -144,6 +144,11 @@ * Returns a customized the pixel to mm factor. */ public float getPixelToMM() { +// this is set to 72dpi as the values in fo are 72dpi +return 0.3528f; // 72 dpi +// return 0.26458333f;// 96dpi +} +public float getPixelUnitToMillimeter() { // this is set to 72dpi as the values in fo are 72dpi return 0.3528f; // 72 dpi // return 0.26458333f;// 96dpi No revision No revision 1.16.2.2 +6 -1 xml-fop/src/org/apache/fop/svg/SVGElement.java Index: SVGElement.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/svg/SVGElement.java,v retrieving revision 1.16.2.1 retrieving revision 1.16.2.2 diff -u -r1.16.2.1 -r1.16.2.2 --- SVGElement.java 13 May 2002 10:29:52 - 1.16.2.1 +++ SVGElement.java 6 Jun 2002 07:57:02 - 1.16.2.2 @@ -1,5 +1,5 @@ /* - * $Id: SVGElement.java,v 1.16.2.1 2002/05/13 10:29:52 keiron Exp $ + * $Id: SVGElement.java,v 1.16.2.2 2002/06/06 07:57:02 keiron Exp $ * Copyright (C) 2001 The Apache Software Foundation. All rights reserved. * For details on use and redistribution please refer to the * LICENSE file included with these sources. @@ -111,6 +111,11 @@ final ForeignObjectArea foa = (ForeignObjectArea)area; SVGContext dc = new SVGContext() { public float getPixelToMM() { +// 72 dpi +return 0.3528f; +} + +public float getPixelUnitToMillimeter() { // 72 dpi return 0.3528f; } 1.2.2.4 +7 -1 xml-fop/src/org/apache/fop/svg/SVGUserAgent.java Index: SVGUserAgent.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/svg/SVGUserAgent.java,v retrieving revision 1.2.2.3 retrieving revision 1.2.2.4 diff -u -r1.2.2.3 -r1.2.2.4 --- SVGUserAgent.java 13 May 2002 10:29:53 - 1.2.2.3 +++ SVGUserAgent.java 6 Jun 2002 07:57:02 - 1.2.2.4 @@ -1,5 +1,5 @@ /* - * $Id: SVGUserAgent.java,v 1.2.2.3 2002/05/13 10:29:53 keiron Exp $ + * $Id: SVGUserAgent.java,v 1.2.2.4 2002/06/06 07:57:02 keiron Exp $ * Copyright (C) 2001 The Apache Software Foundation. All rights reserved. * For details on use and redistribution please refer to the * LICENSE file included with these sources. @@ -75,6 +75,12 @@ * Returns a customized the pixel to mm factor. */ public float getPixelToMM() { +// this is set to 72dpi as the values in fo are 72dpi +return 0.3528f; // 72 dpi +// return 0.26458333f;// 96dpi +} + +public float getPixelUnitToMillimeter() { // this is set to 72dpi as the values in fo are 72dpi return 0.3528f; // 72 dpi // return 0.26458333f;// 96dpi - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Big FOP FAQ
Hi Joerg, I have had a quick look over the document. Looks very good and comprehensive. I have attached a diff with some changes, mostly typos. Should this be checked into the cvs trunk so it can be with the current docs. There was no commit email that I could find (not that it always works). On Fri, 2002-05-31 at 23:34, J.Pietschmann wrote: The faq-big has been checked in, you are invited to proof-read it. It's not yet integrated into the build process, and many links are dead. I intend to write a few more documents the links will point to, some are already in progress. Furthermore I have some plans to migrate the FOP xdocs to the v11 DTDs under development now by forrest. I'd like to have the old short FAQ kept active until everything else is ready. Regards J.Pietschmann Index: docs/xml-docs/fop/faq-big.xml === RCS file: /home/cvspublic/xml-fop/docs/xml-docs/fop/Attic/faq-big.xml,v retrieving revision 1.1.2.1 diff -u -r1.1.2.1 faq-big.xml --- docs/xml-docs/fop/faq-big.xml 29 May 2002 20:14:59 - 1.1.2.1 +++ docs/xml-docs/fop/faq-big.xml 6 Jun 2002 10:14:03 - @@ -63,7 +63,7 @@ answer p XSL is a W3C standard concerned with publishing XML documents. It - consists of wo parts: jump anchor=XSLTXSLT/jump and jump + consists of two parts: jump anchor=XSLTXSLT/jump and jump anchor=XSLFOXSLFO/jump. The acronym expands to estrongX/strongtensible strongS/strongtylesheet strongL/stronganguage. @@ -184,6 +184,10 @@ old XML tools in the classpath. Check in particular for parser.jar, jaxp.jar, xml4j.jar or lotusxsl.jar. /p +p + Incompatible versions of Batik may also cause this problem. Use + the version of Batik that comes with FOP. +/p /answer /faq faq @@ -202,7 +206,7 @@ ul li Avoid forward linkreferences/link. Forward references cause all -pages from the page with the reference on to be hold in memory until +pages from the page with the reference on to be held in memory until the page with the referenced element is encountered. Common forward references are table of contents at the beginning of the document and the linkpage N of TOTAL/link in footers. Forward @@ -304,6 +308,10 @@ separately to check for this, usually you'll get a detailed error message from the XSLT processor. /p +p + If you turn on debugging with the -d option you may be able to + see more detailed information. +/p /answer /faq faq id= @@ -372,7 +380,7 @@ questionFOP does not find my fonts./question answer p - Did you got: laquo;Failed to read font metrics file C:\foo\arial.xml + Did you get: laquo;Failed to read font metrics file C:\foo\arial.xml : File C:\foo\arial.xml not foundraquo;? The value for the metrics-file attribute in the user config file is actually an URL, not a file name. Use file:///C:/foo/arial.xml instead. @@ -699,13 +707,14 @@ p Even though the relevant methods of the Driver object are synchronized, there are still problems because FOP uses static - variables for configuration data. Be sure not to change the - configuration data while there is a Driver object rendering. It is - recommended to setup the configuration only once while initialising - the servlet. If you have to change the configuration data more often, - or if you have several servlets within the same webapp using FOP, - consider implementing a singleton class encapsulating both the - configuration settings and running FOP in synchronized methods. + variables for configuration data and loading images. Be sure not + to change the configuration data while there is a Driver object + rendering. It is recommended to setup the configuration only + once while initialising the servlet. If you have to change the + configuration data more often, or if you have several servlets + within the same webapp using FOP, consider implementing a + singleton class encapsulating both the configuration settings + and running FOP in synchronized methods. /p /answer /faq @@ -788,8 +797,10 @@ p This is really a resolving relative URI problem with some twists. The problem is that the code#stuff/code URL fragment - identifier is resolved against the FOP baseDir property, which is a - directory and not a good source for SVG snippets. Some options to try: + identifier is resolved within the
[GUMP] Build Failure - xml-fop
This email is autogenerated from the output from: http://jakarta.apache.org/builds/gump/2002-06-06/xml-fop.html Buildfile: build.xml init-avail: init-filters-xalan2: [copy] Copying 1 file to /home/rubys/jakarta/xml-fop/build/src/codegen init: [echo] --- Fop 1.0dev [1999-2002] prepare: [echo] Preparing the build directories [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/fo/properties [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/svg [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/classes/conf [mkdir] Created dir: /home/rubys/jakarta/xml-fop/build/classes/hyph [copy] Copying 3 files to /home/rubys/jakarta/xml-fop/build/classes/conf codegen: [echo] Resetting codegen directory [copy] Copying 30 files to /home/rubys/jakarta/xml-fop/build/src/codegen [echo] Generating the java files from xml resources [style] Processing /home/rubys/jakarta/xml-fop/build/src/codegen/allprops.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/fo/properties/Constants.java [style] Loading stylesheet /home/rubys/jakarta/xml-fop/build/src/codegen/genconst.xsl [style] Processing /home/rubys/jakarta/xml-fop/build/src/codegen/foproperties.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/fo/properties/fo_ignore_this.java [style] Loading stylesheet /home/rubys/jakarta/xml-fop/build/src/codegen/properties.xsl [style] Processing /home/rubys/jakarta/xml-fop/build/src/codegen/foproperties.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/fo/properties/FOPropertyMapping.java [style] Loading stylesheet /home/rubys/jakarta/xml-fop/build/src/codegen/propmap.xsl [style] Processing /home/rubys/jakarta/xml-fop/build/src/codegen/foproperties.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/fo/properties/foenums_ignore_this.java [style] Loading stylesheet /home/rubys/jakarta/xml-fop/build/src/codegen/enumgen.xsl [style] Processing /home/rubys/jakarta/xml-fop/build/src/codegen/charlist.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/CodePointMapping.java [style] Loading stylesheet /home/rubys/jakarta/xml-fop/build/src/codegen/code-point-mapping.xsl [style] Transforming into /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/CourierBold.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/CourierBold.java [style] Loading stylesheet /home/rubys/jakarta/xml-fop/build/src/codegen/font-file.xsl [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/Courier.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/Courier.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/CourierBoldOblique.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/CourierBoldOblique.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/CourierOblique.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/CourierOblique.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/Helvetica.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/Helvetica.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/HelveticaBold.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/HelveticaBold.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/HelveticaBoldOblique.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/HelveticaBoldOblique.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/HelveticaOblique.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/HelveticaOblique.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/Symbol.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/Symbol.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/TimesBold.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/TimesBold.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/TimesBoldItalic.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/TimesBoldItalic.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/TimesItalic.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/TimesItalic.java [style] Processing /home/rubys/jakarta/xml-fop/src/codegen/TimesRoman.xml to /home/rubys/jakarta/xml-fop/build/src/org/apache/fop/render/pdf/fonts/TimesRoman.java [style] Processing
Status on http://xml.apache.org/fop/index.html
I think it was about a month ago, a status section was added to the FOP main page. A good idea. Four questions : 1) Could it be possible to add a date to this status : "[last updated xx-March-2002]" ? 2) Could it be possible to move this section higher ? It is difficult to spot. 3) What does the following paragraph mean ? « Development for 1.0DR1 is addressing the design issues for layout and performance. This is focusing on making it possible to be conformant to the spec and be able to handle large documents. This is roughly 30% towards a developers release that should have: similar functionality to previous FOP releases, a rough API and a suitable design for developers to work on more functionality. » What is « roughly 30% towards » ? The work already done or the 1.0DR 1 ? Could this sentence please be rewritten ? 4) What has changed in the last month ? (I.e. could we get at least a monthly update if we must live with «The timing of these events depends on progress made so it is not possible to predict any dates » ?)
DO NOT REPLY [Bug 7200] - loading config.xml
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7200. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7200 loading config.xml --- Additional Comments From [EMAIL PROTECTED] 2002-06-06 14:15 --- Strange thing is that it works with JBoss/Tomcat and not with Websphere !?! - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
FOP Redesign
I don't know if you've been following the activities on the FOP mailing list, but they are in the process of doing a core redesign. Based on some of the comments on the XSmiles features page I posed a few quick question to the FOP team. Their response seems to have been fairly positive, so I was wondering if any members of the XSmiles team would be able to post to the FOP list with some details as to how XSmiles uses FOP and how integration between the two could be enhanced. In paticular there is a movement afoot to allow a more dynamic rendering of the FOP content using Swing components, as opposed to the current more static viewing approach. Support for dynamic changes to the DOM tree (via scripting) may also be possible. It looks like there is a great opportunity here for synergy between the two groups. The possibility exists for the XSmiles and FOP teams to develop an elegant approach to integrating their technologies that could be extended to include Batik. The vision of a single, cross-platform client that supports all of the major W3 standards may be attainable! Jason Foster - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: FOP Redesign
At 10:18 AM 6/6/02, you wrote: In paticular there is a movement afoot to allow a more dynamic rendering of the FOP content using Swing components, as opposed to the current more static viewing approach. Support for dynamic changes to the DOM tree (via scripting) may also be possible. +1 here ! ' Best, -Ralph LaChance - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: SAX, fopservlet and 0.20.2
OK, I take back some of what I previously said. I upgraded my xalan to 2.3.1 and that fixed the NPE when transforming the glossary example. I still consistently get the NPE on my own files from the servlet, but now I also get it from the command line. Being at a loss, per the xalan 2.3.1 instructions, I switched my xerces jar to xercesImpl.jar, but now I get the following: org.xml.sax.SAXParseException: The prefix fo for element fo:external-graphic is not bound. I am still using 0.20.2 fop so I am pretty confused on which jars I should be using. Anyone have any ideas? What jars should be in my path? -Lou [EMAIL PROTECTED] on 06/06/2002 07:51:09 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: SAX, fopservlet and 0.20.2 J: Thanks for the response. I am now testing using the glossary xml/xsl files in the example directory, but with the same results. It works fine from the command line, but NPE whenever I introduce the SAXResult or SAXSource. I'm starting to think it might be something with me environment. Also, if I stream it to a file using StreamResult, I can then take the resultant fo and use the Fop command line utility on that and it is fine. Sorry, the xml.apache.org stated you needed the sax api, not sax.jar - xalan should cover this? If 0.20.3 is stable, I would consider upgrading - it's just that I have all the jar files frozen for at least another month. Thanks, Lou J.Pietschmann [EMAIL PROTECTED] on 06/05/2002 20:04:01 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: SAX, fopservlet and 0.20.2 [EMAIL PROTECTED] wrote: I recently switched from a standalone FOP app to the servlet. The code compiles fine, but any lines that use SAX throw a transformer exception. Do your files work with the command line FOP? fop -xml foo.xml -xsl foo.xsl -pdf foo.pdf If you get a NPE [ERROR]: null add the -d switch to get a stack trace. Also, I don't explicitly include the sax jar file - do I need to? I'm using xalan 2.0.0 and xerces 1.2.3. What sax jar file? You might also consider upgrading to 0.20.3. J.Pietschmann - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
[Morphos] Java data morphing package - second stab
Ok, here is the second stab at it :-) I'm still crossposting now to other projects that have shown interest. I have gotten many suggestions privately, so this will contain them + clarifications, and a concrete example. This discussion properly resides on the Jakarta Commons mailing list. To subscribe, send an empty mail to [EMAIL PROTECTED] From: Nicola Ken Barozzi [EMAIL PROTECTED] What is Morphos? - Morphos will be a Java Api and implementation for transforming data, in any form it may be: xml, streams, objects. It focuses on the API and framework, and demands implementation to other projects-modules wherever possible. Why Morphos? - Morphos starts from a need around a community of developers, with an initial charter committed in Jakarta Commons Sandbox. [...] What does it do? - Morphos should simply do: data -- morphos --- data Data can be: - stream - events - objects I don't see other basic generic data types, since files and such can become streams and viceversa without any format or form conversion. I want a *very* simple api, with no duplicated methods. IE having get(Stream) and get(File) is not necessary IMO, since they do the same thing. The main API must be very simple. We can always add helper classes. [...] Ok, but in Concrete? -- Here is the proposed API, all in package org.apache.commons.morphos: /** * The interface that is implemented by classes that morph. * It uses two params and not a return value to make it usable with * event based Objects (contenthandlers). * Parameters are key pairs, used to configure the Morpher. * Events in the Morpher are notified by registering a listener. */ public interface Morpher { void morph(Object input, Object output) throws MorphException. IOException; void addParameter(String paramName, String paramValue); String getParameter(String paramName); void remove Parameter(String paramName); String[] getParameterNames(); String[] getParameterValues(); void addNotificationListener(NotificationListener nl); void removeNotificationListener(NotificationListener nl); void clearNotificationListeners(); } /** * The interface that is implemented by classes that morph. * It uses two params and not a return value to make it usable with * event based Objects (contenthandlers). * Events in the Morpher are notified by registering a listener. * [new] parameters are managed with beans get/set methods **none* are mandatory */ public interface Morpher { void morph(Object input, Object output) throws MorphException. IOException; void addNotificationListener(NotificationListener nl); void removeNotificationListener(NotificationListener nl); void clearNotificationListeners(); } [Clarification] Why not Object morph(Object input) throws MorphException, IOException; ? Because if the output object is a SAX handler, the morphing doesn't take place, and this is not evident. Any other pros-cons? [Clarification 2] Why use Object as input and output? Why not use different types? Genericity. See the below comments after the Factory/Manager. /** * A Morpher made out of a sequence of morphers. */ public interface MorpherPipeline extends Morpher { void addStage(Morpher nextMorpher); } This remains. /** * The Factory for Morphers. * There is a getDefaultFactory method for easy use. * Used in frameworks it's better not to use it and rely on * services that give the proper MorpherFactory. */ public abstract MorpherFactory { Morpher getMorpher(DataType inputType, DataType outputType); Morpher getMorpher(name); Morpher getPreparedMorpher(DataType inputType, DataType outputType); Morpher getPreparedMorpher(name); static MorpherFactory getDefaultFactory(); } /** * The Morphers' manager. * There is a getDefaultFactory method for easy use. * Used in frameworks it's better not to use it and rely on * services that give the proper MorpherFactory. */ public interface MorpherManager { Morpher getMorpher(DataType inputType, DataType outputType); Morpher getMorpher(name); Morpher getPreparedMorpher(DataType inputType, DataType outputType); Morpher getPreparedMorpher(name); } I've removed the static method, and made it an interface. It will be the MorpherManager implementation that can use this pattern. Why not *Factory? Because it does more than just create them. [Clarification 2] Why is a Manager needed? Because (see clarification 1) any Morpher instance is supposed to be an implementation that is guaranteed to work with a determined kind of Objects (a subset); this enforcement is done by the Manager. /** * Describes what the format of the data is. * It consists of a mimetype (format) and a dataForm
Re: SAX, fopservlet and 0.20.2
OK, I thawed the jar files and upgraded to 20.3 (and rolled back my xalan and xerces changes) and that seems to do the trick. The fo issue was a bug in an included stylesheet that I fixed. -Lou [EMAIL PROTECTED] on 06/06/2002 11:50:26 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: SAX, fopservlet and 0.20.2 OK, I take back some of what I previously said. I upgraded my xalan to 2.3.1 and that fixed the NPE when transforming the glossary example. I still consistently get the NPE on my own files from the servlet, but now I also get it from the command line. Being at a loss, per the xalan 2.3.1 instructions, I switched my xerces jar to xercesImpl.jar, but now I get the following: org.xml.sax.SAXParseException: The prefix fo for element fo:external-graphic is not bound. I am still using 0.20.2 fop so I am pretty confused on which jars I should be using. Anyone have any ideas? What jars should be in my path? -Lou [EMAIL PROTECTED] on 06/06/2002 07:51:09 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: SAX, fopservlet and 0.20.2 J: Thanks for the response. I am now testing using the glossary xml/xsl files in the example directory, but with the same results. It works fine from the command line, but NPE whenever I introduce the SAXResult or SAXSource. I'm starting to think it might be something with me environment. Also, if I stream it to a file using StreamResult, I can then take the resultant fo and use the Fop command line utility on that and it is fine. Sorry, the xml.apache.org stated you needed the sax api, not sax.jar - xalan should cover this? If 0.20.3 is stable, I would consider upgrading - it's just that I have all the jar files frozen for at least another month. Thanks, Lou J.Pietschmann [EMAIL PROTECTED] on 06/05/2002 20:04:01 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: SAX, fopservlet and 0.20.2 [EMAIL PROTECTED] wrote: I recently switched from a standalone FOP app to the servlet. The code compiles fine, but any lines that use SAX throw a transformer exception. Do your files work with the command line FOP? fop -xml foo.xml -xsl foo.xsl -pdf foo.pdf If you get a NPE [ERROR]: null add the -d switch to get a stack trace. Also, I don't explicitly include the sax jar file - do I need to? I'm using xalan 2.0.0 and xerces 1.2.3. What sax jar file? You might also consider upgrading to 0.20.3. J.Pietschmann - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Performance Guidance
I am using FOP to take a single page of XSL:FO content and convert to PDF. I have embedded FOP in a servlet. When I have one user requesting a page it takes about 6 or 7 seconds to get the page formatted as PDF. It seems like each additional simultaneous request pushes the response time by 6 or 7 seconds. So, if 10 users request pages at about the same time, the 10th user gets his page back in about a minute--and this is only one page. Is this the performance I should expect? What the ideal way to handle the rendering process? Should I create a Rendering object that had a rendering method or should I simply have a class with one static method that renders? Any guidance on how to embed FOP and get better response time is appreciated. Mike Zahigian, Sr. Programmer/Systems Analyst Amgen Business Information Systems (805) 447-2819 mailto:[EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
DO NOT REPLY [Bug 7200] - loading config.xml
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7200. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7200 loading config.xml [EMAIL PROTECTED] changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution||FIXED --- Additional Comments From [EMAIL PROTECTED] 2002-06-06 19:21 --- The userconfig appears to be ok. Some more digging revealed that the given version 0.17 does not have the Option class. The 0.18 release had an exit() in the loadStandardConfiguration() method in case the configuration file is not found (means: missing or not accessible from the jar file. An error message should have been logged in this case. It is possible that WebSphere has problems accessing ressources in the fop.jar file, perhaps intetional because of dynamic class loading. It is strongly recommended to upgrade to 0.20.3 which does some classloader magic in order to avoid such problems. FOP 0.20.3 is known to work on various configurations of Websphere 3.5 and 4.x. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: SAX, fopservlet and 0.20.2
[EMAIL PROTECTED] wrote: I am now testing using the glossary xml/xsl files in the example directory, but with the same results. It works fine from the command line, but NPE whenever I introduce the SAXResult or SAXSource. I'm starting to think it might be something with me environment. Also, if I stream it to a file using StreamResult, I can then take the resultant fo and use the Fop command line utility on that and it is fine. It is possible that it is a problem involving undeclared namespaces. GGet a recent Xalan or get Saxon (http://saxon.sourceforge.net) at run your stylesheet: xalan -in foo.xml -xsl foo.xsl -out foo.fo The Xalan included in the FOP distribution sometimes throws NPEs by itself and sometimes passes null namespaces to FOP which cause NPEs, but the latter might be masked by serialisation and reparsing. A more recent Xalan will provide a proper error message. Sorry, the xml.apache.org stated you needed the sax api, not sax.jar - xalan should cover this? Not Xalan, Xerces (included in the FOP distribution. J.Pietschmann - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]