twitter
    !! Tell us what you want to Learn / Know !!

Network Communications Technologies

Client applications connect with WebLogic Server using standard networking protocols over TCP/IP. WebLogic Server listens for connection requests at a network address that can be specified as part of a Uniform Resource Identifier (URI).
A URI is a standardized string that specifies a resource on a network, including the Internet. It contains a protocol specifier called a scheme, the network address of the server, the name of the desired resource, and optional parameters. The URL you enter in a Web browser, for example, http://www.middleware7.blogspot.com, is the most familiar URI format.
Web-based clients communicate with WebLogic Server using the HTTP protocol. Java clients connect using Java RMI (Remote Method Invocation), which allows a Java client to execute objects in WebLogic Server. CORBA-enabled clients access WebLogic Server RMI objects using RMI-IIOP, which allows them to execute WebLogic Server objects using standard CORBA protocols.
In the following table, the scheme in a URI determines the protocol for network exchanges between a client and WebLogic Server.

Scheme
Protocol
HTTP
HyperText Transfer Protocol. Used by Web browsers and HTTP-capable programs.
HTTPS
Hypertext Transfer Protocol over Secure Sockets Layer (SSL). Used by Web browsers and HTTPS-capable client programs.
T3
WebLogic T3 protocol for Java-to-Java connections, which multiplexes JNDI, RMI, EJB, JDBC, and other WebLogic services over a network connection.
T3S
WebLogic T3 protocol over Secure Sockets Layer (SSL).
RMI
Remote Method Invocation (RMI), the standard Java facility for distributed applications.
IIOP
Internet Inter-ORB protocol, used by CORBA-enabled Java clients to execute WebLogic RMI objects over IIOP. Other CORBA clients connect to WebLogic Server with a CORBA naming context instead of a URI for WebLogic Server.
IIOPS
Internet Inter-ORB protocol over Secure Sockets Layer (SSL).
SOAP
WebLogic Web Services use Simple Object Access Protocol (SOAP) 1.1 as the message format and HTTP as a connection protocol.

The following sections provide more information about these protocols.

HTTP
        HTTP, the standard protocol of the World Wide Web, is a request-response protocol. A client issues a request that includes a URI. The URI begins with http:// and the WebLogic Server address, and the name of a resource on WebLogic Server, such as an HTML page, servlet, or JSP page. If the resource name is omitted, WebLogic Server returns the default Web page, usually index.html. The header of an HTTP request includes a command, usually GET or POST. The request can include data parameters and message content.
WebLogic Server always responds to an HTTP request by executing a servlet, which returns results to the client. An HTTP servlet is a Java class that can access the contents of an HTTP request received over the network and return an HTTP-compliant result to the client.
WebLogic Server directs a request for an HTML page to the built-in File servlet. The File servlet looks for the HTML file in the document directory of the WebLogic Server file system. A request for a custom-coded servlet executes the corresponding Java class on WebLogic Server. A request for a JSP page causes WebLogic Server to compile the JSP page into a servlet, if it has not already been compiled, and then to execute the servlet, which returns results to the client.

T3
   T3 is an optimized protocol used to transport data between WebLogic Server and other Java programs, including clients and other WebLogic Servers. WebLogic Server keeps track of every Java Virtual Machine (JVM) with which it connects, and creates a single T3 connection to carry all traffic for a JVM.
For example, if a Java client accesses an enterprise bean and a JDBC connection pool on WebLogic Server, a single network connection is established between the WebLogic Server JVM and the client JVM. The EJB and JDBC services can be written as if they had sole use of a dedicated network connection because the T3 protocol invisibly multiplexes packets on the single connection.
T3 is an efficient protocol for Java-to-Java applications because it avoids unnecessary network connection events and uses fewer OS resources. The protocol also has internal enhancements that minimize packet sizes

RMI
      Remote Method Invocation (RMI) is the standard Java facility for distributed applications. RMI allows one Java program, called the server, to publish Java objects that another Java program, called a client, can execute. In most applications, WebLogic Server is the RMI server and a Java client application is the client. But the roles can be reversed; RMI allows any Java program to play the role of server.
RMI architecture is similar to the CORBA architecture. To create a remote object, a programmer writes an interface for a Java class that defines the methods that may be executed by a remote client. The WebLogic Server RMI compiler, rmic, processes the interface, producing RMI stub and skeleton classes. The remote class, stubs, and skeletons are installed in WebLogic Server.
A Java client looks up a remote object in WebLogic Server using the Java Naming and Directory Interface (JNDI), which is described later in this section. JNDI establishes a connection to WebLogic Server, looks up the remote class, and returns the stubs to the client.
The client executes a stub method as if it were executing the method directly on the remote class. The stub method prepares the call and transmits it over the network to the skeleton class in WebLogic Server.
On WebLogic Server, the skeleton class unpacks the request and executes the method on the server-side object. Then it packages the results and returns them to the stub on the client side.
WebLogic EJB and several other services available to Java clients are built on RMI. Most applications should use EJB instead of using RMI directly, because EJB provides a better abstraction for business objects. In addition, the WebLogic Server EJB container provides enhancements such as caching, persistence, and life cycle management that are not automatically available to remote classes.

RMI-IIOP
         Remote Method Invocation over Internet Inter-ORB Protocol (RMI-IIOP) is a protocol that allows CORBA client programs to execute WebLogic RMI objects, including enterprise beans. RMI-IIOP is based on two specifications from the Object Management Group (http://www.omg.com):

  • Java-to-IDL mapping
  • Objects-by-value

The Java-to-IDL specification defines how an Interface Definition Language (IDL) is derived from a Java interface. The WebLogic Server compilers for RMI and EJB give you the option of producing IDL when compiling RMI and EJB objects. This IDL can be compiled with an IDL APIs compiler to produce the stubs required by a CORBA client.
The objects-by-value specification defines how complex data types are mapped between Java and CORBA. To use objects-by-value, a CORBA client must use an Object Request Broker (ORB) with CORBA 2.3 support. Without a CORBA 2.3 ORB, CORBA clients can use only Java primitive data types.

SSL
    Data exchanged with the HTTP and T3 protocols can be encrypted with the Secure Sockets Layer (SSL) protocol. Using SSL assures the client that it has connected with an authenticated server and that data transmitted over the network is private.
SSL uses public key encryption. Public key encryption requires you to purchase a Server ID, which is a certificate for your WebLogic Server from a Certificate Authority such as VeriSign. When a client connects to the WebLogic Server SSL port, the server and client execute a protocol that includes authenticating the server's Server ID and negotiating encryption algorithms and parameters for the session. WebLogic Server can also be configured to require the client to present a certificate, an arrangement that is called mutual authentication.

SOAP
       SOAP (Simple Object Access Protocol) is a lightweight, XML-based protocol used to exchange information in a decentralized, distributed environment. The protocol consists of an envelope that describes the SOAP message, encoding rules, and conventions for representing remote procedure calls and responses.
All information is embedded in a Multipurpose Internet Mail Extensions (MIME)-encoded package that can be transmitted over HTTP or other Web protocols. MIME is a specification for formatting non-ASCII messages so that they can be sent over the Internet.

0 comments:

Post a Comment