hi,

I have a CMP entity bean and a simple test client. one of the bean methods
is

public void setClassification(Classification param) throws
LocalizedAppEventException {
  if (param == null) {
    ctx.setRollbackOnly();
    throw new
LocalizedAppEventException("isis.masterdata.invalidClassification");
  }
  this.classification = param.intValue();
}

the client calls this method and another one, which is more or less
identical to the one above:

try {
  spec.setStatus(null);
}
catch (LocalizedAppEventException e) {
  // that's ok, ignore
}

try {
  spec.setType(null);
}
catch (LocalizedAppEventException e) {
  // that's ok, ignore
}

the first invocation is OK, the exception is thrown. on the second
invocation, though, the client hangs. the server produces this line in the
log file:

[Specification] LOCKING-WAITING (TRANSACTION) for id
com.tiscon.isis.masterdata.ejb.SpecificationPK@1e ctx.hash 2721646
tx:TransactionImpl:XidImpl [FormatId=257, GlobalId=c197//81, BranchQual=]

As far as I've understood earlier postings in the list, this message usually
occurs in case of a deadlock with non-reentrant beans. OK, my bean *is*
non-reentrant, but there is only one client thread, and, obviously, no
callbacks. If I uncomment the call to setRollbackOnly() everything works
fine. What's the problem here?

Thanks,
  Achim


_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to