2016-07-19 3 views
0

Ich habe eine einfache App, die eine Verbindung zur MySQL-Datenbank herstellt und alle Datensätze aus der angegebenen Tabelle abruft. Alles funktioniert gut, wenn ich eine einfache DAO-Klasse verwende, die dann in die Service-Klasse injiziert wird. Aber ich wollte es durch eine Schnittstelle ersetzen, die CrudRepository erweitert. Zu tun, dass ich diese Schnittstelle erstellt:Wie kann man von der Basis-DAO zur Repository-Schnittstelle mit Spring und Hibernate wechseln?

@Repository 
public interface UserRepository extends CrudRepository<User, Long> 
{ 
    User save(User user); 

    List<User> save(Iterable<? extends User> iterable); 

    User findOne(Long aLong); 

    boolean exists(Long aLong); 

    List<User> findAll(); 

    long count(); 

    void delete(Long aLong); 

    void delete(User user); 

    void delete(Iterable<? extends User> iterable); 

    void deleteAll(); 
} 

Ich habe auch meine Context-Datei:

<?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:context="http://www.springframework.org/schema/context" 
     xmlns:tx="http://www.springframework.org/schema/tx" 
     xmlns:p="http://www.springframework.org/schema/p" 
     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/context http://www.springframework.org/schema/context/spring-context-4.1.xsd 
     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.1.xsd 
     http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.0.xsd"> 

    <bean id="persistenceExceptionTranslationPostProcessor" 
      class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/> 

    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" 
      p:location="classpath:database.properties"> 
    </bean> 

    <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> 

    <bean id="sessionFactory" 
      class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
     <property name="dataSource" ref="dataSource" /> 
     <property name="packagesToScan" value="com.jnowacki.*" /> 
     <property name="hibernateProperties"> 
      <props> 
       <prop key="hibernate.dialect">${hibernate.dialect}</prop> 
      </props> 
     </property> 
    </bean> 

    <bean id="transactionManager" 
      class="org.springframework.orm.hibernate4.HibernateTransactionManager"> 
     <property name="sessionFactory" ref="sessionFactory" /> 
     <property name="dataSource" ref="dataSource"/> 
    </bean> 
    <tx:annotation-driven/> 

    <jpa:repositories base-package="com.jnowacki.dictApp.repository"/> 
    <context:component-scan base-package="com.jnowacki.dictApp.service"/> 
    <context:annotation-config/> 

</beans> 

Schnittstelle wird in Service-Klasse mit @Autowired injiziert. Nach dem Versuch, dies auszuführen, bekomme ich Fehler: Fehler beim Laden von ApplicationContext Es scheint, dass etwas mit meinen XML-Namespaces oder etwas falsch ist, aber es scheint nach allen Beispielen, die ich online gefunden habe. Es gibt volle Stack-Trace:

