JavaBeans is quickly becoming the component technology of choice for software developers as they move
from a focus on desktop OS-specific applications to solutions based on the industry standard network
computing environment - Java. With its open architecture, platform independence, network affinity, and its
natural extension of existing Java skills, JavaBeans has gained momentum as developers are delivering
JavaBean components for use in application assembly tools and e-business application solutions.
For many corporations and developers, their current component investment has been directed at the proprietary,
desktop optimized, ActiveX (formerly OCX) technology on Windows platforms. With the networked computing
solutions, IS organizations and independent software developers must be careful not to develop components
that are limited to specific operating systems, which is counter to the basic principle of choice in network
computing solutions. Therefore, developers are moving their desktop component investments to the network,
using JavaBeans, to leverage the opportunities offered by e-business.
In addition, many of the capabilities that are so exciting to JavaBeans developers are not available on ActiveX,
or are incomplete. There is, therefore, a need for a set of conversion conventions and tools designed to
convert desktop ActiveX components into JavaBeans components. The resulting JavaBeans will be usable in
both in new network savvy e-business applications as well as traditional desktop applications, including
ActiveX containers. Developers and customers benefit from the advantages offered by JavaBeans by simply
leveraging their current investments in ActiveX. Thus, IBM's development of the kit to aid migration.
JavaBeans Migration Assistant for ActiveX
IBM and Taligent, its object oriented technology subsidiary, with support from JavaSoft, are developing
a set of conversion conventions, a porting guide and tool that will allow developers to easily convert their
Windows ActiveX components into JavaBeans.
Using the information already provided by installing an ActiveX component, the migration assistant tool
generates a JavaBean source code skeleton that can be filled in with the component function. This JavaBean,
as a pure Java component, can then be used within either Java applications natively or with ActiveX containers
using the JavaBeans bridge to ActiveX provided by JavaSoft.
IBM plans to ship the JavaBeans Migration Assistant for ActiveX in Taligent's VisualAgeŽ WebRunner(tm)
(see related press release) and VisualAge for Java development tools. In addition, JavaSoft intends to include
this technology in a future release of the Beans Development Kit (BDK), providing migration assistance
to all JavaBeans and ActiveX developers. This will allow developers to utilize a common component model
that may be leveraged by a wide range of tools, including the IBM VisualAge family.
Who should use this kit ?
If you are an ActiveX developer, and you want to participate in the growing JavaBeans market, this is the fastest
way to leverage your existing investment to gain an early foothold in this new market. The JavaBeans bridge to
ActiveX ensures that your Java development time allows you to deliver both to your existing customers
and to this new market.
If you are a customer that has invested in developing ActiveX components for in-house applications, and
you want to be able to leverage the existing components in creating new applications for your corporate
intranet or e-business applications, this tool provides a standard migration path for your development staff
to quickly adapt existing code and skills to Java.
As a benefit of migrating from ActiveX to JavaBeans, the advantages of developing in Java including faster cycle
times, reduced component complexity and delivering to multiple platforms with one source image - not multiple
#ifdef'ed versions - are realized.
What does the Migration Assistant Tool do ?
The JavaBeans Migration Assistant for ActiveX contains an automated tool that uses the ActiveX information,
available in the registry or a disk file, to create a set of methods, properties and enums that an equivalent
JavaBean would implement to achieve the same function. Data types are mapped from Windows-specific types
to their equivalent Java types.
The migration assistant tool provides a graphical interface that displays the individual elements of an ActiveX
component that is loaded. The developer may choose at this time to produce a bean that implements the entire
ActiveX component using provided default mappings, or may customize the output. For creating a custom
bean, the elements of the ActiveX are displayed in three categories - properties and methods, events and enums.
The developer may select those elements desired to include in the created bean.
When the developer has selected the elements to migrate, Java source code is generated as a framework
for subsequent 100% Java implementation. Generated event code is incorporated into the JavaBean event
handling model. The JavaBeans are fully compliant with the JDK 1.1 and JavaBeans specifications.
The JavaBean is now ready to accept the component implementation code. Typically this will involve copying
C++ code into the generated bean, converting the language constructs to Java (mostly trivial) and adapting
code to Java libraries.
In a subsequent release, the tool will add the capability to do 'round-trip' code generation. This will allow
developers to migrate a portion of the ActiveX component initially, then to rerun the tool again at a later time
to incorporate more of the elements of the ActiveX while retaining the modifications that had been made to the
initial JavaBean.
What are the key benefits of adopting this method for creating
components ?
First and foremost, building components for the Java and ActiveX markets using one development technology is
the most cost effective way to deliver to the existing marketplace and to establish yourself in the next marketplace.
The next marketplace consists of many platforms, and many cooperative networked applications. ActiveX
promises cross-platform capabilities, but platform support off of Windows requires writing code to many graphics
systems and lack of library support. Java provides equal support across platforms, and establishes a core set of
functionality suitable for supporting high function components.
JavaBeans, with an open architecture for tool developers, frees developers to choose the tool, or set of tools,
that best suits their needs both today and into the future. A JavaBean may be created today using a wizard, be
incorporated into a container bean using a simple construction tool tomorrow and that container may be
incorporated into an application using a high end builder the next day - all by different developers, on different
platforms. If the platform happens to be Windows, the final deliverable could be an ActiveX container or a Java
container, for the JavaBean developer it is not an issue. 'Write once, run anywhere' really does mean
anywhere !
In a networked world, the benefits of Java security, portability and usefulness have been established.
Developing separate versions of products for networked and non-networked use is expensive, especially
when two different technologies are used. Java clearly is the choice for the network, this tool makes it easy
to get there.
Availability of the JavaBeans Migration Assistant for ActiveX
The kit will be available, in alpha form, in April 1997. Information on the tool, and downloading, will be available on
the IBM Developer's Domain (www.software.ibm.com/ad),
Taligent (www.taligent.com)
and JavaSoft (www.javasoft.com) Web sites.
It will also be available from,
- Taligent, in the VisualAge WebRunner toolkit
- JavaSoft, in future versions of the BDK (Beans Development Kit)
- IBM, in VisualAge for Java
|