News and New Product Briefs (5/20/99)

Oracle unveils Java tools beta

Oracle announced the beta release of a new set of Java application tools, the Oracle Business Components for Java (BCJ), at the recent iDevelop 99 conference in Burlingame, CA.

According to Oracle officials, BCJ — a set of Java framework classes and wizards — use XML to describe data in a structured way in order to manage the metadata of an application. This makes it easy to customize an application just by editing the XML information.

BCJ act as add-ins to the Oracle JDeveloper 2.0 IDE. The wizards are designed to handle low-level database interactions, so developers can concentrate on crafting solid, reusable business logic.

The BCJs execute in the Oracle8i database.

Check with the Oracle Technology Network to register for a beta version of the Business Components for Java. Pricing for the final version has not been determined.

EJB draft specification 1.1 released

Sun announced a draft release of the Enterprise JavaBeans Specification version 1.1, which focuses on enhancements in the areas of assembly and deployment, and persistence (through mandatory Entity Beans), as well as fixes.

EJB 1.1 has been fine-tuned to clarify the responsibilities of the Bean Provider, the Application Assembler, and the Deployer, based on their definitions. The content of the Deployment Descriptor has been modified so that it better maps into the roles of the three definitions, by separating the structural information delivered by the Provider (like the name for the bean, its class, its interfaces, and its type) from the assembly information (security roles, transactional behavior, and so on) provided by the Application Assembler.

Also, the Deployment Descriptor no longer contains information that should be supplied by the Deployer during application deployment instead of by the Bean Builder or the Assembler. And, enterprise beans contained in multiple ejb-jar files can be assembled into a larger application-deployment segment.

The JavaBeans-based Deployment Descriptor format has been replaced with an XML-based Deployment Descriptor format. A provided tool makes it easy to complete the transition from the old to the new format.

Also, to aid in cross-platform use, the Deployment Descriptor no longer includes information supplied by the Deployer at deployment time, which is specific to each EJB server.

EJB 1.1 includes security API improvements that focus on better application assembly and deployment — a security model that enables bean providers to craft enterprise beans with no knowledge of the target security domain.

To address persistence, support for Entity Beans has been made mandatory in this version (it was planned for version 2.0).

Errors and bugs from version 1.0 have been fixed, and the specification has been tightened in the areas of transaction specification, exception specification, and the specification of the required programming environment. Other changes/additions include:

  • Support for generic resource naming
  • Tightened rules for the runtime environment the Bean Provider should expect, and the EJB Container Provider provides
  • Information for capturing dependencies among multiple enterprise beans that make up an assembled application

EJB 1.1:

Info on Entity Beans:

Beginning Java 2 book

Wrox Press announced the second edition of Ivor Horton’s best-selling book on Java, Beginning Java 2.

The author completely revised the book for Java 2 and added coverage of the Java Foundation Classes (Java2D and Swing) and the Collections API. In this tome, Horton assumes that the reader has no Java knowledge and only the most basic prior programming experience. He starts from scratch, and takes the reader through the development of a sample program over several channels.

The book is designed as a self-study guide, with tutorials structured to build on knowledge gained in the previous chapter.

And the author loves Java. Horton said, “In all the years I have been programming and teaching people about computers, I have never come across a language that offers the power and flexibility of Java, and all for free!”

The book chapters include:

  • “Introducing Java,”
  • “Programs, Data, Variables and Calculation,”
  • “Loops and Logic,”
  • “Arrays and Strings,”
  • “Defining Classes,”
  • “Extending Classes and Inheritance,”
  • “Exceptions,”
  • “Streams, Files and Stream Output,”
  • “Stream Input and Object Streams,”
  • “Utility Classes,”
  • “Threads,”
  • “Creating Windows,”
  • “Handling Events,”
  • “Drawing in a Window,”
  • “Extending the GUI,”
  • “Filing and Printing Documents,”
  • “Images and Animation,”
  • “Talking to Databases,”
  • “The JDBC in Action,”

Beginning Java 2 by Ivor Horton, Wrox Press, ISBN 1-86100-223-8, February 1999, 1,136 pp., 9.99.

Flash: Microsoft, Sun appeals hearing set

