Changes between BDK 1.0 - February '98 and BDK 1.0 - March '98

  1. Changed SimpleClassLoader.getLocalResource() to be public. It now compiles under 1.2.

  2. ToolBox.getJarNames() now sorts the names of the returned jars. This allows for UI consistency of items displayed in the ToolBox across JDK1.1 implementations.

  3. Added a scrollbar to the ToolBox palette! In ToolBox.java, the ToolBoxPanel is now contained inside a ScrollPane. More than 16 beans are supported and up to 28 are simultaneously visible.

  4. Exposed the hidden-state attribute from Report.java. If a bean sets the hidden-state attribute in its BeanInfo BeanDescriptor, you can now use the "Report..." menu to find out.

  5. We only place beans in the Toolbox palette that can be located through a JAR manifest entry. In JarLoader.java, createJarInfo() now creates JarInfo only for beans that can be located through a manifest entry as per section 11.6.1 of the 1.0.1 JavaBeans(tm) API Specification.

  6. In Wrapper.java, we now warn that tranistional beans may not be supported in all bean containers.

Changes between BDK 1.0 - November '97 and BDK 1.0 - February '98

  1. File|MakeApplet now generates source code to explicitly reinitialize nested beans. Only beans with hidden-state are now serialized.

  2. ExplicitButtonBeanInfo now sets the "hidden-state" attribute for its BeanInfo.

  3. The class names MakeAppletDialog and ObjectInputStreamWithLoader, along with their corresponding .java filenames, were shortend to MakeAppDlg and ObjectInputStreamLoader ,repectively, to accomodate building the BeanBox on platforms with 32 character filename limitations.

  4. Made class BeanBoxFrame public.

Changes between BDK 1.0 - September '97 and BDK 1.0 - November '97

  1. File|MakeApplet now correctly implements the JavaBeans1.01 architecture regarding Externalizable and Serializable components.

  2. File|MakeApplet now uses EditorProperties to restore global properties of BeanBox.

  3. Workaround to build BDK on JDK1.1.4.

  4. BeanBox now generates meaningful error messages when a class is missing in a JAR file on JDK1.1.4.

  5. Properties with null values are now reported (and ignored) at startup time.

  6. Restored cut/paste, which broke in Sep97.

  7. We now provide a plain ZIP packaging of the BDK.

  8. Various minor bug fixes, including not clearing BeanBox if a File|Load is cancelled, and not deleting a Bean if serialization fails during an Edit|Cut.

Changes between BDK 1.0 - June '97 and BDK 1.0 - September '97

  1. Added a File|MakeApplet menu to create an Applet from the BeanBox.

  2. Removed support for nested BeanBoxes, as it was buggy and incomplete.

  3. Instantion of classes from a JAR is as needed, not up-front.

  4. Fixed major resource leak in SimpleClassLoader that affected large JARs

  5. Fixed problems with deserialization of arrays in SimpleClassLoader. The corresponding problems in JDK are fixed in JDK1.1.4.

  6. Various minor bug fixes, including: parsing of Manifests using continuation lines; images from URL's obtained via getResource(); problems with application/x-java-* types in some JDKs.

  7. Directly depend on java.util.zip.* classes, rather than via sun.tools.jar.

  8. Provide feedback when loading via Edit|LoadJar...

  9. Improved catching and reporting of exceptional conditions.

Changes between BDK 1.0 - April '97 and BDK 1.0 - June '97

  1. Various minor bug fixes.

  2. Provide better diagnostics when BeanBox can't load a bean

  3. Improved BeanBox cursor management on windows.

  4. Added support for beans that are in the default package.

  5. Added support for lightweight components.

  6. Made JellyBean and OurButton into lightweight components.

  7. Added the name of the current bean to the PropertySheet title bar.

