Исключение Недопустимый аргумент - неизвестная сущность JPA - Дополнительный пакет для сканирования сущностей в application-context.xml не учитывается - PullRequest
0 голосов
/ 29 октября 2019

Я работаю над приложением Spring, для которого настроен модуль персистентности в application-context.xml. Мне нужно добавить дополнительный пакет, чтобы использовать новые объекты. Даже если эта часть файла persistence.xml выглядит следующим образом, мои сущности из дополнительного пакета не видны приложением, и я получаю исключение, сообщающее, что сущность неизвестна.

<bean id="transactionManager_students" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="entityManagerFactoryStudents" />
        <qualifier value="clientTransaction" />
    </bean>

    <bean id="entityManagerFactoryStudents"
        class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="datasource_College" />
        <property name="jpaVendorAdapter" ref="hibernateJpaVendorAdapter" />
        <property name="packagesToScan">
            <list>
                <value>com.load.model</value>
                <value>com.students.entity</value>
            </list>
        </property>
        <property name="persistenceUnitName" value="unit_stud" />
        <property name="jpaProperties">
            <props>
                <prop key="hibernate.generate_statistics">true</prop>
                <prop key="hibernate.cache.use_query_cache">false</prop>
                <prop key="hibernate.cache.use_second_level_cache">false</prop>
                <prop key="hibernate.hbm2ddl.auto">none</prop>
                <prop key="hibernate.show_sql">false</prop>
            </props>
        </property>
    </bean>  

У меня также естьупомянуть, что я аннотировал сущности с помощью @Entity и в классе, где я работаю над сущностями, у меня есть это (строка с em.persist (student) дает мне ошибку)


@PersistenceContext(unitName = "unit_stud")
public EntityManager em;

public Student student;

@Transactional(value = "clientTransaction", propagation = Propagation.REQUIRED)
public long persistStudentObject() {

            long studentId = 0;

            try
            {
                logger.debug("Start Persisting...");
                em.persist(student);
                // unique ID
                studentId = student.getId();
                logger.debug("Persisting OK...");
            }
            catch (PersistenceException persistenceException)
            {
                logger.error("PersistenceException occur", persistenceException);
            }

            }
            return studentId ;
    }

лицо:

package com.students.entity;

@Entity
@Table(name = "STUDENTS", schema = "DEMO", catalog = "")
public class Student{
    private long id;
    private String firstname;
    private String name;
    private String streetnumber;
    private String zipcodecity;

Кто-нибудь может мне помочь? Я не знаю, что делать, чтобы сделать мои сущности видимыми.

...