[xsl] java-xsl - functional(?) URIResolver

Subject: [xsl] java-xsl - functional(?) URIResolver
From: Robert Koberg <rob@xxxxxxxxxx>
Date: Fri, 29 Feb 2008 17:01:34 -0500
Hi,

Maybe some of you already do this, but I am finding anonymous
URIResolvers incredibly useful. You can use private method variables,
instance variables, instance methods, etc from the same class that you
call the transform. In the past I usually passed objects to the
URIResolver constructor, but this seems much better (example below).

Anybody see any problems with this approach?


Transformer transformer = xslTemplates.newTransformer();
transformer.setURIResolver(new URIResolver() {
  public Source resolve(String href, String base) {
    if ("page-data".equals(href)) {
      return new StreamSource(
          new StringReader(
              resolvePageData(handler)));
    } else if ("message-keys".equals(href)) {
      return new StreamSource(
          new StringReader(
              resolveMessageKeys(handler)));
    } else {
      return new StreamSource(
          new StringReader(
              resolveNotHandled(href)));
    }
  }
});

best,
-Rob

Current Thread