A US Court of Appeals has scheduled a hearing in Sun Microsystems’ Java lawsuit against Microsoft for June 16.

Vendors join to form ASP standards consortium

Twenty-five companies announced at the NetWorld+Interop conference plans to form the ASP Industry Consortium, an organization dedicated to develop standards and education programs about the application service provider industry (ASP). ASPs allow enterprises to outsource application services.

Members include: Aristasoft, AT&T, Boundless Technologies, Cisco Systems, Citrix, Compaq, Cylex Systems, Ernst & Young, Exodus, Futurelink, GTE, Great Plains Software, IBM, Interpath Communications, Jaws Technologies, Marimba, Onyx Software, Sasktel, Sharp, Sun Microsystems, Taylor Group, Telecomputing, Uunet, Verio, and Wyse Technology.

Consortium Chairman Traver Gruen-Kennedy said the goal is to define the marketplace and provide quality assurance. He further stated that there is currently some confusion about what an ASP is and does, and that the group hopes to make that clearer also: “There’s a lot of companies that have a really good idea of what they are doing, and there’s a lot of companies that are jumping on the hype bandwagon.”

Among the first issues the consortium will address: Provision of service-level guarantees, audit trails, communications between ASPs, and research sponsorships.

France Telecom chooses Edge’s Java network manager

Edge Technologies announced that France Telecom has chosen its N-Vision Java-based, network-management system so France Telecom’s network services customers can view network information in realtime over the Internet. Edge also developed a special customer alarm feature for France Telecom’s version of N-Vision.

The France Telecom N-Vision application runs atop HP OpenView software, and gives France Telecom network services customers the ability to view any status level of its network in order to better manage a company’s network operations. It is being introduced in the company’s Paris-based Network Operations Center (NOC) with initial user-license mixes of 5 and 20 users. Eventually, the system will be installed throughout the entire France Telecom network, which is substantial — France Telecom manages its own network, as well as network services for several of France’s largest corporations.

N-Vision already provides realtime network status and configuration data, operating on existing network management systems. The France Telecom version also contains a specially designed alarm system that notifies users when a network is having trouble.

Edge N-Vision 3.0 is a Java-based graphical interface that runs on Sun’s Solstice Site Manager, SunNet Manager, Domain Manager, and Enterprise Manager. It also runs on Hewlett Packard’s OpenView/IT/Operations server platforms or any Java-enabled Web browser.

University of Western Ontario deploys JavaStations

Sun announced that the University of Western Ontario (UWO) has deployed 250 Sun JavaStation network computers (NC) and two Sun Enterprise 450 servers as the backbone of its recently renovated DB Weldon Library.

In a four-month pilot program, UWO installed the JavaStations as an alternative to more costly and harder-to-administer PCs. The JavaStations will allow the university’s 28,000 students, faculty, and staff to access the Internet, as well as UWO’s library reference system, catalogues, and e-mail system. (UWO manages the sixth largest university library system in Canada with 2.3 million catalogued volumes and as many as 4.8 million varied-format documents.)

According to Michael Bauer, UWO director of information technology services, “Three months into the pilot, our librarians were hooked. The JavaStation NCs virtually eliminated the support requirements of our PC/Windows NT systems. Now our librarians can go back to being librarians, instead of de facto PC technicians. The savings, both in person hours and hard costs, made the decision to implement a full-scale JavaStation NC deployment just that much easier.”

Early release of the javac compiler for Java 2

Sun announced an early access release of the javac compiler, a preview of new compilation technology that Sun will include in a future release of the standard edition of the Java 2 SDK.

This early access release includes javac-ea, a new version of the bytecode compiler. This new compiler is faster and smaller than the current javac, and was developed completely from scratch, not incrementally like the current javac compiler. It is designed to leverage the language changes that were constructed for JDK 1.1, such as inner classes.

This version accepts the standard command-line options that are accepted by the version of javac included in the Java 2 SDK, Standard Edition 1.2. There are some nonstandard options that aren’t supported.

The javac-ea compiler requires the Java 2 Runtime Environment to be installed to work. Developers will need to register with the JDC (for free) to access this site.

Tutorial alert: Open up the BeanContext API

