CONTENTS | PREV | NEXT Java Remote Method Invocation


10.1 Overview

The RMI protocol makes use of two other protocols for its on-the-wire format: Java Object Serialization and HTTP. The Object Serialization protocol is used to marshal call and return data. The HTTP protocol is used to "POST" a remote method invocation and obtain return data when circumstances warrant. Each protocol is documented as a separate grammar. Nonterminal symbols in production rules may refer to rules governed by another protocol (either Object Serialization or HTTP). When a protocol boundary is crossed, subsequent productions use that embedded protocol.


Notes about Grammar Notation

  • We use a similar notation to that used in The Java Language Specification (see section 2.3 of the JLS).
  • Control codes in the stream are represented by literal values expressed in hexadecimal.
  • Some nonterminal symbols in the grammar represent application specific values supplied in a method invocation. The definition of such a nonterminal consists of its Java programming language type. A table mapping each of these nonterminals to its respective type follows the grammar.


CONTENTS | PREV | NEXT