Class BshScriptUtils

java.lang.Object
org.springframework.scripting.bsh.BshScriptUtils

public abstract class BshScriptUtils extends Object
Utility methods for handling BeanShell-scripted objects.
Since:
2.0
Author:
Rob Harrop, Juergen Hoeller
  • Constructor Details

    • BshScriptUtils

      public BshScriptUtils()
  • Method Details

    • createBshObject

      public static Object createBshObject(String scriptSource) throws bsh.EvalError
      Create a new BeanShell-scripted object from the given script source.

      With this createBshObject variant, the script needs to declare a full class or return an actual instance of the scripted object.

      Parameters:
      scriptSource - the script source text
      Returns:
      the scripted Java object
      Throws:
      bsh.EvalError - in case of BeanShell parsing failure
    • createBshObject

      public static Object createBshObject(String scriptSource, Class<?> @Nullable ... scriptInterfaces) throws bsh.EvalError
      Create a new BeanShell-scripted object from the given script source, using the default ClassLoader.

      The script may either be a simple script that needs a corresponding proxy generated (implementing the specified interfaces), or declare a full class or return an actual instance of the scripted object (in which case the specified interfaces, if any, need to be implemented by that class/instance).

      Parameters:
      scriptSource - the script source text
      scriptInterfaces - the interfaces that the scripted Java object is supposed to implement (may be null or empty if the script itself declares a full class or returns an actual instance of the scripted object)
      Returns:
      the scripted Java object
      Throws:
      bsh.EvalError - in case of BeanShell parsing failure
      See Also:
    • createBshObject

      public static Object createBshObject(String scriptSource, Class<?> @Nullable [] scriptInterfaces, @Nullable ClassLoader classLoader) throws bsh.EvalError
      Create a new BeanShell-scripted object from the given script source.

      The script may either be a simple script that needs a corresponding proxy generated (implementing the specified interfaces), or declare a full class or return an actual instance of the scripted object (in which case the specified interfaces, if any, need to be implemented by that class/instance).

      Parameters:
      scriptSource - the script source text
      scriptInterfaces - the interfaces that the scripted Java object is supposed to implement (may be null or empty if the script itself declares a full class or returns an actual instance of the scripted object)
      classLoader - the ClassLoader to use for evaluating the script
      Returns:
      the scripted Java object
      Throws:
      bsh.EvalError - in case of BeanShell parsing failure