The Java Developer Connection announced “JavaBeans: Unlocking The BeanContext API” by Onno Kluyt, a tutorial designed to help developers understand and use the Extensible Runtime Containment and Services Protocol API (or BeanContext).

The BeanContext API, a core API in the Java 2 Standard Edition SDK, consists of two parts — a logical containment hierarchy for JavaBeans components and publishing and discovery of services provided by beans within such a hierarchy. The BeanContext API and InfoBus extension have been specifications in Java since JDK 1.1. Both provide APIs that let beans interconnect during runtime. The author explains:

The JavaBeans architecture sets rules for what makes a Java class a reusable software component (bean, for short). It defines how, via reflection and introspection, the capabilities of a bean are discovered. Such capabilities can be a bean’s properties, the events a bean fires or the public methods of a bean. This information is used by a development tool to provide a visual programming environment wherein the developer interconnects beans, wiring one Bean’s events to another Bean’s public methods. The resulting set of connected components can be compiled into an applet or application and delivered to the end user. Thus the connections between the beans and the customization of their properties occur during what is called design-time. The result of this process is experienced by the end user during runtime.

The author further explains how the BeanContext API adds flexibility to the above process by enabling a bean to interrogate its environment for certain capabilities and available services, which allows the bean to dynamically adjust its behavior to its container or context.

This tutorial also explains how the BeanBox implements this API in the Beans Development Kit 1.1, and how to develop dynamically connecting beans.

Developers will need to register with the JDC (for free) to access this site.

WebSphere Dav for Java for HTTP-based distributed authoring

IBM alphaWorks announced WebSphere Dav for Java (Dav4J), a client API that provides a standard protocol for distributed authoring support based on the HTTP protocol.

The Dav4J client API offers Java client applications a simple interface to access the resources managed by a WebDAV server. It takes the burden of managing the low-level HTTP communication protocol, building and parsing XML request and response entity bodies, and all the complexities of the WebDAV semantics, off the shoulders of client applications.

Dav4J provides a servlet that when combined with the WebSphere AppServer, delivers the WebDAV protocol to the Apache Web server. In this way, a single Apache server can be both a production and authoring server on different resource collections. This release also offers:

  • Protocol-independent communication between client and server applications, including support for HTTP, RMI, and local access (used if the host name in the URL is the local host and no port has been specified)
  • A high-level, object-oriented interface that captures the WebDAV semantics and can interface with any WebDAV-compliant server
  • The ability to access multiple back-end repository managers using WebDAV alone
  • Platform-independent portability earned from Java

In this release, the only repository manager included is the filesystem. There is also support for the NetObjects Authoring Server available from NetObjects. Future releases should include support for the TeamConnection family of repository managers and support for IIOP protocol.

Dav4J contains the IBM Dav4J client API, the Dav4J servlet, and the filesystem repository manager. The client supports Windows 95/NT.

More on WebDAV:

Normalize Java string objects into Unicode forms

IBM alphaWorks announced the Unicode Normalizer class, which lets developers convert Java string objects into standard Unicode forms, making them easier to sort and faster to search.

The Normalizer class can transform any string object into the Unicode canonical composed and decomposed forms. In sorting and searching, any two canonically equivalent strings have identical normalized forms, so a conversion class such as the Normalizer speeds up the sort and search processes.

Normally, characters with accents or other pronunciation attachments can be encoded in different ways in Unicode. For example, a capital “A” with an acute accent over it can be encoded as the single character 00C1 in the composed form, or as the two characters 0041 (for the capital “A”) and 0301 (for the acute accent) in the decomposed form. Both appear as a capital “A” with an acute accent to the user.

When searching or comparing text, developers need to make sure that these two sequences are treated equivalently, as well as sometimes handle a character that possesses more than one accent (and sometimes, the order accents are combined is important, too).

Normalizer smoothes out these challenges by transforming text into canonical composed and decomposed forms, and rearranges accents into the proper canonical order.

Early examples of the Normalizer are the JDK 1.1 Collator classes, built from a version of the Normalizer that only performed decomposition.

SSLite for Java

IBM alphaWorks debuts SSLite for Java, an SSL 3.0 protocol implementation in Java designed especially for use in an applet environment.

