xmlgraphics-fop-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bernard Giannetti <thebernmeis...@hotmail.com>
Subject RE: Referring to a image file in a JAR file
Date Thu, 22 Jul 2010 01:05:42 GMT

I already have a URIResolver implemented to resolve the something such as

    <xsl:include href="pagesetup.xsl" />

which is what the Javadoc says it's used for:


Unfortunately, the <fo:external-graphic src="file://myapp.jar!/image.svg" content-width=8"
content-height="8"> does not trigger the call to my URI resolver.  I have tried src=url(....)
etc with no luck.  So either I've got the wrong format of the URL or it cannot be done this

I don't see how to use xls:include, xsl:import and document (as per the Javadoc) to refer
to the graphic file.  In your example, did you refer to images using fo:external-graphic or
using some other tag?

The other thing I noticed is I set my URIResolver on the TransformerFactory:

SAXTransformerFactory saxTransformerFactory = (SAXTransformerFactory)TransformerFactory.newInstance();
saxTransformerFactory.setURIResolver( myURIResolver );

instead of on the foUserAgent which you did...so dunno if that makes a difference.

> Date: Wed, 21 Jul 2010 17:16:03 +0200
> Subject: Re: Referring to a image file in a JAR file
> To: fop-users@xmlgraphics.apache.org
> Hi,
> we needed exactly that and implemented our own "ResourceResolver" for that.
> You can register it like the following:
> //Register a custom resolver
> foUserAgent.setURIResolver(new ClasspathResourceResolver());
> //The clas has to implement the URIResolver
> public class ClasspathResourceResolver implements URIResolver {
> //you overwrite the resolve method
> public InputStream resolve(String uri){
> //Resolves the path to a resource in the classpath (since that jar
> should be in the classpath
> this.getClass().getResourceAsStream(uri);
> Regards,
> ToM
Need a new place to live? Find it on Domain.com.au
View raw message