Hi Hantone, Could you post the nested exception from inside the RollbackException? There should be a SQLException as the innermost nested exception that will shed some light on the problem.
Thanks, -mike On Tue, Jan 27, 2009 at 11:16 AM, hantone <[email protected]>wrote: > > Thanks in advance! I'm having a hard time with this so I would really > appreciate your help! > > I'm having problems to commit a transaction > > public class Main { > public static void main(String[] args) { > try { > EntityManager entityManager = > > Persistence.createEntityManagerFactory("ReportAndPay").createEntityManager();; > EntityTransaction transaction = > entityManager.getTransaction(); > transaction.begin(); > Reports report = entityManager.find(Reports.class, > new Inhteger(2001)); > Blob file = null; > try { > file = new SerialBlob("PEPE".getBytes()); > } catch (SQLException e) {} > report.getOutboundFileses().add(new > OutboundFiles(report, file , > "Type","Status")); > entityManager.merge(report); > transaction.commit(); > entityManager.close(); > } catch(RuntimeException rte) { > System.out.println(rte.getStackTrace()); > } > } > } > > When I debug it, an exception happened when executing > "transaction.commit();", I get this error message > "The transaction has been rolled back. See the nested exceptions for > details on the errors that occurred.", the error cause is > <openjpa-1.2.0-r422266:683325 fatal store error> > org.apache.openjpa.persistence.RollbackException: The transaction has been > rolled back. See the nested exceptions for details on the errors that > occurred. > > > > @Entity > @Table(name = "REPORTS", schema = "MYPROY") > @SequenceGenerator(name="ReportsSeq", > sequenceName="MYPRO.REPORT_ROW_ID_SEQ1", initialValue=1, allocationSize=1) > public class Reports implements java.io.Serializable { > private int reportRowId; > private String status; > private Date created; > private Set<OutboundFiles> outboundFileses = new > HashSet<OutboundFiles>(0); > ... > > @Id > @Column(name = "REPORT_ROW_ID", unique = true, nullable = false) > @GeneratedValue(strategy=GenerationType.SEQUENCE, > generator="ReportsSeq") > public int getReportRowId() { > return this.reportRowId; > } > > @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, > mappedBy = > "reports") > public Set<OutboundFiles> getOutboundFileses() { > return this.outboundFileses; > } > } > > > > > @Entity > @Table(name = "OUTBOUND_FILES", schema = "MYPROY") > @SequenceGenerator(name="OutboundFilesSeq", > sequenceName="WWBPSM.OUTBOUND_FILE_ROW_ID_SEQ1", initialValue=1, > allocationSize=1) > public class OutboundFiles implements java.io.Serializable { > private int outboundFileRowId; > private Reports reports; > private Blob file; > private String fileType; > private String status; > > public OutboundFiles() { > } > > public OutboundFiles(int outboundFileRowId, Reports reports, Blob > file, > String fileType) { > this.outboundFileRowId = outboundFileRowId; > this.reports = reports; > this.file = file; > this.fileType = fileType; > } > public OutboundFiles(Reports reports, Blob file,String fileType, > String > status) { > this.reports = reports; > this.file = file; > this.fileType = fileType; > this.status = status; > } > @Id > @Column(name = "OUTBOUND_FILE_ROW_ID", unique = true, nullable = > false) > @GeneratedValue(strategy=GenerationType.SEQUENCE, > generator="OutboundFilesSeq") > public int getOutboundFileRowId() { > return this.outboundFileRowId; > } > } > > the same error happens as well if I use > > public class Main { > public static void main(String[] args) { > try { > EntityManager entityManager = > > Persistence.createEntityManagerFactory("ReportAndPay").createEntityManager();; > EntityTransaction transaction = > entityManager.getTransaction(); > transaction.begin(); > Reports report = entityManager.find(Reports.class, > new Integer(2001)); > Blob file = null; > try { > file = new SerialBlob("PEPE".getBytes()); > } catch (SQLException e) {} > OutboundFiles outboundFiles = new > OutboundFiles(report, file , > "Type","Status"); > entityManager.persist(outboundFiles); > transaction.commit(); > entityManager.close(); > } catch(RuntimeException rte) { > System.out.println(rte.getMessage()); > } > } > } > > > -- > View this message in context: > http://n2.nabble.com/Nested-Exception-Error-tp2226964p2226964.html > Sent from the OpenJPA Developers mailing list archive at Nabble.com. > >
