Hibernate One-to-Many relationship data insertion error

I am having Project Class POJO @Entity @Table(name = "project", catalog = "primavera") public class Project implements java.io.Serializable { private Integer projectId; private Date endDate; private String projectDesc; private String projectName; private String projectTitle; private Date startDate; private Set tasks = new HashSet(0); public Project() { } public Project(Date endDate, String projectDesc, String projectName, String projectTitle, Date startDate, Set tasks) { this.endDate = endDate; this.projectDesc = projectDesc; this.projectName = projectName; this.projectTitle = projectTitle; this.startDate = startDate; this.tasks = tasks; } @Id @GeneratedValue @Column(name = "project_id") public Integer getProjectId() { return this.projectId; } public void setProjectId(Integer projectId) { this.projectId = projectId; } @Temporal(TemporalType.TIMESTAMP) @Column(name = "endDate", length = 19) public Date getEndDate() { return this.endDate; } public void setEndDate(Date endDate) { this.endDate = endDate; } @Column(name = "projectDesc") public String getProjectDesc() { return this.projectDesc; } public void setProjectDesc(String projectDesc) { this.projectDesc = projectDesc; } @Column(name = "projectName") public String getProjectName() { return this.projectName; } public void setProjectName(String projectName) { this.projectName = projectName; } @Column(name = "projectTitle") public String getProjectTitle() { return this.projectTitle; } public void setProjectTitle(String projectTitle) { this.projectTitle = projectTitle; } @Temporal(TemporalType.TIMESTAMP) @Column(name = "startDate", length = 19) public Date getStartDate() { return this.startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } @OneToMany(cascade = CascadeType.ALL) @JoinTable(name = "project_task", joinColumns = { @JoinColumn(name = "project_id") }, inverseJoinColumns = { @JoinColumn(name = "task_id") }) public Set getTasks() { return this.tasks; } public void setTasks(Set tasks) { this.tasks = tasks; } } having relation with Task Class POJO @Entity @Table(name = "task", catalog = "primavera") public class Task implements java.io.Serializable { private Integer taskId; private Integer depth; private Double duration; private String durationUnit; private Date endDate; private Integer parentId; private Integer percentDone; private Integer priority; private Date startDate; private Integer taskIndex; private String taskName; public Task() { } public Task(Integer depth, Double duration, String durationUnit, Date endDate, Integer parentId, Integer percentDone, Integer priority, Date startDate, Integer taskIndex, String taskName) { this.depth = depth; this.duration = duration; this.durationUnit = durationUnit; this.endDate = endDate; this.parentId = parentId; this.percentDone = percentDone; this.priority = priority; this.startDate = startDate; this.taskIndex = taskIndex; this.taskName = taskName; } public Task(String string, Object object) { // TODO Auto-generated constructor stub } @Id @GeneratedValue @Column(name = "task_id") public Integer getTaskId() { return this.taskId; } public void setTaskId(Integer taskId) { this.taskId = taskId; } @Column(name = "depth") public Integer getDepth() { return this.depth; } public void setDepth(Integer depth) { this.depth = depth; } @Column(name = "duration", precision = 22, scale = 0) public Double getDuration() { return this.duration; } public void setDuration(Double duration) { this.duration = duration; } @Column(name = "durationUnit") public String getDurationUnit() { return this.durationUnit; } public void setDurationUnit(String durationUnit) { this.durationUnit = durationUnit; } @Temporal(TemporalType.TIMESTAMP) @Column(name = "endDate", length = 19) public Date getEndDate() { return this.endDate; } public void setEndDate(Date endDate) { this.endDate = endDate; } @Column(name = "parentId") public Integer getParentId() { return this.parentId; } public void setParentId(Integer parentId) { this.parentId = parentId; } @Column(name = "percentDone") public Integer getPercentDone() { return this.percentDone; } public void setPercentDone(Integer percentDone) { this.percentDone = percentDone; } @Column(name = "priority") public Integer getPriority() { return this.priority; } public void setPriority(Integer priority) { this.priority = priority; } @Temporal(TemporalType.TIMESTAMP) @Column(name = "startDate", length = 19) public Date getStartDate() { return this.startDate; } public void setStartDate(Date startDate) { this.startDate = startDate; } @Column(name = "taskIndex") public Integer getTaskIndex() { return this.taskIndex; } public void setTaskIndex(Integer taskIndex) { this.taskIndex = taskIndex; } @Column(name = "taskName") public String getTaskName() { return this.taskName; } public void setTaskName(String taskName) { this.taskName = taskName; } } I am trying to assign data to my POJO by below code using Json Set taskdata = new HashSet(); taskdata.add(new Task(null,null,null,endD1,null,null,null,startD1,null,null)); jsonObject.put("projectTitle", jsonObject.getString("title")); jsonObject.put("projectName", jsonObject.getString("name")); jsonObject.put("projectDesc", jsonObject.getString("description").replace("\u200b", "")); jsonObject.put("startDate", startD); jsonObject.put("endDate", endD); jsonObject.put("tasks", taskdata); Project project = (Project) JSONObject.toBean(jsonObject, Project.class); but it didn't seems **to be work even though i am passing the Set as taskdata** and also I am getting error like **35802 [http-8085-4] ERROR org.hibernate.property.BasicPropertyAccessor - IllegalArgumentException in class: com.kintu.projectmgt.model.Task, getter method of property: taskId** Please help me to find the problem which prevents my data to be inserted completely to database.
check this answer, might be a hibernate bug: stackoverflow.com/questions/3631349/…. Try setting hibernate.cache.use_structured_entries=true

以上就是Hibernate One-to-Many relationship data insertion error的详细内容,更多请关注web前端其它相关文章!

赞(0) 打赏
未经允许不得转载:web前端首页 » JavaScript 答疑

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

前端开发相关广告投放 更专业 更精准

联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