Hi,
I think the first thing to keep in mind here is that lazy loading should work when Employee entity is attached(managed) to the persistence context.
In order for the entity to be attached to a persistence context you should be running within an active JTA transaction with a Transaction scoped entity manager.
Alternatively, if you use an Extended Persistence context your entities remain managed even if no transaction is present.
1) A transaction would be required for the following code:
2) No transaction required if you use a an extended PersistenceContext, although this code is valid in Stateful beans only, or in J2SE (RESOURCE_LOCAL) persistence context.
By the way is there a reason why you obtain your EntityManager via JNDI lookup?