2012-04-13 45 views
6

我有两个关于JBoss 5.1的问题。我们正在从JBoss 4.2迁移到JBoss 5.1。JBoss 5.1:使用JPA进行休眠

我们也使用Java 1.6和JPA 2.0与Hibernate 3.6作为提供者。

我的问题是:

  1. 是否有可能使用Hibernate 3.6或更高版本与JBoss 5.1。如果是,那么如何?
  2. JPA 2.0呢?我知道JBoss 5.1具有JPA 1.0兼容性。我们可以使用JPA2吗?

而且由于我们无法对JBoss安装进行任何类型的配置,因此所有修复都需要在我们的应用程序中完成。

由于提前, JassB

回答

2

这样做:

1)的jboss-classloading.xml添加到/ src目录/主/ web应用(我使用Maven):

内容:

<?xml version="1.0" encoding="UTF-8"?> 

<classloading xmlns="urn:jboss:classloading:1.0" 

     domain="$UNIQUE_DOMAIN_NAME" 

     export-all="NON_EMPTY" 

     import-all="false" 

     parent-first="false"> 

</classloading> 

2)修改$ JBOSS_INSTALL_DIRECTORY /的jboss-AS /服务器/ $ PROFILE/conf目录/引导/ deployers.xml,并在结尾处加上以下内容:

<bean name="IgnoreFilesDeployer" 

class="org.jboss.deployers.vfs.spi.deployer.AbstractIgnoreFilesDeployer" 



</bean> 

3)用下面的内容创建在META-INF文件夹中的文件JBOSS-IGNORE.TXT:

WEB-INF /类/ META-INF/persistence.xml中

4)我已经改名为我的persistence.xml到弹簧的persistence.xml,并在context.xml中添加文件为:

<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> 
     <property name="persistenceXmlLocation" value="classpath:/META-INF/spring-persistence.xml"/> 
      .... 
</bean> 

5)我;我也修改了spring-persistence.xml(保存persistence_2_0。在Web应用程序\ META-INF文件夹XSD)作为

<persistence version="2.0" 
xmlns="http://java.sun.com/xml/ns/persistence" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="file:///persistence_2_0.xsd 
     http://java.sun.com/xml/ns/persistence"> 
.... 
</persistence> 
+0

在此之后,我得到了关于rg.jboss.webbeans.integration.deployer.env.WebBeansBootstrapDeployer的ClassNotFoundException,这很奇怪,因为它是jBoss 5.1中包含的类。 – 2015-09-07 11:11:28

3

我今天刚刚得到了同样的问题,并试图许多替代和询问无处不后,答案是否定的

不能使用JPA 2.0与JBoss 5.1(更如果你不能改变服务器的配置)

但我已经看到hibernate3.X工作在Jboss5.1,但从来没有注释功能:只有旧的XML配置方式。

现在,以我的观点来看,你有两种解决方案:要么升级服务器,要么改变旧数据系统。

+1

谢谢,我使用JPA 2.0与JBoss 5.1一起工作 – JazB 2012-04-25 08:25:48

+0

有人能够弄清楚如何真正集成JPA 2.0还是这个答案不正确? – 2015-05-18 20:50:22

+0

在我的情况下,服务器自那时起在生产中升级:没有更多的问题! – antoine 2015-05-19 07:07:58