SSLite for Java runs in the size-limited applet environment. The minimal SSLite for Java package, containing only RSA cipher suites with RC4, which includes the SSL client and server functionality, is about 50 KB. With only SSL client support, it is closer to 40 KB.

The cryptographic functions in SSLite for Java are private to the package and can’t be accessed directly by other applications. The package supports most of the cipher suites defined in the SSL 3.0 specification: All the SSL cipher suites that use RSA or DSS signatures for authentication and RSA public key cryptography for key exchange are supported.

The SSLite for Java Socket API is based on the regular Java Socket API. It provides SSLSocket and SSLServerSocket classes. The SSLite for Java key ring repository can be downloaded as a part of an applet via HTTPS.

SSLite for Java is for Windows NT platforms. According to the alphaWorks site, SSLite is limited to 1,000 downloads, first come, first serve.

Interactive class file editing with IBM’s CFParse

IBM alphaWorks announced CFParse, a low-level API that allows developers to open or create a Java class file, then to edit any part of the class file’s structure, including attributes and code.

With CFParse, developers can change class files on the fly without access to the source code, enabling them to dynamically control access privileges of applets, alter the functionality of applets, and debug code. They can also customize, add, and remove features from any Java application, even without knowing how the program was constructed.

CFParse is for Windows 95/NT platforms.

OCEAN frames smart card application visual development

IBM alphaWorks debuts OCEAN, a programming framework for the visual development of smart card applications.

OCEAN offers an easy way to assemble applications and to connect the application objects with a GUI or networks or databases, independent of the smart card on which it will reside. It offers all the steps necessary for developing smart card applications, including the definition of the card layout and rapid prototyping of the off-card application. In other words, the application itself and how it reacts with a target machine (say, an ATM) can be gauged with OCEAN without having the machine handy.

OCEAN also includes the connection to such middleware products as Lotus Notes or DB2.

Two bean suites from alphaWorks

IBM alphaWorks announced two new bean suites: the Lightweight Statistics Beans and the Lightweight Chart Beans.

The Lightweight Statistics Beans suite can give statistical analysis to applications. This suite includes the following beans: Statistics, StatisticsGrid, StatisticsChart, and StatisticsDataAggregator. It also includes a nonvisual utility bean, the DataAggregator, which simplifies the wiring of the beans to other components such as entry fields.

These beans can calculate and display simple business statistics:

  • As a nonvisual bean that provides calculated statistics as read-only properties
  • As a visual grid component
  • As a visual distribution chart component

The beans can calculate such statistics as count, high, low, mean, median, mode, population and sample deviation, population and sample variance, range, and total.

The Lightweight Chart Beans can be used to add live business graphics to applications. Beans in the suite include ParallelChart, PieChart, PlotChart, ScatterChart, StackChart, SurfaceChart, UniversalChart, ChartDataAggregator, and ChartDataReducer. They display such 2D business charts as parallel bar, pie, plot, scatter, stacked bar, and surface charts. This suite includes the nonvisual utility DataAggregator Bean and a DataReducer Bean to make Bean wiring easier.

Both suites support JDK 1.1 and later.

Tips to customize carets and use reference objects

Java Developer Connection and Glen McCluskey offer the following tips, techniques, and sample code on crafting custom carets and using reference objects.

McCluskey discusses a new feature in Java 2 that lets developers define custom carets of different shapes. The caret interface is defined in the JFC Swing components that specifies such properties as paint and setBlinkRate methods. To define a custom caret, developers need only extend a subclass from the DefaultCaret superclass.

McCluskey also covers the damage method, which specifies a bounding box surrounding the caret beyond which the leftover caret pixels are eliminated by paint.

He also covers reference objects, or wrappers for a reference (addresses of objects).

Both sets of tips include code examples. Developers will need to register to access this page.

J Consortium angles for independent, embedded Java

The Real-Time Java Working Group, a group led by Hewlett-Packard and Microsoft, has decided to form the J Consortium, an organization with the goal of adapting Java for embedded application without following Sun-sanctioned efforts.

Sun’s Embedded Java development is handled through the Java Community Process (JCP); IBM is coordinating those efforts.

Member company Plum Hall’s President Thomas Plum said, “Most in the consortium are there as a result of studying the terms of the JCP and deciding they can’t afford the terms of the JCP, which is essentially under the control of one company.” Plum calls the group a more open forum than the JCP.

