Author: rony
Date: Sun Nov 26 06:17:42 2006
New Revision: 479366

URL: http://svn.apache.org/viewvc?view=rev&rev=479366
Log:
20061126 14:15 Added a sample of 'TableFiller.java' in ooRexx. This may be 
interesting, as the Rexx engine gets invoked via an instance of BSFManager, 
which itself creates an own instance of BSFManager to carry out the xslt 
transformation!

Added:
    jakarta/bsf/trunk/samples/xsl/TableFiller.jrexx   (with props)

Added: jakarta/bsf/trunk/samples/xsl/TableFiller.jrexx
URL: 
http://svn.apache.org/viewvc/jakarta/bsf/trunk/samples/xsl/TableFiller.jrexx?view=auto&rev=479366
==============================================================================
--- jakarta/bsf/trunk/samples/xsl/TableFiller.jrexx (added)
+++ jakarta/bsf/trunk/samples/xsl/TableFiller.jrexx Sun Nov 26 06:17:42 2006
@@ -0,0 +1,64 @@
+/* author:     Rony G. Flatscher

+   name:       TableFiller.rex

+   date:       2006-11-26

+   purpose:    demonstrate how to use the xsl-BSF-engine from ooRexx, modelled 
after

+               "TableFiller.java"

+

+   needs:      Java 4.x *or*

+

+               Note on using Java 1.5, Java 1.6 or higher:

+

+               - if the sample does not work in these environments then, copy 
the Xalan-jars from

+                 "http://xml.apache.org/xalan-j/downloads.html"; distribution 
into the "endorsed"

+                 directory of these Java versions (e.g. "JAVA_JRE_HOME 
/jre/lib/endorsed/"); make

+                 sure that the archive "xalan.jar" (from the xalan-tool jar) 
is available as well;

+                 tested with Xalan 2.7 and 2.8 on Java 1.5 and beta-version of 
Java 1.6

+

+   usage:      rexxj TableFiller.rex style1.xsl table-data.xml

+               rexxj TableFiller.rex style2.xsl table-data.xml

+*/

+

+parse arg xslFileName xmlFileName

+if xmlFileName="" then

+do

+   say "Usage: rexxj TableFiller.rex xslfilename xmlfilename"

+   exit -1

+end

+

+frame=.bsf~new("java.awt.Frame", "Table Filler (ooRexx)")

+frame~bsf.addEventListener('window', 'windowClosing', 'call bsf "exit"')

+

+panel=.bsf~new("java.awt.Panel", .bsf~new("java.awt.GridLayout", -1, 2))

+

+   -- import the Java Font class, store it in .local as "jfont"

+call bsf.import "java.awt.Font", "jfont"

+f=.jfont~new("SansSerif", .jfont~bold , 14)

+

+do text over .list~of("First", "Last")

+   l=.bsf~new("java.awt.Label", text) ~~setFont(f)

+   panel~add(l)

+end

+

+frame~add("Center", panel)

+

+mgr=.bsf~new("org.apache.bsf.BSFManager") -- create a new BSFManager instance

+mgr~declareBean("panel", panel, panel~getClass)

+mgr~registerBean("xslt:src", .bsf~new("java.io.FileReader", xmlFileName))

+

+-- 
xslString=bsf.import("org.apache.bsf.util.IOUtils")~getStringFromReader(.bsf~new("java.io.Filereader",
 xslFileName))

+xslString=charin(xslFileName, 1, chars(xslFileName))  -- read content of file

+mgr~exec("xslt", xslFileName, 0, 0, xslString)

+

+frame ~~pack ~~setVisible(.true)

+

+do forever

+   a = bsf("pollEventText")     /* wait for an eventText to be sent     */

+   interpret a                  /* execute as a Rexx program            */

+   say "(in Rexx), polled: ["a"]"

+   if result= "SHUTDOWN, REXX !" then leave     /* JVM will be shutdown */

+end

+say "Now exiting Rexx."

+

+

+

+::requires bsf.cls      -- load BSF (Java) support


Propchange: jakarta/bsf/trunk/samples/xsl/TableFiller.jrexx
------------------------------------------------------------------------------
    svn:executable = *

Propchange: jakarta/bsf/trunk/samples/xsl/TableFiller.jrexx
------------------------------------------------------------------------------
    svn:keywords = Author Date Rev Id URL



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to