/opt/java/jdk1.7.0_80/bin/java -ea -Didea.launcher.port=7537 -Didea.launcher.bin.path=/opt/Intellij/idea-IU-143.1184.17/bin -Didea.junit.sm_runner -Dfile.encoding=UTF-8 -classpath /opt/Intellij/idea-IU-143.1184.17/lib/idea_rt.jar:/opt/Intellij/idea-IU-143.1184.17/plugins/junit/lib/junit-rt.jar:/opt/java/jdk1.7.0_80/jre/lib/charsets.jar:/opt/java/jdk1.7.0_80/jre/lib/deploy.jar:/opt/java/jdk1.7.0_80/jre/lib/ext/dnsns.jar:/opt/java/jdk1.7.0_80/jre/lib/ext/localedata.jar:/opt/java/jdk1.7.0_80/jre/lib/ext/sunec.jar:/opt/java/jdk1.7.0_80/jre/lib/ext/sunjce_provider.jar:/opt/java/jdk1.7.0_80/jre/lib/ext/sunpkcs11.jar:/opt/java/jdk1.7.0_80/jre/lib/ext/zipfs.jar:/opt/java/jdk1.7.0_80/jre/lib/javaws.jar:/opt/java/jdk1.7.0_80/jre/lib/jce.jar:/opt/java/jdk1.7.0_80/jre/lib/jfr.jar:/opt/java/jdk1.7.0_80/jre/lib/jfxrt.jar:/opt/java/jdk1.7.0_80/jre/lib/jsse.jar:/opt/java/jdk1.7.0_80/jre/lib/management-agent.jar:/opt/java/jdk1.7.0_80/jre/lib/plugin.jar:/opt/java/jdk1.7.0_80/jre/lib/resources.jar:/opt/java/jdk1.7.0_80/jre/lib/rt.jar:/home/jnowacki/dict_app/target/test-classes:/home/jnowacki/dict_app/target/classes:/opt/apache-tomcat-7.0.69/lib/servlet-api.jar:/opt/apache-tomcat-7.0.69/lib/jsp-api.jar:/home/jnowacki/dict_app/lib/spring-aspects-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-context-support-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-beans-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-aop-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-context-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-instrument-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-instrument-tomcat-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-jms-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-expression-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-messaging-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-jdbc-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-oxm-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-orm-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-tx-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/aopalliance-1.0.jar:/home/jnowacki/dict_app/lib/commons-logging-1.2.jar:/home/jnowacki/dict_app/lib/spring-core-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-test-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-ws.jar:/home/jnowacki/dict_app/lib/spring-security-acl-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-aspects-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-cas-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-config-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-ldap-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-core-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-remoting-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-crypto-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-taglibs-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-web-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-security-openid-3.2.5.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-webmvc-portlet-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-websocket-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-web-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-webmvc-4.3.1.RELEASE.jar:/home/jnowacki/dict_app/lib/spring-data-commons-core-1.1.0.jar:/home/jnowacki/dict_app/lib/spring-data-jpa-1.3.3.jar:/home/jnowacki/dict_app/lib/hibernate-jpa-2.0-api-1.0.1.Final.jar:/home/jnowacki/dict_app/lib/hibernate-commons-annotations-4.0.2.Final.jar:/home/jnowacki/dict_app/lib/antlr-2.7.7.jar:/home/jnowacki/dict_app/lib/jboss-logging-3.1.0.GA.jar:/home/jnowacki/dict_app/lib/jboss-transaction-api_1.1_spec-1.0.1.Final.jar:/home/jnowacki/dict_app/lib/javassist-3.15.0-GA.jar:/home/jnowacki/dict_app/lib/dom4j-1.6.1.jar:/home/jnowacki/dict_app/lib/hibernate-core-4.2.2.Final.jar:/home/jnowacki/.m2/repository/mysql/mysql-connector-java/5.1.39/mysql-connector-java-5.1.39.jar:/home/jnowacki/.m2/repository/junit/junit/4.12/junit-4.12.jar:/home/jnowacki/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar com.intellij.rt.execution.application.AppMain com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 com.jnowacki.dictApp.repository.UserRepositoryTest 
Jul 19, 2016 4:32:54 PM org.springframework.test.context.support.DefaultTestContextBootstrapper getDefaultTestExecutionListenerClassNames 
INFO: Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener] 
Jul 19, 2016 4:32:54 PM org.springframework.test.context.support.DefaultTestContextBootstrapper getTestExecutionListeners 
INFO: Using TestExecutionListeners: [or[email protected]6155b814, org.springframework.test[email protected]42a85af8, org.springframewor[email protected]3aec71f8, org.springfra[email protected]792e6f00, org.springframew[email protected]5779a727, org.sp[email protected]73cd1e4e] 
Jul 19, 2016 4:32:54 PM org.springframework.test.context.TestContextManager prepareTestInstance 
SEVERE: Caught exception while allowing TestExecutionListener [org.springframewor[email protected]3aec71f8] to prepare test instance [[email protected]] 
java.lang.IllegalStateException: Failed to load ApplicationContext 
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124) 
    at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83) 
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117) 
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83) 
    at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287) 
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94) 
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) 
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) 
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) 
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) 
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) 
    at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) 
    at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191) 
    at org.junit.runner.JUnitCore.run(JUnitCore.java:137) 
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69) 
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:234) 
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:74) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) 
Caused by: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 36 in XML document from class path resource [applicationContext.xml] is invalid; nested exception is org.xml.sax.SAXParseException; systemId: http://www.springframework.org/schema/data/jpa/spring-jpa.xsd; lineNumber: 36; columnNumber: 63; src-resolve: Cannot resolve the name 'repository:auditing-attributes' to a(n) 'attribute group' component. 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:399) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:252) 
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadBeanDefinitions(AbstractGenericContextLoader.java:257) 
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:124) 
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60) 
    at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:108) 
    at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:251) 
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98) 
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116) 
    ... 28 more 
