Mr.*_*dar 2 java tomcat hibernate clob ojdbc
我在使用Hibernate 3和ojdbc7.jar的Tomcat 7上的应用程序中有一个非常奇怪的错误:在当前版本中,DB列已更改为CLOB,并按以下方式配置:
@Column(name = "BESCHREIBUNG")
@Length(min = 0, max = 4000)
@NotNull
@Lob
public String getBeschreibung() {
Run Code Online (Sandbox Code Playgroud)
这在我的本地环境(Oracle 11g XE)和测试环境(Oracle 12)中完全正常,但是在prelive环境(Oracle 12)中,我在应用程序启动期间收到以下错误:
org.hibernate.HibernateException: Wrong column type in XXXX.MYTABLE for column BESCHREIBUNG. Found: clob, expected: varchar2(4000 char)
at org.hibernate.mapping.Table.validateColumns(Table.java:283)
at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:1343) at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:139)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:378)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1872)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:906)
Run Code Online (Sandbox Code Playgroud)
有什么暗示吗?我已经检查过tomcat的/ lib - 目录,如果有一个过时的ojdbc或hibernate jar,没有成功.
小智 11
添加列定义以解决此问题.
@Column(name = "entity_value", columnDefinition="clob")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4846 次 |
| 最近记录: |