Using glassfish appserver, if a remove method is called on an
EJB 3 SFSB within a transaction,
the transaction is marked for rollback; no exception is thrown.
Is this behavoir specified in the spec or is it special to glassfish ?
At least this behavoir is in contrast to the specification for EJB 2.1 beans (see core spec 4.4.4, page 82):
If a session bean instance is participating in a transaction, it is an error for a client to invoke the
remove method on the session object's home or component interface object. The container must detect
such an attempt and throw the javax.ejb.RemoveException to the client. The container should not mark
the client's transaction for rollback, thus allowing the client to recover.