Caused by: org.xml.sax.SAXParseException; systemId: http://www.springframework.org/schema/data/jpa/spring-jpa.xsd; lineNumber: 36; columnNumber: 63; src-resolve: Cannot resolve the name 'repository:auditing-attributes' to a(n) 'attribute group' component. 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198) 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:437) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:4162) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:4145) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getGlobalDecl(XSDHandler.java:1741) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDAttributeGroupTraverser.traverseLocal(XSDAttributeGroupTraverser.java:80) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDAbstractTraverser.traverseAttrsAndAttrGrps(XSDAbstractTraverser.java:643) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDComplexTypeTraverser.processComplexContent(XSDComplexTypeTraverser.java:1122) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDComplexTypeTraverser.traverseComplexTypeDecl(XSDComplexTypeTraverser.java:335) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDComplexTypeTraverser.traverseLocal(XSDComplexTypeTraverser.java:164) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDElementTraverser.traverseNamedElement(XSDElementTraverser.java:392) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDElementTraverser.traverseGlobal(XSDElementTraverser.java:242) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.traverseSchemas(XSDHandler.java:1433) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:630) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:617) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.findSchemaGrammar(XMLSchemaValidator.java:2453) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1772) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.emptyElement(XMLSchemaValidator.java:766) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:356) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2786) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) 
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:243) 
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:347) 
    at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadDocument(XmlBeanDefinitionReader.java:429) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391) 
    ... 41 more 


java.lang.IllegalStateException: Failed to load ApplicationContext 

    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124) 
    at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:83) 
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117) 
    at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83) 
    at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:230) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:228) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:287) 
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:289) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:247) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94) 
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) 
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) 
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) 
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) 
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) 
    at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) 
    at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363) 
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191) 
    at org.junit.runner.JUnitCore.run(JUnitCore.java:137) 
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69) 
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:234) 
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:74) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) 
Caused by: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 36 in XML document from class path resource [applicationContext.xml] is invalid; nested exception is org.xml.sax.SAXParseException; systemId: http://www.springframework.org/schema/data/jpa/spring-jpa.xsd; lineNumber: 36; columnNumber: 63; src-resolve: Cannot resolve the name 'repository:auditing-attributes' to a(n) 'attribute group' component. 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:399) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:252) 
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadBeanDefinitions(AbstractGenericContextLoader.java:257) 
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:124) 
    at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60) 
    at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:108) 
    at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:251) 
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:98) 
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:116) 
    ... 28 more 
