Errata

Enterprise JavaBeans

Errata for Enterprise JavaBeans

Submit your own errata for this product.

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.

Color key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted By Date submitted Date corrected
Printed
Page 73
All occurrences of

Principle

have been changed to:

Principal

Anonymous    Oct 01, 2000
Printed
Page 74
In line 12 (the 8th line of the xml source snippet of xml source),

the code used to read:

<method-permission>
<role-name>Administrator</role-name>
<method>
<ejb-name>CabinEJB</ejb-name>
<method-name>*</method-name>
</method>
</method-permission>
</method-permission> **** here there should be a starting, not an end, tag**
<role-name>ReadOnly</role-name>

It now reads:

<method-permission>
<role-name>Administrator</role-name>
<method>
<ejb-name>CabinEJB</ejb-name>
<method-name>*</method-name>
</method>
</method-permission>
<method-permission>

Anonymous    Aug 01, 2000
Printed
Page 75
In the XML Deployment Description for Cabin Beans,

the last two tags in this XML example should be end tags.

They now read:

<role-name>
<security-name>

They should read:

</role-name>
</security-name>

Anonymous   
Printed
Page 76
All occurrences of

Principle

have been changed to:

Principal

Anonymous    Oct 01, 2000
Printed
Page 100
The following code

dev % jar cf cabin.jar com/titan/cabin/*.class
com/titan/cabin/META-INF/ejb-jar.xml

F:..dev>jar cf cabin.jar com itancabin*.class
com itancabinMETA-INFejb-jar.xml

should be changed back to:

dev % jar cf cabin.jar com/titan/cabin/*.class META-INF/ejb-jar.xml

F:..dev>jar cf cabin.jar com itancabin*.class META-INFejb-jar.xml

Printings prior to 12/00 already reflect this.

Anonymous   
Printed
Page 100
The following code

dev % jar cf cabin.jar com/titan/cabin/*.class META-INF/ejb-jar.xml

F:..dev>jar cf cabin.jar com itancabin*.class META-INFejb-jar.xml

has been changed to:

dev % jar cf cabin.jar com/titan/cabin/*.class
com/titan/cabin/META-INF/ejb-jar.xml

F:..dev>jar cf cabin.jar com itancabin*.class
com itancabinMETA-INFejb-jar.xml

Anonymous    Dec 01, 2000
Printed
Page 114
The following code

import java.util.Properties;
import java.util.Vector;

has been changed to:

import java.util.Properties;
import java.util.Vector;
import javax.ejb.EJBException;

Anonymous    Dec 01, 2000
Printed
Page 114
The following code

CabinPK pk = new CabinPK();
Cabin cabin;
for (int i = 1; ; i++) {
pk.id = i;

has been changed to:

Cabin cabin;
for (int i = 1; ; i++) {
CabinPK pk = new CabinPK();
pk.id = i;

Anonymous    Dec 01, 2000
Printed
Page 115
The following text has been removed from the code listing

private javax.naming.Context getInitialContext()
throws javax.naming.NamingException{
Properties p = new Properties();
// ... Specify the JNDI properties specific to the vendor.
return new javax.naming.InitialContext(p);
}

Anonymous    Aug 01, 2000
Printed
Page 124
The following code

import com.titan.cabin.CabinHome;
import com.titan.cabin.Cabin;
import com.titan.cabin.CabinPK;

has been changed to:

import com.titan.travelagent.TravelAgent;
import com.titan.travelagent.TravelAgentHome;

Anonymous    Dec 01, 2000
Printed
Page 124
The following code

static public Context getInitialContext() throws Exception {

has been changed to:

public static Context getInitialContext() throws Exception {

Anonymous    Dec 01, 2000
Printed
Page 128
In the last paragraph

two remote interfaces

has been changed to:

a home interface and a remote interface

also, the following sentence:

Of these types, the remote interfaces....

has been changed to:

Of these types, the remote and home interfaces....

Anonymous    Dec 01, 2000
Printed
Page 140
The following line used to read

EJBObject.getHomeHandle( )

It now reads:

EJBHome.getHomeHandle( )

Anonymous    Aug 01, 2000
Printed
Page 161
The following line used to read


"In our home interface, we only provide a single create() method. "

It now reads:

"In our home interface, we only two create() methods. "

Anonymous    Aug 01, 2000
Printed
Page 168
The following code

public ShipPK ejbCreate(int id, String name) {
this.id = id;
this.name = name;
capacity = 0;
tonnage = 0;
}

has been changed to:

public ShipPK ejbCreate(int id, String name) {
this.id = id;
this.name = name;
capacity = 0;
tonnage = 0;
return null;
}

Anonymous    Dec 01, 2000
Printed
Page 171
In figure6-1, the following code

ejbPostCreate( )

has been changed to:

ejbPostCreate(3, "Utopia")

Anonymous    Oct 01, 2000
Printed
Page 184
The following line used to read

id = id;

It now reads:

id = pk.id;

Anonymous    Aug 01, 2000
Printed
Page 198
The following line used to read

"in our container managed beans, ejbCreate() was required to
return void."

It now reads:

"in our container managed beans, ejbCreate() was required to
return null value (or void for EJB 1.0)."

Anonymous    Aug 01, 2000
Printed
Page 198
The following sentence has been removed

"The changes to the orginal ejbCreate() method are emphasized in bold."

Anonymous    Aug 01, 2000
Printed
Page 198
The following text in paragraph four

Its return type has been changed from void to the Ship bean's primary key,
ShipPK.

has been changed to:

Its return value has been changed from null to an instance of the ShipPK
primary key.

Anonymous    Dec 01, 2000
Printed
Page 205
The following text in paragraph four

"Both find methods in the ShipBean class methods throw a FinderException "

has been changed to:

"Both find methods in the ShipBean class methods throw an EJBException "

Anonymous    Dec 01, 2000
Printed
Page 212
In paragraph five

EJBContext.getPrimary()

has been changed to:

EntityContext.getPrimaryKey( )

Anonymous    Dec 01, 2000
Printed
Page 222
3rd paragraph (sentence following the sql code snippets)

The client.java file in the cruise directory for EJB 1.1 seems to be the
same as the EJB 1.0 one.

Change:

Object ref = jndiContext.lookup("CruiseHome");
CruiseHome home = (CruiseHome)
javax.rmi.PortableRemoteObject.narrow(ref, CruiseHome.class);

to:

Context jndiContext = getInitialContext();
CruiseHome home = (CruiseHome)jndiContext.lookup("CruiseHome");

Anonymous   
Printed
Page 260
The following code

"select ID, NAME, DECK_LEVEL from CABIN "+
"where SHIP_ID = ? and ID NOT IN "+
"(SELECT CABIN_ID FROM RESERVATION WHERE CRUISE_ID = ?)");

ps.setInt(1,shipID);
ps.setInt(2,cruiseID);

has been changed to:

"select ID, NAME, DECK_LEVEL from CABIN "+
"where SHIP_ID = ? and BED_COUNT = ? and ID NOT IN "+
"(SELECT CABIN_ID FROM RESERVATION WHERE CRUISE_ID = ?)");

ps.setInt(1,shipID);
pd.setInt(2,bedCount);
ps.setInt(3,cruiseID);

Anonymous    Oct 01, 2000
Printed
Page 266
The last sentence of third paragraph used to read

"in EJB 1.1 and EJB 1.1"

it now reads:

"in EJB 1.1 and EJB 1.0"

Anonymous    Aug 01, 2000
Printed
Page 302
Change

utx.begin();
...
utx.commit();

to:

tran.begin();
...
tran.commit();

Anonymous    Aug 01, 2000
Printed
Page 307
The text currently reads

"IllegalStateException is thrown when begin() is called by a thread that
is already associated with a transaction."

It should read:

"NotSupportedException is thrown when begin() is called by a thread that
is already associated with a transaction."

Anonymous    Aug 01, 2000
Printed
Page 325
Line 8 of paragraph 3 used to read

"thesex"

It now reads:

"these"

Anonymous    Aug 01, 2000
Printed
Page 383
In the fifth paragraph

truncation

has been changed to:

transaction

Anonymous    Oct 01, 2000
Printed
Page 394
The eighth line of the third paragraph reads

"as well"

It should read:

"as well as"

Anonymous   
Printed
Page 400
In the second line

JAF ... which is "need" to support ...

should be:

JAF ... which is "needed" to support ...

Anonymous   
Printed
Page 417
in the diagram (B-2)

The arrow showing the invocation of a "business method" from "EJBObject"
should go to "Bean Instance" instead of "Container".

The same error is on page 419 (Figure B-4) but NOT on pages 418 and 420.

Anonymous   
Printed
Page 437
In the last line of the first column on the left, the Enhydra web

address has been changed to: www.enhydra.org.

Anonymous    Dec 01, 2000
Printed
Page 443
In the first code listing

InitialContext initCxt = InitialContext();
Context defaultCxt = (Context)initCxt.lookup("java:comp/env");
Double limit = (Double)
defaultCxt.lookup("java:comp/env/withdraw_limit");

has been changed to:

InitialContext initCxt = new InitialContext();
Context defaultCxt = (Context)initCxt.lookup("java:comp/env/");
Double limit = (Double)
defaultCxt.lookup("withdraw_limit");

Anonymous    Dec 01, 2000