| Apache BSF 3 Beta3 Release Notes |
| -------------------------------- |
| |
| Apache BSF 3 is an open-source implementation of JSR-223, |
| "Scripting for the Java Platform". |
| |
| *----------------------------------------------------------------------* |
| * BSF3 was developed according to the JSR-223 specs, but has not yet * |
| * been tested via the JSR-223 TCK. BSF can therefore not be considered * |
| * a compatible implementation of JSR-223. * |
| *----------------------------------------------------------------------* |
| |
| However, the implementation is believed to be complete. |
| |
| * BSF-3.0 is not compatible with BSF-2.4 - the API is completely different. |
| * BSF-3.0 can be deployed and used Java 1.4+ - it does not require Java 1.6 |
| |
| Incomplete packages |
| ------------------- |
| The org.apache.bsf.utils.http and org.apache.bsf.xml packages contain several classes. |
| These are not complete, and should not be relied on. |
| They are not needed in order to use the javax.script API. |
| |
| Changes from previous releases |
| ------------------------------ |
| |
| This 3.0-beta3 release is a maintenance release update to support the latest releases |
| of various script language engines. |
| |
| The classes in the javax.script package have been overhauled to align the API, Javadoc and |
| the behaviour with the JSR-223 spec, and several unit tests have been added. |
| |
| Some of these changes may cause problems for programs that have been written to the BSF 3.0 |
| Javadoc rather than the JSR-223 spec. |
| |
| javax.script class changes |
| ========================== |
| AbstractScriptEngine - Javadoc only |
| Bindings - Javadoc only |
| Compilable - Javadoc only |
| CompiledScript - Javadoc only |
| Invocable - Javadoc only |
| ScriptContext - Javadoc only |
| ScriptEngine - Javadoc only |
| ScriptEngineFactory - Javadoc only |
| |
| ScriptEngineManager - Javadoc, also protected fields made private: |
| - engineSpis |
| - nameAssociations |
| - extensionAssocitions |
| - mimeTypeAssociations |
| - globalscope |
| - now uses javax.imageio.spi.ServiceRegistry.lookupProviders() |
| rather than the Sun-specfic method sun.misc.Service.providers() |
| - put() method checks that key is non-null (NullPointerException) |
| and non-empty (IllegalArgumentException) |
| - setBindings() throws IllegalArgumentException if the parameter is non-null |
| - the registerXXX() methods throw NullPointerException if any of their parameters is null |
| - the getEngineByXXX() methods throw NullPointerException if their parameter is null |
| |
| ScriptException |
| - all fields made private and final |
| |
| SimpleBindings |
| - Javadoc |
| - protected field "map" made private & final |
| - methods now check keys to ensure that they are non-null, non-empty strings |
| |
| SimpleScriptContext |
| - globalScope field now defaults to null |
| - reader, writer and errorWriter fields are now protected (rather than private) |
| This is required by JSR-223 |
| - name parameters are now checked to ensure that they are non-null, non-empty strings |
| - getBindings() throws IllegalArgumentException if the scope is invalid |
| - getScopes() now returns an unmodifiable List |