Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
对SQLServer使用JBoss 6.1中的Hibernate 4.1.8时出错_Hibernate_Jpa 2.0_Jboss6.x - Fatal编程技术网

对SQLServer使用JBoss 6.1中的Hibernate 4.1.8时出错

对SQLServer使用JBoss 6.1中的Hibernate 4.1.8时出错,hibernate,jpa-2.0,jboss6.x,Hibernate,Jpa 2.0,Jboss6.x,结果,我在Hibernate 3.6.x中发现了一个bug,该bug在4.1.8中得到了解决。我已经“升级”了JBoss6.1,从common/lib中删除了hibernate库,并替换为新库 更具体地说,我确实删除了: hibernate-commons-annotations.jar(替换为hibernate-commons-annotations-4.0.1.Final.jar) hibernate-core.jar(替换为hibernate-core-4.1.8.Final.jar)

结果,我在Hibernate 3.6.x中发现了一个bug,该bug在4.1.8中得到了解决。我已经“升级”了JBoss6.1,从common/lib中删除了hibernate库,并替换为新库

更具体地说,我确实删除了:

  • hibernate-commons-annotations.jar(替换为hibernate-commons-annotations-4.0.1.Final.jar)

  • hibernate-core.jar(替换为hibernate-core-4.1.8.Final.jar)

  • hibernate-entitymanager.jar(替换为hibernate-entitymanager-4.1.8.Final.jar)

  • hibernate-jpa-2.0-api.jar(替换为hibernate-jpa-2.0-api-1.0.1.Final.jar)

我确实保留了
hibernate validator.jar
hibernate validator legacy.jar
,因为我没有找到可能的替代品

现在,服务器毫无怨言地启动,但当它尝试映射具有
布尔属性的实体时,它正在尝试在SQLServer2008中创建
布尔属性
字段(它使用类型
),导致这些表未被创建。但是,没有
boolean
属性的表确实可以正常工作

我做错了什么?我的
persistence.xml
在升级之前运行良好,但它没有被更改,而且我也没有找到新的SQLServer方言的引用,因此我假设我的升级过程是拙劣的,我遗漏了一些东西。有什么建议吗

为了记录在案,我在Hibernate和SQLServerExpress 2008之上使用JBoss6.1、JPA2.0


提前感谢。

在布尔字段的注释中,尝试指定
列定义

@Column(name="IS_APPROVED", columnDefinition="bit")
private boolean isApproved;

好的,这已经成功了,谢谢(到目前为止,我只能测试表的创建过程)。无论如何,我认为这是一个解决办法;由于此解决方案在代码中将我的应用程序绑定到SQLServer,因此我失去了JPA的一些优势。在接受这个答案之前,我会等待一个更“标准”的答案(如果有的话)。@Sjuan76也许你会得到一个更好的答案,但知道有解决方案总是很好的。祝你好运!我想我会尝试迁移到JBoss7.1