1 Understanding WebLogic RMI

This chapter describes the features of WebLogic RMI.

This chapter includes the following sections:

What is WebLogic RMI?

WebLogic Remote Method Invocation (RMI) enables an application to obtain a reference to a remote object that exists within the network on a virtual machine. RMI provides remote communication between the applications using objects that are distributed over multiple virtual machines.

Remote Method Invocation (RMI) is the standard for distributed object computing in Java. RMI enables an application to obtain a reference to an object that exists elsewhere in the network, and then invoke methods on that object as though it existed locally in the client's virtual machine. RMI specifies how distributed Java applications should operate over multiple Java virtual machines.

This document contains information about using WebLogic RMI, but it is not a beginner's tutorial on remote objects or writing distributed applications. If you are just beginning to learn about RMI, visit http://docs.oracle.com/javase/8/docs/technotes/guides/rmi/ and review the RMI Tutorial.

Features of WebLogic RMI

RMI has several advantages over traditional remote procedure call systems because RMI is a part of Java's object-oriented approach. View WebLogic RMI Features to know how each of these features is implemented in the WebLogic framework.

The following table highlights important features of WebLogic implementation of RMI:

Table 1-1 WebLogic RMI Features

Feature WebLogic RMI

Overall performance

Enhanced by WebLogic RMI integration into the WebLogic Server framework, which provides underlying support for communications, scalability, management of threads and sockets, efficient garbage collection, and server-related support.

Standards compliant

Compliance with the Java Platform Standard Edition 6.0 API Specification

Annotations

Provides annotation support that can be embedded inside remote java objects.

Failover and Load balancing

WebLogic Server support for failover and load balancing of RMI objects.

Request Timeouts

You can specify a timeout period for a remote call to complete.

WebLogic RMI compiler

Stubs and skeletons dynamically generated by WebLogic RMI at run time, which obviates need to explicitly run weblogic.rmic, except for clusterable or Internet Inter-ORB Protocol (IIOP) clients.

Dynamic Proxies

A class used by the clients of a remote object. In the case of RMI, skeleton and a stub classes are used. The stub class is the instance that is invoked upon in the client's Java Virtual Machine (JVM). The skeleton class, which exists in the remote JVM, unmarshals the invoked method and arguments on the remote JVM, invokes the method on the instance of the remote object, and then marshals the results for return to the client.

Security Support

No Security Manager required. WebLogic Server implements authentication, authorization, and Java EE security services.

Transaction Support

WebLogic Server supports transactions in the Java Platform, Enterprise Edition (Java EE) programming model.

Internet Protocol version 6 (IPv6) Support

Support for 128 bit addressing space.