Hi Erik,

I think my answer to your question on the [EMAIL PROTECTED] list covers this question as well. Let me know if that doesn't do the trick.

-David


On Mar 28, 2008, at 2:08 AM, ebaxt wrote:

Hi.

I'm using embedded openEJB to test some Session Beans during my build. The project I'm working on uses toplink JPA provider, so I want to use topLink
with openEJB.

Problem:
I want to add a new Taxon:

@Entity
@Table(name = "TAXA")
public class Taxa implements Serializable, Comparable<Taxa> {
   private static final long serialVersionUID = 1L;
   @TableGenerator(
       name = "Taxa_Gen",
       table = "ID_GEN",
       pkColumnName = "GENERATOR_NAME",
       valueColumnName = "GENERATOR_VALUE",
       pkColumnValue = "Taxa_Gen")
   @Id
@GeneratedValue(strategy=GenerationType.TABLE, generator="Taxa_Gen")
   @Column(name = "RECORD_ID", nullable = false)
.
.
}

My unitTest basicly calls a Session Facade, the facade delegates the
em.persist(..) to an EAO (DAO):

public class Sp2kServiceBean implements Sp2kService {

   @EJB
   TaxaEAO taxaEAO;

 @Override
   public Taxa createTaxa(Long parentId, String name) {
   ... //Creates new Taxa
   taxaEAO.create(newTaxa);
.
.
}

TaxaEAOBean looks like this:

@Stateless
public class TaxaEAOBean implements TaxaEAO {

   @PersistenceContext(name="sp2k")
   private EntityManager em;

   @Override
   public void create(Taxa taxa) {
       em.persist(taxa);
       /em.flush();
   }
.
.
}

The problem started when I tried to add GenerationType.TABLE, the test ran without error, but the Taxon was not added to the DB. So i tried em.flush()
in TaxaEAOBean, which resulted in the following error:

The transaction has been marked rollback only because the bean encountered a non-application exception :javax.persistence.TransactionRequiredException :
Exception Description: No transaction is currently active

Any ideas?
Does the use of toplink with openEJB need any more configuration than
changing the provider in persistence.xml?

I also tried it with openJPA, but it doesn't seem to use the table generated
primary key.
--
View this message in context: 
http://www.nabble.com/Toplink%2BopenEJB-%3D-TransactionRequiredException-tp16348298p16348298.html
Sent from the OpenEJB Dev mailing list archive at Nabble.com.



Reply via email to