Java Distibuted Computing by Jim Farley Here are the changes made in the 11/99 reprint: {18} In para. 4, line -3: "java.net" has been changed to "javo.io" {24} Changed the definition of UDP from "Unreliable Datagram Protocol" to "User Datagram Protocol", and TCP from "Transport Control Protocol" to "Transmission Control Protocol". (53) Changed text on this page which used to read, "...the Component Object Model (COM)...", to read instead, "... the Distributed Component Object Model (DCOM, comprised of COM and an extended version of DCE-RPC)..." {60} Para. 1, lines 1-2: The IDL language shares a lot of the features of C++ in terms of defining classes and their methods. Now reads The IDL language shares a lot of the syntax of C++ in terms of defining interfaces and their methods. {60} Para.2, line 1: Once an IDL interface for a class has been written... Now reads Once an IDL interface for a distributed object has been written, ..." {61} Para. 2, last sentence: ...assuming that they know your hostname ... Added a footnote at the end of this sentence, reading, "Clients can also access your CORBA objects without knowing this information, if they have obtained an encoded reference to your objects. This topic is beyond the scope of our discussion here, however." {61} Para 4 The ORB initialization process will...let you specify ...remote host and port to talk to... Changed the second sentence of this paragraph to read, "The ORB initialization process will typically include...", and added a sentence immediately following, which reads, "Note that the CORBA standard doesn't include host and port number parameters in the required initialization interface, but several vendors extend the initialization parameters to include these options." {99} In para 2 ...calls its own state-change method with the bcast argument set to false. Changed this to "...calls the local version of the state-change method..." in the text. {111} Para 2 Although we'll be ... we go into any... Now reads Although we'll be ... we won't go into any... (112) Changed the example, replaced the line: signingFred.setPrivateKey(fredsSigningKey); with these lines: PublicKey fredsPublicKey = . . . // Get Fred's public key signingFred.setKeyPair(new KeyPair(fredsPublicKey, fredsSigningKey)); {124} In para 1, ...to verify that the authenticated agent has the required permissions on the account being accessed. The text now includes this clarification, just after the sentence quoted, "In this example implementation, we're simply checking the global access rights of the user, rather than the user's access to the given account." {131} The code example used to read // ... Hashtable keyring = in.readObject();] It now reads Hashtable keyring = (Hashtable) in.readObject(); {198} Figure 7-3: in the TASK block rid has been changed to tid in order to correspond with the discussion above it. {367} Changed the definition of UDP from "Unreliable Datagram Protocol" to "User Datagram Protocol", and TCP from "Transport Control Protocol" to "Transmission Control Protocol".