Bir formum var ve bu form kaydımı güncellemeli ama görünüşe göre güncellenmiyor ve hata mesajının altına inmem gerekiyor. Bu istisnayı 4 gün içinde ele alıyorum ve bir soru sormaya karar verdim. Ek bilgiye ihtiyacınız varsa, biraz ekleyebilirim.JPA, farklı varlıklar ile eşlemeyi yönetme hatası
JSP Özel Durumu; ( )
java.lang.IllegalStateException: MergeContext#attempt to create managed -> managed mapping with different entities: [main.model.Users#1]; [main.model.Users#1]
Denetleyici; Form Kullanıcı ve Etki Alanı bilgilerini formdan alır ve DB'ye kaydeder;
@PostMapping("/save-personel-info")
public String savePersonelInfo(@RequestParam int id, HttpServletRequest request, @ModelAttribute("Users") Users users, @ModelAttribute("Positions") Positions positions, @ModelAttribute("Domains") Domains domains, ModelMap model){
usersService.save(users);
request.setAttribute("mode", "MODE_USERS");
return "redirect:/index";
}
Service; ( )
<form:form method="POST" action="/save-personel-info" modelAttribute="Users">
<tr>
<form:input id="1-1-0" type="hidden" class="form-control" path="id"/>
<td><form:input id="1-1-0" type="text" class="form-control" path="username" /></td>
<td><form:input id="1-1-0" type="text" class="form-control" path="mail" /></td>
<td>
<form:select path="Positions" class="form-control">
<form:options items="${Pst}" itemValue="id" itemLabel="position_name" />
</form:select>
</td>
<td>
<form:select path="Domains" class="form-control">
<form:options items="${Domains}" itemValue="id" itemLabel="domain_name" />
</form:select>
</td>
</tr>
<input type="submit" value="Submit" />
</form:form>
User Class; "Farklı varlıklar ile yönetilen haritalama" anlamı nedir
@Component
@Entity
public class Users {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
public long id;
public String username;
public String mail;
@Temporal(TemporalType.DATE)
public Date enrolment_date;
@ManyToOne(cascade = CascadeType.ALL)
public Domains domains;
@ManyToOne(cascade = CascadeType.ALL)
public Positions positions;
@OneToMany(targetEntity = UserLanguages.class, mappedBy = "users", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
public Set<UserLanguages> userlanguages = new HashSet<UserLanguages>();
@OneToMany(targetEntity = UserCertificates.class, mappedBy = "users", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
public Set<UserCertificates> usercertificates = new HashSet<UserCertificates>();
@OneToMany(targetEntity = UserKnowledge.class, mappedBy = "users", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
public Set<UserKnowledge> userknowledge = new HashSet<UserKnowledge>();
ben bu hata mesajını araştırma ama kimse bu hatayı alıyorum sanırım. Hibernate-orm
Aynı sorun. Bu sorunu zaten çözdüyseniz lütfen bildirin. – semenchikus
@semenchikus Cevabıma bir göz atın – naXa