Caused by: org.xml.sax.SAXParseException; systemId: http://www.springframework.org/schema/data/jpa/spring-jpa.xsd; lineNumber: 36; columnNumber: 63; src-resolve: Cannot resolve the name 'repository:auditing-attributes' to a(n) 'attribute group' component. 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198) 
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134) 
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:437) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:4162) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:4145) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getGlobalDecl(XSDHandler.java:1741) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDAttributeGroupTraverser.traverseLocal(XSDAttributeGroupTraverser.java:80) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDAbstractTraverser.traverseAttrsAndAttrGrps(XSDAbstractTraverser.java:643) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDComplexTypeTraverser.processComplexContent(XSDComplexTypeTraverser.java:1122) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDComplexTypeTraverser.traverseComplexTypeDecl(XSDComplexTypeTraverser.java:335) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDComplexTypeTraverser.traverseLocal(XSDComplexTypeTraverser.java:164) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDElementTraverser.traverseNamedElement(XSDElementTraverser.java:392) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDElementTraverser.traverseGlobal(XSDElementTraverser.java:242) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.traverseSchemas(XSDHandler.java:1433) 
    at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:630) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:617) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.findSchemaGrammar(XMLSchemaValidator.java:2453) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1772) 
    at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.emptyElement(XMLSchemaValidator.java:766) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:356) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2786) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) 
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117) 
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) 
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) 
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) 
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:243) 
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:347) 
    at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadDocument(XmlBeanDefinitionReader.java:429) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391) 
    ... 41 more 

Jul 19, 2016 4:32:54 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions 
INFO: Loading XML bean definitions from class path resource [applicationContext.xml] 

Process finished with exit code 255 

Ich habe versucht, dies für ein paar Stunden zu überwinden, wird sehr dankbar sein für Ihre Hilfe.

Antwort

1

Ihr direktes Problem ist ein Abhängigkeitskonflikt - Ihre Versionen von Spring und Spring Data stimmen nicht richtig überein, Sie sollten Spring's BOM verwenden, um sicherzustellen, dass Ihre Versionen miteinander kompatibel sind.

Fügen Sie diese auf Ihre POM-Datei (Ich vermute, Sie verwenden Maven):

<dependencyManagement> 
    <dependencies> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-framework-bom</artifactId> 
      <version>__appropriate Spring version__</version> 
      <type>pom</type> 
      <scope>import</scope> 
     </dependency> 
    </dependencies> 
</dependencyManagement> 

Allerdings werden Sie auch die richtigen XSDs in Ihrer context.xml Datei, mein Vorschlag verwenden müssen wäre es, die Versionen von XSD-Links zu entfernen (Benutzer spring-jpa.xsd anstelle von spring-jpa-1.0.xsd).

Ein weiteres Problem, das Sie wahrscheinlich erleben werden, sobald Sie dieses Problem lösen, ist - fehlende JPA-Konfiguration. Spring Data kann mit Hibernate arbeiten, ja, aber nur mit JPA, und Sie verwenden rohe Hibernate-Unterstützung.

Weitere Informationen zum Einrichten von Spring Data JPA finden Sie unter this Spring Data JPA tutorial.

+0

Vielen Dank für die schnelle Antwort. Bis zu diesem Zeitpunkt importierte ich notwendige Bibliotheken mit Intellij (mit Hiberante und Spring-Integration). Nach Ihrer Antwort habe ich bemerkt, dass sie wirklich alt sind. Ich werde sie löschen und Abhängigkeiten in pom.xml hinzufügen. Ich werde mit JPA im Frühling und Hiberante wenig verwirrt und ich muss ein wenig mehr über das Thema lesen. Ich habe mich verirrt, was benutzt was :) Wie auch immer, danke für einen Hinweis! – KrwawyKefir

+0

Ich denke, du meinst etwas wie es hier erklärt wird: http://docs.spring.io/spring/docs/current/spring-framework-reference/html/orm.html wenn Sie über jpa Konfiguration sprechen? – KrwawyKefir

+0

Nein, ich denke, dass die Spring Data-Referenz, die ich geteilt habe, relevanter war, da Sie versuchen, mit Spring Data JPA zu arbeiten; Sie müssten es selbst ausprobieren (ich bin AFK im Moment), aber ich denke, das einzige, was Sie ändern müssen, ist das Ersetzen der SessionFactory-Bean durch eine entsprechende EntityManagerFactory und HibernateTransactionManager durch einen JpaTransactionManager –

Verwandte Themen