The consortium has no current plans to work with established standards bodies.

Some members of the Java Lobby feel that the goal of a Java group with Microsoft in control would be to fragment the language. Java Lobby member Erik Meade expressed hope that main reason for the consortium “is to attempt to place pressure on Sun to further open the process.”

Java Lobby President Rick Ross has requested that all members formulate and post questions for the J Consortium group, to be asked during an upcoming telephone conference with consortium members.

Ross says the conference will be recorded and posted online via RealAudio.

Java Lobby members weigh in on Sun’s process

Java Lobby President Rick Ross posted the recent numbers from a poll of Java Lobby members who were asked for their opinions on whether Sun’s process for Java is open and fair.

At present, a small, simple majority, 54 percent, “agree” or “strongly agree” that the Sun Java process is open and fair. Almost as many “disagree,” “strongly disagree,” or “neither agree nor disagree”.

About 26 percent of respondents disagree at some level, and 20 percent neither agree or disagree.

This is an ongoing poll, so the Java Lobby invites more opinion.

Sun goes the ECMA route

Sun has decided to try to maintain tighter control over Java’s progress by switching from the ISO standards process (claiming that recent rule changes would put Java under Microsoft’s control) to standardization through the European Computer Manufacturers’ Association (ECMA).

Sun submitted the Java 2 platform specification to ECMA for formal presentation at the June meeting, after which ECMA will convene a technical committee to generate a draft standard (expected by October). Then, in December, it will be voted on by the ECMA general assembly.

ECMA would be a backdoor to ISO-affiliated Joint Technical Committee (JTC 1), since ECMA is an ISO member. It would then forward the resulting standard to ISO for fast-track adoption.

Sun obviously chose the ECMA because it agreed to handle mostly just clerical and bug fixing in the standards process. Sun is not handing over the Java trademark to ECMA.

Java 2D Graphics book

O’Reilly announced Java 2D Graphics by Jonathan Knudsen. In it, Knudsen contends that Sun could have simply patched the weak graphics capabilities in JDK 1.0 and 1.a, but instead, it chose to design a new API — Java 2D.

Knudsen’s book describes the Java 2D API, demonstrating how to set pattern fills, how to use the advanced image-processing abilities, and execute efficient font handling. Other covered topics include image data storage, color management, font glyphs, and printing.

Knudsen assumes no prior knowledge of graphics, so he provides detailed explanations and examples designed for beginning Java programmers.

Java 2D Graphics by Jonathan Knudsen, O’Reilly, ISBN 1-56592-484-3, May 1999, 366 pp., 9.95.

Update: PeopleSoft adds Web clients

PeopleSoft announced additional features to the upcoming e7.5 release of its enterprise resource planning (ERP) suite, including enhanced Web access to the underlying applications.

Release e7.5 adds an HTML client for low-bandwidth Internet connections and a Web-deployable Windows client for low-maintenance access. These two clients supplement the existing Java-based Web client.

Release e7.5 is due to ship by the end of Q299.

Java use outside US is up

Evans Marketing Services announced that among the 340 developer respondents from 60 countries outside North America surveyed in an April 1999 poll, actual Java use was up.

Java use among the respondents was reported as 40 percent, compared with a 30 percent response when the same cohort was queried in September 1998. Fifty-eight percent of the developers predicted that they will use Java some of the time during the next year.

Director of research at Evans, Janel Garvin, speaking about the predictions, warns, “One of the most obvious patterns we’ve seen in Java use in North America has been the tendency for developers to predict significantly increased use of Java in the future, but for the actual usage numbers to remain flat.”

Garvin also notes, “This is the first significant increase in actual Java usage that we’ve seen, and it’s interesting that it is occurring outside North America. We believe that Java use in North America has been depressed by the continual controversies surrounding the language and intense media coverage of those controversies.” Garvin added, “However, developers in other parts of the world may not be so exposed to the news stories, and what we are seeing here could simply be reflective of a more natural language growth pattern.”

This international study contrasted with the one conducted in North America in March 1999. In North America, 43 percent reported using Java in some capacity — the same number reported from the September 1998 study. Predictions of use from the September study amounted to more than 60 percent.

