[jboss-user] [Persistence, JBoss/CMP, Hibernate, Database] - RelationSet.getIdList() -> working with Relation Sets
Oyabun
do-not-reply at jboss.com
Wed Sep 27 07:34:55 EDT 2006
Hi!
According to the that comment below, it is not possible to work with relation sets, if the calling method ist executed with tx = null.
The getIdList() requires a tx or else the setHandle is always null -> which means that JBOSS (4.0.2) does not allow something like person.getRelatives().iterator() if the tx is null.
Can someone confirm this?
public class RelationSet implements Set {
| private JDBCCMRFieldBridge cmrField;
| private EntityEnterpriseContext ctx;
| private List[] setHandle;
| private Class relatedLocalInterface;
|
| //
| // Most of this class is a boring wrapper arround the id set.
| // The only interesting hitch is the setHandle. This class doesn't
| // have a direct referance to the related id set, it has a referance
| // to a referance to the set. When the transaction is completed the
| // CMR field sets my referance to the set to null, so that I know that
| // this set is no longer valid. See the ejb spec for more info.
| //
|
| public RelationSet(
| JDBCCMRFieldBridge cmrField,
| EntityEnterpriseContext ctx,
| List[] setHandle) {
|
| this.cmrField = cmrField;
| this.ctx = ctx;
| this.setHandle = setHandle;
| relatedLocalInterface = cmrField.getRelatedLocalInterface();
| }
|
| private List getIdList() {
| if(setHandle[0] == null) {
| throw new IllegalStateException("A CMR collection may only be used " +
| "within the transction in which it was created");
| }
|
|
Source:
http://www.cenqua.com/clover/eg/jboss/report/org/jboss/ejb/plugins/cmp/jdbc/bridge/RelationSet.html
--
Alex
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3974508#3974508
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3974508
More information about the jboss-user
mailing list