The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
| Version |
Location |
Description |
Submitted By |
Date Submitted |
Date Corrected |
| Printed |
Page xvii
First Paragraph |
"There's an awful lot of code that handles the
interactions between the client and the server" should
probably indicate whose code it is. "The JDK contains
a lot of classes to handle interactions between clients
and servers" probably works better.
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page xvii
The summaries of Chapters 19 and 20 don't contain |
a "This chapter ...." sentence (unlike the
rest of the chapter summaries). It's a minor break
in the parallel structure.
|
Anonymous |
|
|
| Printed |
Page xxii
The "how to contact us section" is still jarring |
The rest of the preface
is written in first person singular. The how to
contact us section is not. I understand it's
boilerplate text that gets inserted as a matter of
course, but it's still very very awkward.
|
Anonymous |
|
|
| Printed |
Page xxii
Discussion of the RMI mailing list. "All levels, |
from beginner to advanced, are discussed here."
Yuck.
I wrote "All topics, from beginner to advanced,
are discussed here."
My sentence is awkward, the final sentence is
just plain wrong (ain't nobody discussing levels,
mon frer).
|
Anonymous |
|
|
| Printed |
Page 46
2nd paragraph |
"After this code executes, the instance of SSLServerSocket returned by
createServer( ) is ..."
Should say -
"After this code executes, the instance of SSLServerSocket returned by
createServerSocket( ) is ..."
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 47
heading "Revisiting Our Web Browswer" |
should say
"Revisiting Our Web Server"
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 58
code example, 3rd line from the bottom |
Line beginning with "BufferedReader reader ..." can be removed
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 75
example 4-2 NullPrinter.java |
Public NullPrinter(OutputStream log) hrows RemoteException
Should be:
Public NullPrinter(OutputStream log) throws RemoteException
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 77
|
The zero argument constructor is not necessary for serialization
in PrinterException (it won't be called during deserialization).
|
Anonymous |
|
|
| Printed |
Page 78
footnote |
"This is a generic exception because it covers wide range of devices."
should be:
"This is a generic exception because it covers a wide range of devices.""
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 86
IN PRINT: "The Basic Use Case" section, point 6 |
"...her identitification card."
SHOULD BE:
"...her identification card."
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 108-109
"How Easy..." Section |
No italicised "Advantage" line for this section
|
Anonymous |
|
|
| Printed |
Page 130
line 2 |
"this(cents.intValue()"
Should be:
"this(cents.intValue())"
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 130
line 6 |
public Money(int cents) {
super(dollars + " dollars " + cents + " cents. ");
_cents = cents;
}
variable dollars is not defined
Should be
public Money (int cents) {
super(cents + " cents.");
_cents = cents;
}
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 130
line 31 |
public boolean equals(Object object) {
if(object instanceof Money) {
return (_cents == otherMoney.getCents());
}
variable otherMoney is not defined.
Should be:
public boolean equals(Object object) {
if(object instanceof Money) {
Money otherMoney = (Money)object;
return (_cents == otherMoney.getCents());
}
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 146
middle of the page |
Batch file should be -
start rmiregistry
start java com.ora.rmibook.chapter9.applications.ImplLauncher Bob 10000 Alex 1223
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 147
3rd method, 4th line |
Since the arguments are expected to be name/cents pairs, not name/dollars/cents triplets,
the loop in the getNameBalancePairs() method should be incremented by "i+=2" instead of "i+=3".
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 151
code sample in second paragraph |
The first line of code in the constructor for PositiveMoney, calling the superclass
constructor, is:
super(cents,)
it should be:
super(cents)
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 164
3rd paragraph |
At the end of the third paragraph,
"call the readObject() object"
should be
"call the readObject() method".
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 166
Second paragraph |
The author says, "In fact, reset(), close(), and flush() are standard stream
methods."
reset() is NOT a standard method for an output stream, which is what is being discussed.
reset() is a standard method, but only for input streams.
|
Anonymous |
|
|
| Printed |
Page 168
2nd paragraph of "The stream manipulation methods" |
The second paragraph of the "stream manipulation methods" section says:
"Of these, available() and skip() are methods first defined on InputStream."
It should say:
"Of these, available() and close() are methods first defined on InputStream."
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 169
Second from last paragraph |
java.io.File does in fact implement the java.io.Serializable interface, contrary to what the book says.
AUTHOR: Actually, I don't say that File isn't serializable.
I say that the serialization of File is not at all obvious.
Nonetheless, it could have been written more clearly.
|
Anonymous |
|
|
| Printed |
Page 171
First paragraph |
It says that arrays in Java are not serializable, but they are.
|
Anonymous |
|
|
| Printed |
Page 188
2nd Bullet Point, Top of Page |
it says "...except private, static, and private transient".
it should say: "...except private static and private transient".
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 193
Middle of page |
The sentence
"Serializable can frequently be implemented by doing two things ..."
should be replaced by
"Implementing the Serializable interface is often trivial-- simply declaring that a class
implements the Serializable interface is usually all that is required."
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 208
Numbered list element "5." |
in the Mary & Rachel account example says, "...and the account has either $200 or $400 left in it..."
The account has either ($1400-$1200) or ($1400-$900) left in it, so that should be "$200 or $500" instead.
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 216
|
word "synchronized" misspelled in makeDeposit declaraion
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 222
|
code for abstract class StoppableThread:
Public StopppableThread(String threadName, Object arg1 OObject arg2) {
should be
Public StoppableThread(String threadName, Object arg1 Object arg2) {
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 225
Block of code in 3rd paragraph |
Both of the synchronized methods declared in the third paragraph contain an extra
closing curly brace.
otherOjbect.method2();}
should be:
otherOjbect.method2();
and
otherOjbect.method1();}
should be:
otherOjbect.method1();
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 226
|
word "synchronized" misspelled in transferMoney declaration
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 233
|
word "synchronized" misspelled in getBalance declaration
word "synchronized" misspelled in makeWithdrawal declaration
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 236
body of resetCounter() method |
"_timeUntilLockIsReleased"
should be:
"_timeLeftUntilLockIsReleased"
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 237
body of CountDownTimer.run() method |
"_timeUntilLockIsReleased"
should be:
"_timeLeftUntilLockIsReleased"
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 267
3rd paragraph |
In the second sentence of the third prose paragraph, it says
"...then call ThreadedPoo11's..."
That should be
"ThreadedPool1's" (with a letter "l" and a digit "1", rather than two "1"'s.)
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 269
2nd paragraph(excluding note) |
The second sentence refers to "validateAndReturnObject()", when in fact the method is
"validateAndReturn()", with an Object as a parameter.
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 276
last paragraph |
The last complete sentence on the page reads
"...; the fact that don't talk about";
that should be
"...; the fact that we don't talk about".
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 280
Figure 13-1 |
The title bar of the application in this figure says chapter 12. It should
say Chapter 13.
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 329
4th list item |
NameAttrributeSetPair
should be:
NameAttributeSetPair
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 356
second code sample |
The last line of code in the getBalance() function is "return rreturnValue";
it should be
"return returnValue"
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 361
|
System.getProperties().put("java.rmi.serverr.logCalls", "true")
should be
System.getProperties().put("java.rmi.server.logCalls", "true")
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 370
middle of page |
When, on the other hand, un.rmi.server.exceptionTrace
should be
When, on the other hand, sun.rmi.server.exceptionTrace
|
Anonymous |
|
Jul 01, 2011 |
| Printed |
Page 423
second paragraph in box |
"Ssuch a policy would block any RMI server listening on a randomly assigned" etc.
should be:
"Such a policy"
|
scottd_oreilly |
Jun 16, 2011 |
Jul 01, 2011 |
| Printed |
Page 427
Last paragraph of box |
Bill Joy misspelled as Bill Loy.
|
scottd_oreilly |
Jun 16, 2011 |
Jul 01, 2011 |
| Printed |
Page 436
4th paragraph in sidebar |
"The This is a high-quality mailing list" should be
"This is a"
|
scottd_oreilly |
Jun 16, 2011 |
Jul 01, 2011 |
| Printed |
Page 499
7th paragraph, first sentence |
"It attempt to connect on port 80 of the..."
should be
"It attempts to"
|
scottd_oreilly |
Jun 16, 2011 |
Jul 01, 2011 |
| Printed |
Page 509
first paragraph |
"stub" misspelled as "stun"
|
scottd_oreilly |
Jun 16, 2011 |
Jul 01, 2011 |