Class XSLTProcessorApplet

All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public class XSLTProcessorApplet extends Applet
Provides applet host for the XSLT processor. To perform transformations on an HTML client:
  1. Use an <applet> tag to embed this applet in the HTML client.
  2. Use the DocumentURL and StyleURL PARAM tags or the setDocumentURL(java.lang.String) and setStyleURL(java.lang.String) methods to specify the XML source document and XSL stylesheet.
  3. Call the getHtmlText() method (or one of the transformToHtml() methods) to perform the transformation and return the result as a String.
This class extends Applet which ultimately causes this class to implement Serializable. This is a serious restriction on this class. All fields that are not transient and not static are written-out/read-in during serialization. So even private fields essentially become part of the API. Developers need to take care when modifying fields.
See Also:
  • Constructor Details

    • XSLTProcessorApplet

      public XSLTProcessorApplet()
      The XSLTProcessorApplet constructor takes no arguments.
  • Method Details

    • getAppletInfo

      public String getAppletInfo()
      Get basic information about the applet
      Overrides:
      getAppletInfo in class Applet
      Returns:
      A String with the applet name and author.
    • getParameterInfo

      public String[][] getParameterInfo()
      Get descriptions of the applet parameters.
      Overrides:
      getParameterInfo in class Applet
      Returns:
      A two-dimensional array of Strings with Name, Type, and Description for each parameter.
    • init

      public void init()
      Standard applet initialization.
      Overrides:
      init in class Applet
    • start

      public void start()
      Automatically called when the HTML client containing the applet loads. This method starts execution of the applet thread.
      Overrides:
      start in class Applet
    • paint

      public void paint(Graphics g)
      Do not call; this applet contains no UI or visual components.
      Overrides:
      paint in class Container
    • stop

      public void stop()
      Automatically called when the HTML page containing the applet is no longer on the screen. Stops execution of the applet thread.
      Overrides:
      stop in class Applet
    • destroy

      public void destroy()
      Cleanup; called when applet is terminated and unloaded.
      Overrides:
      destroy in class Applet
    • setStyleURL

      public void setStyleURL(String urlString)
      Set the URL to the XSL stylesheet that will be used to transform the input XML. No processing is done yet.
      Parameters:
      urlString - valid URL string for XSL stylesheet.
    • setDocumentURL

      public void setDocumentURL(String urlString)
      Set the URL to the XML document that will be transformed with the XSL stylesheet. No processing is done yet.
      Parameters:
      urlString - valid URL string for XML document.
    • freeCache

      public void freeCache()
      The processor keeps a cache of the source and style trees, so call this method if they have changed or you want to do garbage collection.
    • setStyleSheetAttribute

      public void setStyleSheetAttribute(String nameOfIDAttrOfElemToModify, String elemId, String attrName, String value)
      Set an attribute in the stylesheet, which gives the ability to have some dynamic selection control.
      Parameters:
      nameOfIDAttrOfElemToModify - The name of an attribute to search for a unique id.
      elemId - The unique ID to look for.
      attrName - Once the element is found, the name of the attribute to set.
      value - The value to set the attribute to.
    • setStylesheetParam

      public void setStylesheetParam(String key, String expr)
      Submit a stylesheet parameter.
      Parameters:
      key - stylesheet parameter key
      expr - the parameter expression to be submitted.
      See Also:
    • escapeString

      public String escapeString(String s)
      Given a String containing markup, escape the markup so it can be displayed in the browser.
      Parameters:
      s - String to escape The escaped string.
    • getHtmlText

      public String getHtmlText()
      Assuming the stylesheet URL and the input XML URL have been set, perform the transformation and return the result as a String.
      Returns:
      A string that contains the contents pointed to by the URL.
    • getTreeAsText

      public String getTreeAsText(String treeURL) throws IOException
      Get an XML document (or stylesheet)
      Parameters:
      treeURL - valid URL string for the document.
      Returns:
      document
      Throws:
      IOException
    • getSourceTreeAsText

      public String getSourceTreeAsText() throws Exception
      Get the XML source Tree as a text string suitable for display in a browser. Note that this is for display of the XML itself, not for rendering of HTML by the browser.
      Returns:
      XML source document as a string.
      Throws:
      Exception - thrown if tree can not be converted.
    • getStyleTreeAsText

      public String getStyleTreeAsText() throws Exception
      Get the XSL style Tree as a text string suitable for display in a browser. Note that this is for display of the XML itself, not for rendering of HTML by the browser.
      Returns:
      The XSL stylesheet as a string.
      Throws:
      Exception - thrown if tree can not be converted.
    • getResultTreeAsText

      public String getResultTreeAsText() throws Exception
      Get the HTML result Tree as a text string suitable for display in a browser. Note that this is for display of the XML itself, not for rendering of HTML by the browser.
      Returns:
      Transformation result as unmarked text.
      Throws:
      Exception - thrown if tree can not be converted.
    • transformToHtml

      public String transformToHtml(String doc, String style)
      Process a document and a stylesheet and return the transformation result. If one of these is null, the existing value (of a previous transformation) is not affected.
      Parameters:
      doc - URL string to XML document
      style - URL string to XSL stylesheet
      Returns:
      HTML transformation result
    • transformToHtml

      public String transformToHtml(String doc)
      Process a document and a stylesheet and return the transformation result. Use the xsl:stylesheet PI to find the document, if one exists.
      Parameters:
      doc - URL string to XML document containing an xsl:stylesheet PI.
      Returns:
      HTML transformation result