Categories: Languages, Scripting
Author: Apache Jakarta
Latest version: 3.0 Beta 2Added 2005-02-01
Bean Scripting Framework (BSF) is a set of Java classes which provides scripting language support within Java applications, and access to Java objects and methods from scripting languages. BSF allows one to write JSPs in languages other than Java while providing access to the Java class library. In addition, BSF permits any Java application to be implemented in part (or dynamically extended) by a language that is embedded within it. This is achieved by providing an API that permits calling scripting language engines from within Java, as well as an object registry that exposes Java objects to these scripting language engines. BSF supports several scripting languages currently: * Javascript (using Rhino ECMAScript, from the Mozilla project) * Python (using either Jython or JPython) * Tcl (using Jacl) * NetRexx (an extension of the IBM REXX scripting language in Java) * XSLT Stylesheets (as a component of Apache XML project's Xalan and Xerces) In addition, the following languages are supported with their own BSF engines: * Java (using BeanShell, from the BeanShell project) * JRuby * JudoScript * Groovy * ObjectScript
Categories: Scripting
Author: Pat Niemeyer
Latest version: 2.0 Beta 4Added 2005-02-21
BeanShell is an embeddable Java source interpreter with object scripting language features, written in Java.BeanShell executes standard Java statements and expressions, in addition to obvious scripting commands and syntax. BeanShell supports scripted objects as simple method closures like those in Perl and JavaScript.You can use BeanShell interactively for Java experimentation and debugging or as a simple scripting engine for your applications. In short: BeanShell is a dynamically interpreted Java, plus some useful stuff. Another way to describe it is to say that in many ways BeanShell is to Java as Tcl/Tk is to C: BeanShell is embeddable - You can call BeanShell from your Java applications to execute Java code dynamically at run-time or to provide scripting extensibility for your applications. Alternatively, you can call your Java applications and objects from BeanShell; working with Java objects and APIs dynamically. Since BeanShell is written in Java and runs in the same space as your application, you can freely pass references to "real live" objects into scripts and return them as results.Features include:* Uses the Java reflection API to provide runtime interpreted execution of Java statements and expressions.* Transparent access to all Java objects and APIs.* Runs in four modes: command line, console, applet, remote session server.* Works in applets as well as applications (no compiler or classloader)* The interpreter is ~175K jar file (~135K without the utilities).* Pure Java.