PowerBuilder Authors: Chris Pollach, Yeshim Deniz, Jayaram Krishnaswamy, Kevin Benedict, Avi Rosenthal

Related Topics: PowerBuilder

PowerBuilder: Article

What's New in EAServer 4.0

What's New in EAServer 4.0

We have a new release of EAServer - version 4.0 - which I am very excited about...

Version 4.0 takes advantage of Java 2 Enterprise Edition (J2EE) version 1.3 features and also provides many enterprise-level features that concentrate on performance, reliability, and usability. Most important, this version of EAServer is OEM friendly and addresses many OEM usability concerns that partners had in the past.

New Install
Right out of the box you'll notice a new install that's sleek and quite powerful. The look and feel of the install is consistent throughout all the five platforms that EAServer supports. The install image provides both a full and an update install. Fantastic, I can now update from version 3.5 or 3.6.x directly to version 4.0. The upgrade is smooth and cleans up after itself, so there's no residue. In addition, both the full and update installs are available via command-line or silent installs that won't require any user interactions.

The install is component driven and, via the custom install, you can choose which component to install. A good thing about the install is that most software subcomponents, such as PowerBuilder and PowerJ support files and Application Integrator, are now separated from the EAServer install and spawned by the EAServer 4.0 installer once that particular component is selected.

A New Directory Structure
Once you've installed EAServer, you'll notice a new directory structure. In short, most loose class files in $JAGUAR/html/classes are JARed up and are now in $JAGUAR/java/lib. Also the Jaguar Manager is now in $JAGUAR/easmgr. There are also fewer start-up scripts; overall the directory structure is much cleaner and fewer files are shipped.

J2EE 1.3
Version 4.0 takes advantage of J2EE 1.3 to stay close to the J2EE emerging standards. Table 1 lists the key changes in the J2EE API between versions 1.2 and 1.3.

Here are some key points that need to be mentioned (for more information on J2EE 1.3, see www.javasoft.com).

  • EJB 2.0 -MDB, local interfaces, CMP -Security and more
  • EJB 2.0 interoperability -CORBA 2.3/IIOP 1.2 (including OBV) -Security (CSI v2 level 0) -Naming (corbaloc and corbaname) -Transaction
  • JMS 1.0.2 -Service provider and admin
  • Servlet 2.3/JSP 1.2 -Filters, life-cycle events, security, and more
  • Connectors 1.0 -A J2EE standard mechanism that provides pooled connections to back-end heterogeneous enterprise information services
  • JAXP 1.1 -RI for SAX/DOM parsers and XSLT is included
Web Server Redirector Plug-in
The Web server redirector plug-in allows communication between your Web server and the EAServer HTTP protocol listener. As you may already know, EAServer hosts Web applications and functions as a Web server.

Previously, a client was required to use EAServer to access its servlet facilities and hosted Web applications. The redirector plug-in is installed on the Web server host and enables you to send client requests directly to the Web server, which then forwards requests that need to access EAServer servlets, JSPs, and so on to EAServer.

EAServer 4.0 provides support for the following plug-ins:

  • NT: Netscape 3.6.x and Apache 1.3
  • Solaris: Netscape 3.6.x, iPlanet 4.1, and Apache 1.3
For those of you who may be asking about IIS, I hear it's in the works for post 4.0.

Figure 1 illustrates the overall architecture of EAServer 4.0.

HTTP 1.1 Support
EAServer 4.0 offers support for HTTP/1.1. It's compliant with features listed as MUST and REQUIRED for the origin server and client in the W3C spec for HTTP/1.1. For more information about HTTP/1.1, see the HTTP/1.1 specification at www.w3.org/Protocols/rfc2616/rfc2616.html.

External C++ Component Support
EAServer 4.0 now lets you run your C++ components in a separate process from the host server. This enables you to run legacy C and C++ code as a Jaguar component while eliminating the risk of running C++ code in the same process as the host server.

Jagtool and Jagant
Jagtool is a command-line interface that lets you automate some of EAServer's development and deployment tasks. Jagant enables you to run jagtool commands from Jakarta Ant build files. Ant is similar to Make, but is platform-independent and allows you to insert jagtool commands into your build files. You can write build scripts that automate most of your development and deployment tasks. Some of the available commands are:

  • deploy: Deploy J2EE or Jaguar Archive Files
  • export: Export J2EE or Jaguar Archive Files
  • gen_stubs: Generate stubs for an entity
  • gen_skels: Generate skeletons for an entity
  • refresh: Refresh an entity in a server
  • delete: Delete an entity (removes it from the repository)
  • list: List entities in the repository
  • props: List properties for an entity in the repository
  • install: Install an entity into a server
  • remove: Remove an entity from a parent entity (remove a package/application/Web application/servlet from a server, etc.)
  • restart: Restart a server
  • shutdown: Shut down a server
  • sync: Synchronize an entity in this repository to one or more remote repositories. This includes property files, IDL files, class files (for Java components), shared objects or DLLs (for C/C++ components), and PBDs (for PB components).
Jagtool is a great tool to have and I recommend you read the EAServer documentation for more.

Object and Page Caching
Object caching is a boost in performance and scalability. The root of the scalability problem is that most application servers host business logic but no data. This creates a bottleneck that forces every user request to access the database. Object caching increases the accessibility and availability of data resident in a database by moving the business data from the database to the application server.

EAServer 4.0 also provides page caching, which improves the performance of your servlet and JSP requests. The Web components are cached based on a number of parameters that you can define.

In-Memory Session Replication
EAServer 4.0 enhances the existing stateful failover architecture with support for failover in-memory. This feature allows your component state to be maintained on a pair of servers without incurring the overhead of using a remote database to store component state.

The in-memory failover implementation is based on mirror pairs. This mirror pair consists of two servers that are members of a cluster. The servers use the EAServer message service to synchronize component session state held in memory. If one server in a mirror pair goes offline, the other remains to serve client sessions for the mirrored components.

Many Other Features
EAServer 4.0 supports many other features:

  • JMS support
  • Custom class loader changes
  • J2EE naming enhancements
  • Web application changes
  • JAXP support
  • JAAS support
  • J2EE 1.3 security and CSIv2
  • Transaction interoperability
  • Repository versioning
  • EAS agent
  • Elimination of afconfig.dat
  • C++ component portability
  • Mixed architecture clusters
As you can see, EAServer has changed tremendously. Enjoy.

More Stories By Kouros Gorgani

Kouros Gorgani is a software development manager with EAServer Engineering Canada of Sybase Inc. Kouros is a CPD and the author of several technical books.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.