I couldn't find any FAQ/Documentation that describes this so I am creating a new topic. Please point me to appropriate documentation if it exists.
We were running jboss 3.2.6 with 2.0 EJBs for a while and were using the isModified() method explicitly in ejbStore() to determine if a bean should be stored. The beans managed their own persistence (BMP). Recently we switched to 4.0.3SP1 and observed that the ejbStore() is no longer being called, which I traced back to the isModified returning false. This is documented behavior and as per jboss documentation this behavior should have existed after 3.2.3. Did this actually change after 3.2.6?
In the standardjboss.xml, I see that <call-ejb-store-on-clean> is no longer part of the BMP container configuration, while it was set to true in 3.2.6. Again according to documentation, this is true by default, so I guess it shouldn't matter. Does this mean that even though isModified() returns false, ejbStore will be called? I don't see this happening. I set the element "call-ejb-store-on-clean" explicitly to true in standardjboss.xml for BMP configurations. The ejbStore() still doesn't get called - I verified this by installing breakpoints in isModified() (where it stops to get a value of false) and in ejbStore (which is not executed).
I am running jboss in cluster mode (although I currently have only one node) with the EJBs configured to be have clustered element set to true in jboss.xml.
I will really appreciate if you would let me know whether it is a new issue/already known issue. If my understanding of the issue is incorrect or I am looking at the wrong place, would you please let me know of the same.
Thanks for your time,