I am encountering PersistenceException in designing a web form that results 
from using Seam-managed persistence context(SMPC) + @OneToOne and 
<h:selectOneMenu>.  I am trying to use the entity as a pure JSF backing bean.  
The problem is modifying the department's ID, which is still managed by SMPC.  

Does anyone know a clever design/solution to use @OneToOne + <h:selectOneMenu> 
?  The examples in Seam1.1GA do not appear to have this use case covered.  The 
relevant codes are posted below.  Thanks.


  | Caused by: org.jboss.tm.JBossRollbackException: Unable to commit, 
tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=null:1166713106023/32, 
BranchQual=null:1166713106023, localId=0:32], status=STATUS_NO_TRANSACTION; - 
nested throwable: (javax.persistence.PersistenceException: 
org.hibernate.HibernateException: identifier of an instance of Department was 
altered from 1 to 2)
  | 

Employee.java
--

  | @Name("employee")
  | @Entity
  | public class Employee {
  | 
  | @Id
  | @GeneratedValue
  | private Long id;
  | 
  | @OneToOne
  | @JoinColumn(name = "departmentId")
  | private Department department;
  | 
  | // getters and setters
  | }

Department.java
--
@Name("department")
  | @Entity
  | public class Department {
  | 
  | @Id
  | @GeneratedValue
  | private Long id;
  | 
  | private String name;
  | 
  | // getters and setters
  | }

UserView.java
--

@Name("userView")
  | public class UserView {
  | @In
  | private EntityManager em;
  | 
  | @Factory("departmentList") 
  | public List<SelectItem> initDepartmentList() {
  | // use em; to return an instance of List<SelectItem>
  | }
  | }
  | 

user.xhtml
--
anonymous wrote : 
  | <h:selectOneMenu id="user.department" value="#{employee.department.id}">
  |     <f:convertNumber/>
  |     <f:selectItems value="#{departmentList}"/>
  | </h:selectOneMenu>
  | <h:commandButton value="Update" action="update"/>



View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3995922#3995922

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3995922
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to