Changes between BDK 1.0 - February '97 and BDK 1.0 - April '97

  1. Added the revised JavaBeans tutorial.

  2. Removed all uses of deprecated AWT APIs from the BeanBox and the sample beans.

  3. Converted the BeanBox and the sample beans to use the new AWT event model throughout. Also made sure that the BeanBox still works correctly with beans using the old JDK 1.0 AWT event model.

  4. Improved the management of event connections and bound property connections inside the BeanBox. Now the BeanBox's Wrapper objects keep track of the event listeners associated with each bean and handle the saving and restoring of the event "wiring" during serialization. This is consistent with the Beans 1.00 spec.

  5. Added startup frame to announce when we are loading and analyzing jars.

  6. Changed the JAR loader to provide better diagnostics when it has trouble loading a bean from a JAR.

  7. Added scrollbar support to the PropertySheet. If the PropertySheet tries to exceed its current allowed maximum size, we wrap it in a ScrollPane. The current maximum size can be changed by stretching the PropertySheet frame.

  8. Added a new example bean, the BlueBean, that uses Java externalization to save and restore its persistent state.

  9. Added an item under Edit for serializing out an instantiated Bean. This may be useful to define new beans by creating serialized prototypes of them.

  10. A number of scattered minor bug fixes.

Changes between BDK 1.0 beta-3 and BDK 1.0

  1. The BDK 1.0 depends on the final version of JDK 1.1, which includes the java.beans.* API classes.

  2. Fully integrated JAR support, so various BDK beta-3 problems around unjarring things and getting conflicting class loaders will go away.

  3. Added support for invisible beans. These are represented via a small visible box. This can be turned on or off using the "view" menu. Added an example invisible bean in demo/sunw/demo/misc/TickTock.java

  4. Added support for loading serialized beans into the BeanBox. JAR files can now name a serialized object as a bean. As part of the buttons.jar we now create a serialized bean called "OrangeButton".

  5. Added support for turning on and off "design mode" so you can see how your beans will look at runtime, using the "view" menu.

  6. Added support for beans that are applets. In beans.instantiate if the new bean is an applet it will get inited and given a simple AppletStub and AppletContext. However note that it is the containing application's responsibility to check if a bean is an applet and call "start" after adding the applet to an AWT container. The juggler is now an applet as well as a bean.

  7. Added sample code in demo/sunw/wrapper for running beans inside a wrapping applet.

  8. Sample code in demo/sunw/demo/encapsulatedEvents for writing a generic event handler that can sink arbitrary kinds of events.

  9. Added a tutorial document on using the BDK.

  10. Improved the installation for Windows 95 and Windows NT.

  11. Various assorted bug fixes, notably around our handling of nested beanboxes and rebuilding the menubar.

Changes between BDK 1.0 beta-2 and beta-3

  1. The BDK beta-3 depends on JDK 1.1 beta-3.

  2. The java.beans.* API classes are now bundled in JDK 1.1 beta-3. These .class files are therefore no longer supplied with the BDK. We still provide reference source for these classes in the BDK.

  3. The syntax of the String argument to Beans.instantiate has changed. For serialized objects this should now be a dot separated string such as "a.b.c", which will be converted to a resource name such as "a/b/c.ser". See the javadoc for more details.

  4. The BeanBox now support JAR files more directly. For example, it reads bean classes directly from the JAR files, using a special class loader. The JAR file still needs to be unjar-ed by the build mechanism to enable adaptor class construction.

  5. The BeanBox now runs customizers as modal dialogs. This avoids conflicts between property sheet edits and customizer updates.

  6. BeanBox method hookups are now more flexible so you can connect event deliveries to either methods with the "right" type signature or to methods that take no arguments.

Changes between BDK 1.0 beta-1 and beta-2

  1. Fixes for several minor bugs, including:

  2. We've moved the default property editor classes from java.beans.editors to sun.beans.editors. There had been some confusion over the role of these classes. They aren't intended to be API classes in their own right, and beans developers shouldn't use them directly. Instead they only exist to allow the PropertyEditorManager to provide default property editors for the most common Java types. Hopefully moving them to sun.beans.editors will clarify that these classes are merely part of the beans implementation, that they may be overridden by ISVs, and aren't by themselves public APIs.

  3. Promoted java.beans.editors.PropertyEditorSupport to java.beans.PropertyEditorSupport, as this class is intended to be a public API.


Java, JavaBeans, and JavaSoft are trademarks of Sun Microsystems Inc.

Copyright © 1996 Sun Microsystems, Inc., 2550 Garcia Ave., Mtn. View, CA 94043-1100 USA.
All rights reserved.