Advertisment

GlassFish Gears-up for the Enterprise

author-image
PCQ Bureau
New Update

Project GlassFish is an open source implementation for the Java EE 5

platform, developed at the java.net community. GlassFish is the first

implementation built around the Java EE 5 platform. The technology developed by

the project is already used in several products from different



vendors, including the Sun Java System Application Server 9.0, and is the code
base for the Java EE 5 reference implementation. The Sun Java System Application

Server is built on the source code developed by Sun engineers and the GlassFish

community.

Advertisment
Direct

Hit!
Applies

to:
Java EE developers 
USP:

Develop and debug Java EE 5 apps with Call Flow mgmt
Links:

https://glassfish. dev.java.net/ 
Google

keywords:
GlassFish, Sun Java System App Server

The GlassFish project provides reference implementation for Java EE 5

platform technologies such as EJB 3.0 specification, Java Persistence API, JSF

(Java Server Faces) technology, DI (Dependency Injection), Web services etc. The

main design goal of the Java EE 5 platform is ease of development. This cuts

down the boilerplate code and supports metadata annotations. Developer writes

business components as ordinary POJOs (Plain Old Java Objects), POJIs (Plain Old

Java Interfaces), annotates them and the container delivers the required

functionality.

The focus of the Java EE 5 platform design is to streamline the development

process and add convenience, improve performance, reduce development time, and

help developers reduce the time taken in production.

Advertisment
Setting it up
  1. Download GlassFish from http://java. sun.com/ javaee/glassfish/getit.jsp
  2. 2. Set the GLASSFISH_HOME environment variable which

    points to the GlassFish installation directory. (Make sure that the

    JAVA_HOME environment variable is already set appropriately).
  3. Boot the GlassFish kernel by executing the following

    command: cd %GLASSFISH_HOME%\bin asadmin start-domain domain1.



    (Alternatively, go to Programs>Sun Microsystems>Application
    Server PE 9 >Start Default Server).
  4. Next, point your browser to the 'Administration

    Console' by typing http://localhost:4848 (the default username is

    admin, and the default password is adminadmin).

Monitoring execution flow



Call flow monitoring, a bundled utility in the GlassFish application server,
helps in performance tuning and debugging the deployed applications. Call flow

is used to monitor calls as they flow through various containers in the

application server. It is used to investigate the run-time behavior of

applications. Call flow caters to the needs of both application developers and

server administrators. During development, developers can easily



debug and run through the call flow stack and application server administrator
can use the elegant feature to monitor the runtime behavior of application and

keep an eye on remote users.

Call flow scales better than profilers as it has very negligible overhead and

memory footprint. Call flow acts as a glue, it can be queried to drill down to

individual components and trace performance bottlenecks in an application.

Further, call flow can be fine tuned to monitor calls from specific remote

clients and user credentials.

Advertisment

Call flow is turned on via admin GUI and admin CLI. When it is turned on, the

server starts collecting monitoring information for the applications



deployed in the application server. To turn it on, you need to do as follows.

  • In the left pane tree, select the 'Application Server' node.
  • Click on the 'Monitor' tab and then the 'Call Flow' tab in the

    right pane.
  • To start collecting calls, check the 'Enabled' checkbox in the

    configuration settings.
  • For call flow to be initiated, click on the Save button.

Call flow data collection (refer to the screenshot on the next page) stores

information such as application name, module name, transaction identifier, user

principal, time in various containers, method name, exception etc. This

information is persisted into an embedded database. The data collected from call

flow is populated in the 'Call Flow Data' section of the Call Flow page in

the Administration console.

Advertisment
Call Flow Management

By clicking on 'Time Stamp' column (shown in the screenshot at the

bottom), you can display detailed data about a request such as the response time

for the request and how much time the request spent in each container. For each

step in the calling sequence, the table displays the pertinent container,

component and method. To display call flow from the admin console, uncheck the

'Enabled' checkbox on the Call Flow configuration page and Save. 

A deployed application in the GlassFish application server; you can download GlassFish from

https://glassfish.dev.java.net/
Advertisment

Increase productivity



GlassFish comes bundled with a number of key utility features like administrator
graphical interface, a command line interface, log viewer, call flow, Apache

ANT, etc. GlassFish is designed keeping the developer's choice in mind; it can

be highly customized and configured depending on certain key business

requirements. GlassFish introduces a new feature called on-demand initialization

services. With this feature, the application server can start with minimum

services; additional services are started only when required by a given user

application. The new Java database, based on the Apache Derby project, is

supported and integrated as part of the GlassFish project. JSF is an integral

part of the Java EE 5 platform. The GlassFish



catalog includes several JSF and AJAX components. GlassFish is supported by a
number of leading IDEs including NetBeans, Sun Java Studio and plug-in for

Eclipse is under development.

By clicking on 'Time Stamp', you can see the detailed information about a request, such as the response time or the time a response spent in a container

Easy application packaging



With Java EE 5, Web application deployment descriptor is optional for simple
applications containing JSP pages and static files.

Advertisment

If your Web module does not contain any servlets, filter, or listener

components then it does not need a deployment descriptor. In other words, if

your Web application only contains JSP pages and static files then you are not

required to include a web.xml file. This significantly cuts down the

boiler-plate code.

Multiple client support



Enterprise applications built using the GlassFish application server can serve
multiple clients, varying from browser-based Web applications to application

clients. You could deploy a Java EE application client to the application server

container and then take advantage of Java Web Start software for distribution of

the application to client machines. Java Web Start, a deployment and launch

technology, can be used to deploy standalone applications with a single click

over the network. With JWS, applications can also be launched through desktop

shortcuts and can be used for offline operation of an application. Further, JWS

automatically maintains version information, so download is not required again

unless a change is made.

The information collected in Call flow data-app name, module name, transaction identifier, etc-is persisted into an embedded database

GlassFish is the open source implementation of Java on a presentation part.

With the enterprise computing around the Java community maturing, Sun and other

JCP members are putting their entire wood behind the GlassFish project. Now,

GlassFish comes bundled with in Java SE 5 SDK. The GlassFish community is

participative and thriving, with over 1100 members already, GlassFish is all set

to take the enterprise Java EE application server market by a storm.

Advertisment