मैंने वसंत डेटा जेपीए नमूना परियोजना बनाई है। मैंने इसके लिए ग्रहण किया। दो परियोजनाएं हैं, एक डोमेन ऑब्जेक्ट प्रोजेक्ट है जिसमें केवल इकाई वर्गों को एनोटेट किया गया है। अन्य परियोजना वास्तविक वसंत डेटा जेपीए परियोजना है और इसकी परियोजना के लिए निर्भरता है। असल में यह मैवेन निर्भरता के माध्यम से डोमेन प्रोजेक्ट इकाई कक्षाएं प्राप्त करता है।वसंत डेटा जेपीए java.lang.IleglegalArgumentException: एक इकाई नहीं
परियोजना 1: मानव संसाधन विकास मंत्री-डोमेन
इकाई वर्ग:
package com.hrm.ws.data.domain;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.Table;
@Entity(name = "Employee")
@Table(name = "employee")
@Inheritance(strategy = InheritanceType.JOINED)
public class Employee {
protected long id;
protected String firstName;
protected String lastName;
/**
* Gets the value of the id property.
*
*/
@Id
@Column(name = "id", scale = 0)
@GeneratedValue(strategy = GenerationType.AUTO)
public long getId() {
return id;
}
परियोजना 2: मानव संसाधन विकास मंत्री-WS-सेवा
हठ-context.xml
<?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:jpa="http://www.springframework.org/schema/data/jpa"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/data/jpa
http://www.springframework.org/schema/data/jpa/spring-jpa.xsd">
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<jpa:repositories base-package="com.hrm.ws.data.repository" />
<bean id="employeeDao" class="com.hrm.ws.data.repository.EmployeeRepositoryImpl"/>
<bean class="org.springframework.orm.jpa.JpaTransactionManager" id="transactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
<property name="jpaDialect">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaDialect" />
</property>
</bean>
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="generateDdl" value="${jdbc.generateDdl}" />
<property name="showSql" value="${jdbc.showSql}"/>
</bean>
</property>
<property name="persistenceUnitName" value="jpa.sample" />
</bean>
</beans>
तो मेरे पैकेज के लिए सेटअप निम्नानुसार है:
src/मुख्य/जावा -
src/मुख्य/संसाधन शामिल होते हैं वसंत भंडार - आवेदन संदर्भ
src/परीक्षण/जावा शामिल हैं - इकाई परीक्षण
और परियोजना 1 के लिए निर्भरता शामिल (मानव संसाधन विकास मंत्री -domain)
मेरे समस्या है जब मैं इस परियोजना मैं त्रुटि हो रही है के रूप में निम्नानुसार चलाएँ:
... 38 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'employeeRepository': FactoryBean threw exception on object creation; nested exception is java.lang.IllegalArgumentException: Not an entity: class com.hrm.ws.data.domain.Employee
at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:149)
at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:102)
at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1429)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:844)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:786)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:703)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:474)
... 40 more
**Caused by: java.lang.IllegalArgumentException: Not an entity: class** com.hrm.ws.data.domain.Employee
at org.hibernate.ejb.metamodel.MetamodelImpl.entity(MetamodelImpl.java:160)
at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.<init>(JpaMetamodelEntityInformation.java:52)
at org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getMetadata(JpaEntityInformationSupport.java:61)
at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:145)
at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:83)
at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:66)
at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:146)
at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.getObject(RepositoryFactoryBeanSupport.java:120)
at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.getObject(RepositoryFactoryBeanSupport.java:39)
at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:142)
... 48 more
मैं इस मुद्दे के बारे में सोच रहा हूं, क्योंकि जब मैं अपने वसंत प्रोजेक्ट में डोमेन ऑब्जेक्ट (कर्मचारी.जावा) डालता हूं तो यह स्वयं अलग जार है, यह ठीक काम करता है। यह मुद्दा केवल एक अलग जार के रूप में देता है। अगर किसी के पास परिदृश्य के बारे में अनुभव है तो कृपया मुझे मदद दें।
यह नमूना से अदृश्य है, लेकिन क्या कर्मचारी के पास एक निर्माता है? – Dewfy
कृपया, 'persistence.xml' की सामग्री प्रदान करें। दृढ़ता इकाई नाम 'jpa.sample', बीन इकाई प्रबंधक गैलरी में, क्या यह सही है? – elias
मुझे भी वही समस्या है, क्या आप यह समझ सकते हैं कि समस्या क्या थी? मेरी परियोजना में एक अलग मैवेन जेपीए-फेस परियोजना (जिसे मेवेन वसंत आधारित परियोजना से संदर्भित किया गया है) में एनोटेटेड कक्षाएं हैं – higuaro