The EJB specs specifically say that you should not spawn threads in an EJB. This is a big violation, and as you can see, your EJB does not work.
I was not aware of that.
How does one then create an object that has threads that can be accessed via EJB?
I don't know your requirements, so its hard to say. You may want to consider making your object with the multiple threads into an MBean. Methods on MBeans can be called from within EJBs.