首页 文章

JBoss 5.1:使用JPA进行Hibernate

提问于
浏览
6

关于JBoss 5.1,我有两个问题要问 . 我们正在从JBoss 4.2迁移到JBoss 5.1 .

我们还使用Java 1.6和JPA 2.0以及Hibernate 3.6作为提供程序 .

我的问题是:

  • 是否可以在JBoss 5.1中使用Hibernate 3.6 . 如果是,那怎么样?

  • JPA 2.0怎么样?我知道JBoss 5.1兼容JPA 1.0 . 我们可以使用JPA2吗?

由于我们无法对JBoss安装进行任何配置,因此所有修复工作只需在我们的应用程序中完成 .

在此先感谢JassB

3 回答

  • 3

    做这个:

    1)将jboss-classloading.xml添加到/ src / main / webapp(我正在使用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 / server / $ PROFILE / conf / bootstrap / deployers.xml,并在最后添加以下内容:

    <bean name =“IgnoreFilesDeployer”

    类= “org.jboss.deployers.vfs.spi.deployer.AbstractIgnoreFilesDeployer”

    </ beans >

    3)在META-INF文件夹中创建一个文件JBOSS-IGNORE.TXT,其中包含以下内容:

    WEB-INF / classes / META-INF / persistence.xml

    4)我已将我的persistence.xml重命名为spring-persistence.xml,并将此文件添加到context.xml中:

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

    5)我还修改了spring-persistence.xml(在webapp \ META-INF文件夹中保存了persistence_2_0.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>
    
  • 2

    我今天遇到了同样的问题,在尝试了许多替代方案并且到处询问之后,答案是否定的

    您不能将JPA 2.0与Jboss 5.1一起使用(如果您无法更改服务器的配置,则更多)

    但我已经看到hibernate3.X正在使用Jboss5.1,但从未使用过注释功能:只有旧的XML配置方式 .

    现在,在我看来,你有两个解决方案:要么进行服务器升级,要么用旧时尚改变数据访问系统 .

  • 0

    我有同样的问题,这个链接救了我的命...

    https://community.jboss.org/wiki/classloadingconfiguration

    我建议看“使用重写服务器类进行隔离”

相关问题