[英]not-null property references a null or transient value Error in Hibernate
I am building a Hibernate application to store Country, State and City Info in MySql DB.我正在构建一个 Hibernate 应用程序以在 MySql 数据库中存储国家、State 和城市信息。 But I keep running into a Exception in thread "main" org.hibernate.PropertyValueException: not-null property references a null or transient value
even though I have null checks in concerned entities.但是我一直Exception in thread "main" org.hibernate.PropertyValueException: not-null property references a null or transient value
,即使我在相关实体中进行了 null 检查。
Here is Country.java
这是Country.java
package com.models;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import com.sun.istack.NotNull;
@Entity
@Table(name = "COUNTRY")
public class Country {
public Country() {
super();
// TODO Auto-generated constructor stub
}
public Country(String country, String countryCode) {
super();
this.country = country;
this.countryCode = countryCode;
}
private String country;
@Id
@NotNull
private String countryCode;
@OneToMany(mappedBy = "state", cascade = CascadeType.ALL,fetch = FetchType.LAZY)
private List<State> state = new ArrayList<State>();
public List<State> getState() {
return state;
}
public void setState(List<State> state) {
this.state = state;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public String getCountryCode() {
return countryCode;
}
public void setCountryCode(String countryCode) {
this.countryCode = countryCode;
}
}
Here is State.java
这里是State.java
package com.models;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;
@Entity
@Table(name = "STATE")
public class State {
public State() {
super();
}
public State(String state, String statecode) {
super();
this.state = state;
this.statecode = statecode;
}
private String state;
@Id
private String statecode;
@OneToMany
List<City> city = new ArrayList<City>();
@ManyToOne
@JoinColumn(name="countryCode", nullable=false)
private Country country;
public Country getCountry() {
return country;
}
public void setCountry(Country country) {
this.country = country;
}
public List<City> getCity() {
return city;
}
public void setCity(List<City> city) {
this.city = city;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public String getStatecode() {
return statecode;
}
public void setStatecode(String statecode) {
this.statecode = statecode;
}
}
Here is City.java
这里是City.java
package com.models;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
@Entity
@Table(name="CITY")
public class City {
public City() {
super();
// TODO Auto-generated constructor stub
}
public City(String city, boolean isStateCapital, boolean isCountryCapital,
String statecode, String countrycode) {
super();
this.city = city;
this.isStateCapital = isStateCapital;
this.isCountryCapital = isCountryCapital;
this.statecode = statecode;
this.countrycode = countrycode;
}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int cityid;
private String city;
private boolean isStateCapital;
private boolean isCountryCapital;
private String statecode;
private String countrycode;
public String getStatecode() {
return statecode;
}
public void setStatecode(String statecode) {
this.statecode = statecode;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public boolean isStateCapital() {
return isStateCapital;
}
public void setStateCapital(boolean isStateCapital) {
this.isStateCapital = isStateCapital;
}
public boolean isCountryCapital() {
return isCountryCapital;
}
public void setCountryCapital(boolean isCountryCapital) {
this.isCountryCapital = isCountryCapital;
}
public String getCountrycode() {
return countrycode;
}
public void setCountrycode(String countrycode) {
this.countrycode = countrycode;
}
}
Here is Application.java
class这是Application.java
class
package com.application;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistry;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import com.models.City;
import com.models.Country;
import com.models.State;
public class Application {
public static void main(String[] args) {
SessionFactory sessionFactory = getSessionFactory();
Session session = sessionFactory.openSession();
Transaction t = session.beginTransaction();
Country country = new Country("India","IN");
State state= new State("Delhi","DL");
City city = new City("New Delhi",true,true,"DL","IN");
country.getState().add(state);
state.getCity().add(city);
session.save(country);
session.save(state);
session.save(city);
t.commit();
session.close();
sessionFactory.close();
}
private static SessionFactory getSessionFactory() {
Configuration configuartion = new Configuration().configure();
configuartion.addAnnotatedClass(Country.class);
configuartion.addAnnotatedClass(State.class);
configuartion.addAnnotatedClass(City.class);
// StandardServiceRegistryBuilder registry = new StandardServiceRegistryBuilder();
// registry.applySettings(configuartion.getProperties());
// StandardServiceRegistry serviceRegistry = registry.build();
// SessionFactory sessionFactory = new MetadataSources(serviceRegistry).buildMetadata().buildSessionFactory();
SessionFactory sessionFactory = configuartion.buildSessionFactory();
return sessionFactory;
}
}
hibernate.cfg.xml
file hibernate.cfg.xml
文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password">pwdrd</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/countryinfo</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL55Dialect</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
</session-factory>
</hibernate-configuration>
I keep running into我一直遇到
May 23, 2020 2:38:13 PM org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator initiateService
INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
Hibernate: select state_.statecode, state_.countryCode as countryC3_2_, state_.state as state2_2_ from STATE state_ where state_.statecode=?
Exception in thread "main" org.hibernate.PropertyValueException: not-null property references a null or transient value : com.models.State.country
at org.hibernate.engine.internal.Nullability.checkNullability(Nullability.java:111)
at org.hibernate.engine.internal.Nullability.checkNullability(Nullability.java:55)
at org.hibernate.action.internal.AbstractEntityInsertAction.nullifyTransientReferencesIfNotAlready(AbstractEntityInsertAction.java:116)
at org.hibernate.action.internal.AbstractEntityInsertAction.makeEntityManaged(AbstractEntityInsertAction.java:125)
at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:289)
at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:263)
at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:250)
at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:343)
at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:292)
at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:198)
at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:140)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:193)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:178)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:99)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:75)
at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:108)
at org.hibernate.internal.SessionImpl.fireSaveOrUpdate(SessionImpl.java:598)
at org.hibernate.internal.SessionImpl.saveOrUpdate(SessionImpl.java:591)
at org.hibernate.engine.spi.CascadingActions$5.cascade(CascadingActions.java:219)
at org.hibernate.engine.internal.Cascade.cascadeToOne(Cascade.java:492)
at org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java:416)
at org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:218)
at org.hibernate.engine.internal.Cascade.cascadeCollectionElements(Cascade.java:525)
at org.hibernate.engine.internal.Cascade.cascadeCollection(Cascade.java:456)
at org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java:419)
at org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:218)
at org.hibernate.engine.internal.Cascade.cascade(Cascade.java:151)
at org.hibernate.event.internal.AbstractSaveEventListener.cascadeAfterSave(AbstractSaveEventListener.java:464)
at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:298)
at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:198)
at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:140)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:193)
at org.hibernate.event.internal.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:38)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:178)
at org.hibernate.event.internal.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:32)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:75)
at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:108)
at org.hibernate.internal.SessionImpl.fireSave(SessionImpl.java:618)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:611)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:606)
at com.application.Application.main(Application.java:30)
Though I have nullable checks at Country and State entities, I have cascade and fetch type lazy property set but still its not resolving.尽管我对 Country 和 State 实体进行了可空检查,但我设置了级联和获取类型的惰性属性集,但仍然无法解析。 Will deeply appreciate help in this.将非常感谢这方面的帮助。 Thanks.谢谢。 Sid席德
Can you make the following changes and try您可以进行以下更改并尝试
In the Country
entity there is an issue with mapping, the mappedBy
field is set to state
, this will create an additional foreign key.在Country
实体中存在映射问题, mappedBy
字段设置为state
,这将创建一个额外的外键。 Please update it as below请更新如下
@OneToMany(mappedBy = "country", cascade = CascadeType.ALL,fetch = FetchType.LAZY)
private List<State> state = new ArrayList<State>();
Since you are using bidirectional @OneToMany
relation between the Country
and State
entity all the following method to your Country
entity由于您在Country
和State
实体之间使用双向@OneToMany
关系,因此对您的Country
实体使用以下所有方法
public void addState(State st) {
state.add(st);
st.setCountry(this);
}
public void removeState(State st) {
state.remove(st);
st.setCountry(null);
}
Now make the following changes in the Application.java
现在在Application.java
中进行以下更改
Country country = new Country("India","IN");
State state= new State("Delhi","DL");
City city = new City("New Delhi",true,true,"DL","IN");
session.save(city);
state.getCity().add(city);
country.addState(state);
session.save(country);
t.commit();
session.close();
sessionFactory.close();
I am building a Hibernate application to store Country, State and City Info in MySql DB.我正在构建一个 Hibernate 应用程序来存储 MySql DB 中的 Country、State 和 City Info。 But I keep running into a Exception in thread "main" org.hibernate.PropertyValueException: not-null property references a null or transient value
even though I have null checks in concerned entities.但是我一直Exception in thread "main" org.hibernate.PropertyValueException: not-null property references a null or transient value
,即使我在相关实体中有 null 检查。
Here is Country.java
这是Country.java
package com.models;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import com.sun.istack.NotNull;
@Entity
@Table(name = "COUNTRY")
public class Country {
public Country() {
super();
// TODO Auto-generated constructor stub
}
public Country(String country, String countryCode) {
super();
this.country = country;
this.countryCode = countryCode;
}
private String country;
@Id
@NotNull
private String countryCode;
@OneToMany(mappedBy = "state", cascade = CascadeType.ALL,fetch = FetchType.LAZY)
private List<State> state = new ArrayList<State>();
public List<State> getState() {
return state;
}
public void setState(List<State> state) {
this.state = state;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public String getCountryCode() {
return countryCode;
}
public void setCountryCode(String countryCode) {
this.countryCode = countryCode;
}
}
Here is State.java
这是State.java
package com.models;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;
@Entity
@Table(name = "STATE")
public class State {
public State() {
super();
}
public State(String state, String statecode) {
super();
this.state = state;
this.statecode = statecode;
}
private String state;
@Id
private String statecode;
@OneToMany
List<City> city = new ArrayList<City>();
@ManyToOne
@JoinColumn(name="countryCode", nullable=false)
private Country country;
public Country getCountry() {
return country;
}
public void setCountry(Country country) {
this.country = country;
}
public List<City> getCity() {
return city;
}
public void setCity(List<City> city) {
this.city = city;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public String getStatecode() {
return statecode;
}
public void setStatecode(String statecode) {
this.statecode = statecode;
}
}
Here is City.java
这是City.java
package com.models;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
@Entity
@Table(name="CITY")
public class City {
public City() {
super();
// TODO Auto-generated constructor stub
}
public City(String city, boolean isStateCapital, boolean isCountryCapital,
String statecode, String countrycode) {
super();
this.city = city;
this.isStateCapital = isStateCapital;
this.isCountryCapital = isCountryCapital;
this.statecode = statecode;
this.countrycode = countrycode;
}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int cityid;
private String city;
private boolean isStateCapital;
private boolean isCountryCapital;
private String statecode;
private String countrycode;
public String getStatecode() {
return statecode;
}
public void setStatecode(String statecode) {
this.statecode = statecode;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public boolean isStateCapital() {
return isStateCapital;
}
public void setStateCapital(boolean isStateCapital) {
this.isStateCapital = isStateCapital;
}
public boolean isCountryCapital() {
return isCountryCapital;
}
public void setCountryCapital(boolean isCountryCapital) {
this.isCountryCapital = isCountryCapital;
}
public String getCountrycode() {
return countrycode;
}
public void setCountrycode(String countrycode) {
this.countrycode = countrycode;
}
}
Here is Application.java
class这是Application.java
。java class
package com.application;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistry;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import com.models.City;
import com.models.Country;
import com.models.State;
public class Application {
public static void main(String[] args) {
SessionFactory sessionFactory = getSessionFactory();
Session session = sessionFactory.openSession();
Transaction t = session.beginTransaction();
Country country = new Country("India","IN");
State state= new State("Delhi","DL");
City city = new City("New Delhi",true,true,"DL","IN");
country.getState().add(state);
state.getCity().add(city);
session.save(country);
session.save(state);
session.save(city);
t.commit();
session.close();
sessionFactory.close();
}
private static SessionFactory getSessionFactory() {
Configuration configuartion = new Configuration().configure();
configuartion.addAnnotatedClass(Country.class);
configuartion.addAnnotatedClass(State.class);
configuartion.addAnnotatedClass(City.class);
// StandardServiceRegistryBuilder registry = new StandardServiceRegistryBuilder();
// registry.applySettings(configuartion.getProperties());
// StandardServiceRegistry serviceRegistry = registry.build();
// SessionFactory sessionFactory = new MetadataSources(serviceRegistry).buildMetadata().buildSessionFactory();
SessionFactory sessionFactory = configuartion.buildSessionFactory();
return sessionFactory;
}
}
hibernate.cfg.xml
file hibernate.cfg.xml
文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password">pwdrd</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/countryinfo</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQL55Dialect</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
</session-factory>
</hibernate-configuration>
I keep running into我不断地遇到
May 23, 2020 2:38:13 PM org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator initiateService
INFO: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
Hibernate: select state_.statecode, state_.countryCode as countryC3_2_, state_.state as state2_2_ from STATE state_ where state_.statecode=?
Exception in thread "main" org.hibernate.PropertyValueException: not-null property references a null or transient value : com.models.State.country
at org.hibernate.engine.internal.Nullability.checkNullability(Nullability.java:111)
at org.hibernate.engine.internal.Nullability.checkNullability(Nullability.java:55)
at org.hibernate.action.internal.AbstractEntityInsertAction.nullifyTransientReferencesIfNotAlready(AbstractEntityInsertAction.java:116)
at org.hibernate.action.internal.AbstractEntityInsertAction.makeEntityManaged(AbstractEntityInsertAction.java:125)
at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:289)
at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:263)
at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:250)
at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:343)
at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:292)
at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:198)
at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:140)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:193)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:178)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:99)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:75)
at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:108)
at org.hibernate.internal.SessionImpl.fireSaveOrUpdate(SessionImpl.java:598)
at org.hibernate.internal.SessionImpl.saveOrUpdate(SessionImpl.java:591)
at org.hibernate.engine.spi.CascadingActions$5.cascade(CascadingActions.java:219)
at org.hibernate.engine.internal.Cascade.cascadeToOne(Cascade.java:492)
at org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java:416)
at org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:218)
at org.hibernate.engine.internal.Cascade.cascadeCollectionElements(Cascade.java:525)
at org.hibernate.engine.internal.Cascade.cascadeCollection(Cascade.java:456)
at org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java:419)
at org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:218)
at org.hibernate.engine.internal.Cascade.cascade(Cascade.java:151)
at org.hibernate.event.internal.AbstractSaveEventListener.cascadeAfterSave(AbstractSaveEventListener.java:464)
at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:298)
at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:198)
at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:140)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:193)
at org.hibernate.event.internal.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:38)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:178)
at org.hibernate.event.internal.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:32)
at org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:75)
at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:108)
at org.hibernate.internal.SessionImpl.fireSave(SessionImpl.java:618)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:611)
at org.hibernate.internal.SessionImpl.save(SessionImpl.java:606)
at com.application.Application.main(Application.java:30)
Though I have nullable checks at Country and State entities, I have cascade and fetch type lazy property set but still its not resolving.虽然我在 Country 和 State 实体有可空检查,但我设置了级联和获取类型惰性属性,但仍然无法解决。 Will deeply appreciate help in this.将深深感谢这方面的帮助。 Thanks.谢谢。 Sid席德
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.