How do you retrieve Hibernate’s Session from an Entity ?

This tutorial has been written for JBoss 5 and it is therefore obsolete.
Check this article to learn how to use Hibernate objects from your Entity EJB: How to access Hibernate Session in JPA applications?

Reading the EJB 3.0 documentation it should be simply obtained by casting the EntityManager instance.

org.hibernate.Session session = (org.hibernate.Session)entityManager;

However, there seems to be a problem with JBoss AS 5.0, because a ClassCastException is issued.

You can use the the getDelegate() method of the entity manager to avoid this problem:

org.hibernate.Session session = (org.hibernate.Session)entityManager.getDelegate();