If the method executed in a transaction context from the client, with the supports and NotSupported attributes, the container will throw IllegalStateException?
Yes, you're right. It doesn't matter if the client is in a tranaction context while calling the bean's business methods, as long as the bean's business methods are set with Supports, NotSupported or Never attribute in DD, and the bean calls the Context.getRollbackOnly or Context.setRollbackOnly, the bean will receive illegalStateException thrown by the Container.
Note: Bean's business method with NotSupported attribute, will always be executed in unspecified transaction context.
Joyce