" Setter methods for fields associated with a primary key MUST NOT be exposed through a client view ",
the book says it is true,
but on the specification, page 130 we have the following paragraph:
"Once the primary key for an entity bean has been set, the Bean Provider must not attempt to change it by use of set accessor methods on the primary key cmp-fields. The Bean Provider SHOULD therefore not expose the set accessor methods for the primary key cmp-fields in the component interface of the entity bean. "