I am developing two web based prototypes for rendering PDF using XSL-FO.

First prototype is a Java Servlet deployed in Tomcat container in windows
environment. The servlet renders PDFs to web as well as windows based
clients. Everything works well, till I decided to add SVG elements to
generate 3D charts. I am using pre-compiled version of FOP 1.0. Looking at
the manifest file for FOP.jar, I noticed that jai_*.jar files have not been
referenced. If I include following jar files, I am able to generate 3D
graphs using SVG.

jai_codec.jar
jai_core.jar
jai_imageio.jar

Are these jar files sufficient for FOP to process SVG elements? I thought
that batik-all-1.7.jar should be sufficient to process SVG elements. I
guess I was wrong.

Second prototype is .NET based solution, where I have converted FOP 1.0 to
a single .NET DLL using IKVM. Same issue here with SVG elements but even if
I include the jai_*.jar files in my .NET dll, still the SVG elements are
ignored.

There are issues mentioned with class loader functionality in the following
article. But this article was published in 2004, I bet there have been
considerable improvements in IKVM since then.

http://onjava.com/pub/a/onjava/2004/08/18/ikvm.html

================== Begin - Excerpt from the article
Second is the ikvmc command, which can be used to convert Java bytecodes
into .NET IL. Thus, you can convert a set of Java class files into a .NET
assembly.

Since this manner of use statically compiles the Java bytecodes, it's known
as the static mode. Note that while the dynamic mode fully supports the
Java classloader semantics, in the static mode, there are necessarily some
limitations. Among the issues to watch out for is the fact that all classes
are loaded by the bootstrap classloader. See the threads for the gory
details. In brief, many Java programs assume this.class.getClassLoader()
will return non-null. That, however, is not a valid assumption for classes
loaded by the bootstrap loader.

Also, while classloader functionality (such as Class.forName(..)) is
available to use, and indeed can be used to load either statically compiled
classes or Java bytecode, remember that loading classes out of .NET
assemblies that are not referenced directly or indirectly from your
application may not work without manual intervention. See the documentation
for more detail on this and other hairy issues that arise when two
different worlds collide!
================== End - Excerpt from the article

I do understand that this is FOP user's email group, so IKVM related issue
may not be answered, but if anyone has experience using SVG elements
in .XSLT file, can point me to the right jar files (other than mentioned
above).



Thanks in advance for your help.



Regards,

Jayant




---------------------------------------------------------------------
To unsubscribe, e-mail: fop-users-unsubscr...@xmlgraphics.apache.org
For additional commands, e-mail: fop-users-h...@xmlgraphics.apache.org

Reply via email to