It seems, you have a transaction propagation problem.
The problem seems to be, that in your JNDI
lookup you search for the remote EJB (not Local), which does NOT get executed in the same transaction context as EJB1.
When using the @EJB
annotation above, the local implementation is injected, with the same transaction context.