Projektowanie systemów informatycznych
xsl: import.
Instancje klasy Transformer można uzyskać za pomocą metody newTransformer () obiektu TransformerFactory. Transformacji dokonuje metoda transform klasy Transformer. Jej argumentami są oczywiście Source iResult. Klasami implementującymi interfejs Source są DOMSource, SAXSource, StreamSource. Interfejs Result implementują zaś klasy DOMResult, SAXResult, StreamResult.
Obiekt Transformer możemy utworzyć z kilkoma instrukcjami transformacji. W tym przypadku wyszczególnione transformacje zostaną oczywiście wykonane. Jeśli Transformer nie posiada instrukcji, to zwyczajnie kopiuje źródło do wyniku.
Przykład. Program dokonuje przekształcenia zamówienia (komunikatu SOAP) do postaci pliku html.
Szkielet programu order_xslt:
1. Import pakietów Javy
• j ava. io. * - podstawowy pakiet
• j avax.xml.parsers.*,org.xml.sax.*,org.w3c.dom.*,
javax.xml.transform. *, javax.xml.transform.stream.*, javax.xml. transform.dom. * - pakiety umożliwiające przetwarzanie dokumentu XML na postać HTML
2. Główne fragmenty programu
public class order_xslt {
static Document document;
f-cja main
public static void main (String argv [])
if (argv.length != 2)
{
System.err.println ("Files not found");
System.exit (1);
utworzenie obiektu DocumentBuilderFactory i skonfigurowanie go tak, aby wspierał mechanizm przestrzeni nazw
DocumentBuilderFactory factory =
DocumentBuilderFactory.newlnstance()
factory.setNamespaceAware(true);
try
{
utworzenie obiektu reprezentującego arkusz stylów File stylesheet = new File(argv[0]); obiekt datafile reprezentuje plik xml
File datafile = new File(argv[l]);
DocumentBuilder builder = factory.newDocumentBuilder();
Michał Bleja
Uniwersytet Łódzki