0
스프링 데이터를 내 osgi karaf 번들에 사용하고 싶습니다. 따라서 jpa 저장소를 osgi 서비스로 등록하고 다른 번들에 사용해야합니다.OSGi 스프링 데이터 JPA가 작동하지 않습니다.
그것은
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:osgi="http://www.springframework.org/schema/osgi"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/data/jpa
http://www.springframework.org/schema/data/jpa/spring-jpa-1.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/osgi
http://www.springframework.org/schema/osgi/spring-osgi-1.2.xsd">
<context:annotation-config/>
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<constructor-arg ref="entityManagerFactory"/>
</bean>
<osgi:reference id="entityManagerFactory" interface="javax.persistence.EntityManagerFactory"/>
<tx:annotation-driven/>
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaDialect"/>
<jpa:repositories base-package="org.redhat.support.repository"/>
<osgi:service interface="org.redhat.support.repository.TestingRepository" ref="testingRepository"/>
</beans>
퓨즈 예외 메시지는이
12:05:07,920 | ERROR | xtenderThread-19 | ContextLoaderListener | 210 - org.springframework.osgi.extender - 1.2.1 | Application context refresh failed (OsgiBundleXmlApplicationContext(bundle=business-service, config=osgibundle:/META-INF/spring/*.xml))
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/data/jpa]
Offending resource: URL [bundle://500.0:0/META-INF/spring/spring.xml]
at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:80)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.error(BeanDefinitionParserDelegate.java:315)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1429)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1422)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:187)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:147)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:101)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:495)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391)[203:org.apache.servicemix.bundles.spring-beans:3.2.16.RELEASE_1]
어떻게이 문제를 해결하기 위해, 내 구성입니다? 어떤 제안. 사전 감사.
예, 저는 karaf 컨테이너에 스프링 데이터 번들을 설치했습니다. 여전히 같은 오류가 나타납니다. 만약 스프링 데이터가 지원되지 않는다면, 어떻게 osgi에서 스프링 데이터 메소드를 구현할 수 있을까요? ... 그래서 우리는 청사진 openJpa 메소드를 사용할 수 있습니까? – Sridhar
복잡한 쿼리를 작성하는 것을 극복하고자합니다. 그 이유는 스프링 데이터 방식을 선택했기 때문입니다. 또한 한 가지 더 내 karaf entityManager.merge 메서드는 매우 느립니다. 당신은 왜 느린지 plz 제안 할 수 있습니까? – Sridhar