Hi,
Yes, almost all types of beans are pooled(except SFSB). The finalize method is called when JVM decided this object need more and also purpose the finalize method is to realse the resources(non
java resources, like connection to db, file etc).
We have alternative methods for realsing the resources in ejb framework. The finalize method is not guaranteed to execute. But in our EJB framework, for entitybean instance level resource realsing method is unsetEntityContext, it is guaranteed to executed by container when the instance removing from the pooled state, likewise for Stateless bean also ejbRemove methods.
I hope this also help your understanding.
Thanks & Regards
Kasimurugan R.