2013-06-15 12 views
6
<?xml version="1.0" encoding="UTF-8"?> 
    <beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" 
     xmlns:context="http://www.springframework.org/schema/context" 
     xmlns:jee="http://www.springframework.org/schema/jee" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans 
      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
      http://www.springframework.org/schema/util 
      http://www.springframework.org/schema/util/spring-util-3.0.xsd 
      http://www.springframework.org/schema/context 
      http://www.springframework.org/schema/context/spring-context.xsd 
      http://www.springframework.org/schema/jee 
      http://www.springframework.org/schema/jee/spring-jee-3.0.xsd"> 

     <util:properties id="hibernateProperties" location="classpath:hibernate.properties" /> 

     <bean id="usermanagementSessionFactory" 
      class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
      <property name="dataSource" ref="usermanagementDataSource" /> 
      <property name="configLocation" value="classpath:hibernate.cfg.xml" /> 
      <property name="configurationClass" value="org.hibernate.cfg.AnnotationConfiguration" /> 
      <property name="hibernateProperties" ref="hibernateProperties" /> 
     </bean> 

     <jee:jndi-lookup id="usermanagementDataSource" jndi-name="java:jboss/datasources/usermanagementDS" /> 

     <bean id="atomikosTransactionManager" class="com.atomikos.icatch.jta.UserTransactionManager" 
      init-method="init" destroy-method="close"> 
      <property name="forceShutdown" value="false" /> 
      <property name ="startupTransactionService" value="true"/> 
     </bean> 

     <bean id="atomikosUserTransaction" class="com.atomikos.icatch.jta.UserTransactionImp"> 
      <property name="transactionTimeout" value="30" /> 
     </bean> 

     <bean id="transactionManager" 
      class="org.springframework.transaction.jta.JtaTransactionManager"> 
      <property name="transactionManager" ref="atomikosTransactionManager" /> 
      <property name="userTransaction" ref="atomikosUserTransaction" /> 
     </bean> 

     <bean id="User" class="com.ecom.data.access.model.User"/> 
     <bean id="myFactory" class="com.ecom.data.access.dao.MyFactory"/> 

    </beans> 

Tôi đang sử dụng hibernate 4 spring 3 maven 3, tôi có tệp configuratiobn này và ở đây tôi đang sử dụng nhà máy phiên cục bộ và biên dịch chính xác nhưng nó cung cấp lỗi khi tôi đang sử dụng JBoss máy chủ để triển khai nó sau đó giao diện điều khiển máy chủ cung cấp cho các lỗi 'configurationClass' không phải là ghi hoặc có một phương pháp setter không hợp lệ. Liệu kiểu tham số của bộ setter có khớp với kiểu trả về của getter không? hãy giúp tôi phân loại vấn đề nàythuộc tính 'configurationClass' không thể ghi hoặc có phương thức setter không hợp lệ. Loại tham số của bộ chuyển đổi

+0

Phiên bản JBoss nào bạn có? –

+0

@ Pavel Horal Tôi đang sử dụng jBoss7 vui lòng đề xuất cho tôi bất kỳ giải pháp nào cho điều này –

Trả lời

13

Định nghĩa bean của bạn cho thấy rằng bạn đang cố định cấu hình Hibernate 3, chứ không phải Hibernate 4. Bạn có thể đã làm theo ví dụ hoặc hướng dẫn không chính xác. Trong Hibernate 4 không có tài sản configurationClass. Chỉ cần xóa nó:

<bean id="usermanagementSessionFactory" 
    class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
    <property name="dataSource" ref="usermanagementDataSource" /> 
    <property name="configLocation" value="classpath:hibernate.cfg.xml" /> 
    <property name="hibernateProperties" ref="hibernateProperties" /> 
</bean> 

Với Hibernate 4, bạn cũng không cần cung cấp XML cấu hình. Tất cả những gì bạn có thể làm là chỉ định các gói cần quét cho @Entity lớp học:

<property name="packagesToScan" value="com.ecom.data.access.model" /> 
Các vấn đề liên quan