Appendix B. BeanShell: Simple Java Scripting

In this tutorial, we (in this case, I, Pat) have avoided talking about many third-party tools that aren't part of the standard JDK. I'm going to make an exception here to mention a nifty, free Java tool called BeanShell. As its name suggests, BeanShell can be used as a Java "shell." It allows you to type standard Java syntaxstatements, expressions, and even classeson the command line and see the results immediately. With BeanShell, you can try out bits of code as you work through the tutorial. (The current release of BeanShell doesn't support all of the new Java 5.0 syntax, but check for updates that will.) You can access all Java APIs and even create graphical user interface components and manipulate them "live." BeanShell uses only reflection, so there is no need to compile class files. I wrote BeanShell while developing the examples for this tutorial, and I think it makes a good companion to have along on your journey through Java. BeanShell is an open source software project, so the source code is included on the DVD that accompanies this tutorial (view CD content online at You can always find the latest updates and more information at its official home: In recent years, BeanShell has become fairly popular. It is part of the Java Development Environment for Emacs (JDEE) and has been distributed with the NetBeans and Sun Java Studio IDEs as well as BEA's WebLogic app server. I hope you find it both useful and fun!