The information is in the Spring issue of Evans’ “International Developer Opinion Survey.”

Force 5 upgrades to JCloak 3.0

Force 5 Software announced JCloak 3.0, an upgrade to its Java bytecode obfuscation software.

JCloak is a Java bytecode obfuscator that blocks reverse engineering of Java bytecode by reducing the symbol information stored in the class files. This doesn’t keep others from decompiling the code, but the output will be unintelligible. New features in version 3.0:

  • An advanced setup wizard that handles most of the work of choosing obfuscation parameters
  • Automatic reflection handling so JCloak automatically detects reflection references and adjusts bytecode
  • Advanced multi-pass size reduction, an algorithm that removes dead code in several passes
  • Java 2 support that generates jar files on a double-click

JCloak already supports jar, cab, and zip files, as well as Java 1.x.

JCloak 3.0 runs on Solaris and Windows NT platforms, and costs 50 for a single-user license. This includes a year of free upgrades, free maintenance of existing versions, and free e-mail support. There is a 30-day evaluation version.

“Cobra” release of NetWare gets Web enhancements

Novell announced plans to deliver an Internet enhancement pack for the NetWare 5.0 server operating system, as well as plans to integrate those features into the upcoming “Cobra” release of NetWare.

The company says the enhancements will make it easier for customers to manage networks, run applications, and integrate Novell Directory Services (NDS). Among the enhancements will be:

  • A five-user version of Oracle8i database
  • Oracle WebDB for Web-enabling SQL databases
  • IBM WebSphere for developing high-end Web applications
  • The Netscape Enterprise Server for adding enterprise-class Web server capabilities

The Cobra release should take greater advantage of HTTP as a core protocol, allowing customers to manage servers through a browser.

Novell will also release 6 Pack, an enhanced version of NetWare that will enable the core networking services (including file and print services, Novell Storage Services, NDS 8 directory services, and the next generation JVM) to handle multiprocessor code. 6 Pack should deliver increased performance and scalability.

Motorola debuts M-Smart Jupiter 32-bit smart card

Motorola Worldwide Smartcard Solutions division announced the M-Smart Jupiter, a 32-bit RISC-based smart card platform that conforms to Java Card 2.1 and Visa Open Platform 2.0 technology specifications.

M-Smart Jupiter allows users to securely and dynamically download applications onto the highly customizable card. Java Card 2.1 technology supports the downloading and customization of applets or applications.

The platform also creates a new wrinkle in smart card security — it employs both a software and hardware firewall to separate (and secure) downloaded applications. The hardware/software firewall combination, based on a secure memory management unit, keeps unauthorized users from accessing applications and data. When the hardware firewall detects intrusion, it automatically deactivates the card.

Besides the performance of the 32-bit, RISC-based operating system, it also sports a modular, multi-application environment, so applications can be more easily customized. Motorola also offers an application development workbench that developers can use to create applets that are compliant with Java Card 2.1 technology and Open Platform 2.0.

Espial Group helps developers of Java Internet appliances

Espial Group announced the launch of the Espial Developer Connection (EDC), a resource to help developers who want to build Java-based Internet appliances with Espial development products.

EDC provides developers with such appliance-development products as:

  • Kalos Espresso, a lightweight GUI toolkit for EmbeddedJava and PersonalJava applications
  • Espial Escape and the Escape SDK, a Java-based Web browser
  • Kalos Architect, a visual RAD environment for EmbeddedJava and PersonalJava applications
  • Espial Ebox, an e-mail client
  • Espial Assistant, a personal information manager

EDC also provides developers with early access software, developer APIs, documentation, white papers, FAQs, and tech tips, as well as news and new product releases.

Jaison Dolvane, president of Espial Group, said, “EDC allows us to support developers in a timely fashion with updates, bug fixes, maintenance releases, and support questions. Further, through EDC we are able to efficiently incorporate developer feedback into the development process for our products.” Dolvane added, “The Espial Developer Connection is the one-stop shop for anyone developing software for Java technology-based consumer and embedded Internet devices. Content developers can now log on … at any time, download free evaluation software, and get started immediately with Espial’s PersonalJava toolkits or Internet applications.”

Developers need to register (for free) to access the site.

Source: www.infoworld.com