Sun ONE logo     Previous      Contents      Index      Next     
Sun ONE Application Server 7, Update 1 Developer's Guide to Clients



Overview of Clients

A client can be a simple web browser or an application that runs on the client system. Sun ONE Application Server 7 provides various types of clients, a framework to connect to a back end source, execute the application logic, and return the result to the client.

This module introduces different types of clients that Sun ONE Application Server supports. The following topics are discussed in this module:

Introducing Clients

A client application can be written using Java, C, C++, Visual Basic, or any compatible programming language. A client application sends a request to an application server at a given URL. The server receives the request, processes it, and returns a response. These client programs execute remote procedures and functions in an application server instance.

Sun ONE Application Server is a Java application server and is fully compliant with the J2EE specifications. The important layers of J2EE platform are as follows:

  • Client layer - The client layer is where the user accesses the application.
  • Presentation layer - The presentation layer is where the user interface is dynamically generated. An application may require the following J2EE components in the presentation layer.
    • Servlets
    • JSPs
    • Static Content

    In addition, an application may require the following non-J2EE, HTTP server-based components in the presentation layer:

    • SHTML
    • CGI

    For more information about the components in the presentation layer, see the Sun ONE Application Server Developer's Guide to Web Applications.

  • Business logic layer -The business logic layer contains deployed EJB components that encapsulate business rules and other functions in session beans, entity beans, and message-driven beans.
  • For more information about components in business logic layer, see the Sun ONE Application Server Developer's Guide to Enterprise JavaBeans Technology.

  • Data access layer - In the data access layer, JDBC (java database connectivity) is used to connect to databases, make queries, and return query results, and custom connectors work with Sun ONE Application Server to enable communication with legacy EIS systems, such as IBM's CICS.
  • Developers are likely to integrate access to the following systems using J2EE CA (J2EE connection architecture):

    • Enterprise resource management system
    • Mainframe systems
    • Third-party security systems

    For more information about JDBC, see the Sun ONE Application Server Developer's Guide to J2EE Features and Services.

    For more information about connections, see the J2EE CA Service Provider Implementation Administration Guide and the corresponding release notes.

For more information on the J2EE Architecture, see Sun ONE Application Server Developer's Guide.

Types of Clients

This section introduces the following types of clients that are supported by Sun ONE Application Server:

Web Clients

A web client consists of two parts:

  • Dynamic web pages containing various types of markup languages such as Hyper Text Markup Language (HTML), Extensible Markup Language (XML), etc, that are generated by web components running in the web server.
  • A web browser, which renders the pages received from the server.

A web client is sometimes called a thin client. Thin clients do not query databases, execute complex business rules, or connect to legacy applications. When you use a thin client, heavyweight operations like these are off-loaded to enterprise beans executing on the J2EE server where they can leverage the security, speed, services, and reliability of J2EE server-side technologies.

Web Services Clients

Sun ONE Application Server supports Java-based client applications to send requests to the web service, and receive a response from the web service. To invoke a web service, these clients must construct and send SOAP messages over HTTP.

Sun ONE Application Server supports Apache SOAP version 2.2 and JavaTM API for XML-based RPC (JAX RPC) 1.1. Web services support is also built into Sun ONE Studio 4, which is bundled with Sun ONE Application Server.

For information on developing and deploying Web Services clients, see the Sun ONE Application Server Developer's Guide to Web Services.

JMS Clients

Java Message Service (JMS) clients are the Java language programs that send and receive messages using the JMS provider. JMS client can be any type of J2EE application component:a web application, an Application Client Container client, an EJB component, and so on. A client accesses a special kind of Enterprise JavaBeans called the message-driven beans (MDB), through JMS by sending messages to the JMS destination.

For more information on using the JMS API to develop JMS clients, see the Sun ONE Application Server Developer's Guide to J2EE Features and Services.

CORBA Clients

CORBA clients are the client applications written in any language supported by Common Object Request Broker Architecture (CORBA), including the Java programming language, C++, and C.

CORBA clients are used when a stand-alone program or another application server acts as a client to the EJBs deployed to Sun ONE Application Server. Sun ONE Application Server supports access to EJBs using the Internet Inter-ORB Protocol (IIOP) as specified in the Enterprise JavaBeans Specification, V2.0, and the Enterprise JavaBeans to CORBA Mapping Specification. These clients use Java Naming and Directory Interface (JNDI) to locate EJBs, and use JavaTM Remote Method Invocation/Internet Inter-ORB Protocol (RMI/IIOP) to access business methods of remote EJBs.

CORBA clients that do not use the Application Client Container (ACC) have the following limitations:

  • JNDI is not supported. However, you can build name translations and do lookups using standard COSNaming binding.
  • SSL over RMI/IIOP is not supported.
  • Features that are configurable in the sun-application-client.xml and sun-acc.xml files are not available.

Application Clients

A J2EE application client runs on a client machine and provides a way to handle tasks that require a richer user interface than can be provided by a markup language. Typically, an application client has a GUI created from Swing or Abstract Window Toolkit (AWT) APIs. Alternatively, you can use the command-line interface.

Application clients directly access the EJB components residing in Sun ONE Application Server. However, if application requirements warrant it, a J2EE application client can open an HTTP connection to establish communication with a servlet running in the web server.

The figure, "Client and Sun ONE Application Server Architectureillustrates client machines running the web browser, web service clients, RMI-IIOP clients, or JMS clients; J2EE server machines running the Sun ONE Application Server; and EIS server machines running databases and legacy applications. JSPs and servlets provide the interface to the client tier, EJBs reside in the business tier, and connectors provide the interface to legacy applications.

   Client and Sun ONE Application Server Architecture


Figure shows the architecture of Sun ONE Application Server.


Previous      Contents      Index      Next     
Copyright 2003Sun Microsystems, Inc. All rights reserved.