سؤال

أنا أستخدم السبات للاتصال بالبرنامج postgresql من حاوية karaf 2.3.4، عندما نشرت حزمة بلدي هناك استثناء قول javax.naming.namenotfoundexception osgi: service / javax.sql.datasource / "(osgi.jndi .service.name= jdbc / pootgrosds).

هنا هو ملف Prisistance.xml الخاص بي

giveacodicetagpre.

هنا هو ملف BluePrint.xml:

giveacodicetagpre.

وهنا هو ملف DataSource-Postgres.xml الخاص بي

giveacodicetagpre.

وهنا هي ميزاتي. xml:

giveacodicetagpre.

StackTrace الكامل هو:

javax.naming.namenotfoundexception: osgi: service / javax.sql.datasource / "(osgi.jndi.service.name= jdbc / pootgresds) org.apache.aries.aries.jndi.url.serviceregistregistexcontext.lookup (Serviceregistrycontext.java:113) [72: Org.apache.aries.jndi.url: 1.0.0 org.apache.aries.aries.jndi.url.serviceregistrycistexcontext.lookup (serviceregistrycontext.java:144) [72: org.apache.aries.jndi.url: 1.0.0] في org.apache.aries.aries.jndi.delegatecontext.lookup (Applatecontext.java:161) [70: Org.apache.aries.jndi.core: 1.0.0 في javax.naming.initialcontext.lookup (InitialContext.java:411) [: 1.7.0_51] org.apache.aries.jpa.container.unit.impl.jndatasource.getds (Jndidatasource.java:65) [67: Org.apache.aries.jpa.container: 1.0.0 في org.apache.aries.aries.jpa.container.unit.impl.delayedlookupdatasource.getConnection (delayedlookupdatasource.java:36) [67: org.apache.aries.jpa.container: 1.0.0 org.hibernate.ejb.connection.injecteddatasourcenectionprovider.getConnection (حقن datasourcenectionProvider.java: 70) [91: org.hibernate.entitymanager: 4.2.2.final] في org.hibernate.engine.jdbc.internal.jdbcservicesimpl $ connectionproviderjdbcconnectionaccess.obtainconnection (jdbcservicesimpl.java:242) [90: org.hibernate.core: 4.2.2.final] في org.hibernate.engine.jdbc.internal.jdbcservicesimpl.configure (jdbcservicesimpl.java:117) [90: org.hibernate.core: 4.2.2.final] org.hibernate.service.internal.standarderviceregilempl.configureservice (Patteryerviceregisterimpl.java: 75) [90: org.hibernate.core: 4.2.2.final] org.hibernate.service.internal.abstractserviceregiceregicrismpl.initializeservice (مجردةفنجييريجيتيريمبل. Java:159) [90: org.hibernate.core: 4.2.2.final] في org.hibernate.service.internal.abstractserviceregiceregicerimprimpl.getservice (مجردةفيكريغيتيريمبليمل.java:131) [90: org.hibernate.core: 4.2.2.final] في org.hibernate.cfg.configurations.buildtyperegistrations (التكوين .java:1797) [90: org.hibernate.core: 4.2.2.final] في org.hibernate.cfg.configuration.buildsession (التكوين .java:1755) [90: org.hibernate.core: 4.2.2.final] في org.hibernate.ejb.entitymanagerfactoryimplimpl.java:96) [91: org.hibernate.entitymanager: 4.2.2.final] في org.hibernate.ejb.ejb3configuration.buildentitymanagleatory (ejb3configuration.java:914) [91: org.hibernate.entitymanager: 4.2.2.final] في org.hibernate.osgi.osgipersistenceprovider.createcontainerentitymanaglematory (Osgipersistenceprovider.java:99) [96: org.hibernate.osgi: 4.2.2.final] org.apache.aries.aries.jpa.container.impl.entitymanagerfactoryager.createentitymangeractors (Entitymanagerfactorymanager.java:329) [67: org.apache.aries.jpa.container: 1.0.0 org.apache.aries.aries.jpa.container.impl.entitymanagerfactormanager.regimententitymanageractors (Entitymanagerfactorymanager.java:242) [67: Org.apache.aries.jpa.container: 1.0.0 org.apache.aries.aries.jpa.container.impl.entitymanagerfactorymanager.bundlestatechange (Entitymanagerfactorymanager.java:185) [67: Org.apache.aries.jpa.container: 1.0.0 في Org.apache.aries.aries.jpa.container.impl.persistencebundlemanager.setupmanager (persistencebundlemanager.java:394) [67: org.apache.aries.jpa.container: 1.0.0 org.apache.aries.aries.jpa.container.impl.persistencebundlemanager.addingservice (persistencebundlemanager.java:209) [67: Org.apache.aries.jpa.container: 1.0.0 في org.osgi.util.tracker.servicetracker $ tracked.customizeradding (servicetracker.java:932) [karaf.jar: 2.3.4] org.osgi.util.tracker.servicetracker $ Tracked.customizeradding (Servicetracker.java: 1) [karaf.jar: 2.3.4] في org.osgi.util.tracker.abstracttracked.trackadding (abstracttracked.java:256) [karaf.jar: 2.3.4] org.osgi.util.tracker.abstracttracked.track (absracttracked.java:229) [karaf.jar: 2.3.4] في org.osgi.util.tracker.servicetracker $ تتبعت. Cervicechanged (Servicetracker.java: 894) [karaf.jar: 2.3.4] org.apache.felix.framework.util.eventdispatcher.invokeservicelistenercallbackallback (EventDispatcher.java:932) [Org.apache.felix.frameworkwork-4.0.3.jar:] في org.apache.felix.freamwork.util.eventdispatcher.fireeventimmediely (Eventdispatcher.java:793) [Org.apache.felix.framework- 4.0.3.jar:] في org.apache.felix.framework.util.eventdispatcher.fireserviceept (Eventdispatcher.java:543) [Org.apache.felix.framework- 4.0.3.jar:] في org.apache.felix.framework.felix.fireserviceevent (felix.java:4260) [Org.apache.felix.framework- 4.0.3.jar:] org.apache.felix.framework.felix.registerservice (felix.java:3275) [Org.apache

.felix.framework-4.0.3.jar:] org.apache.felix.framework.bundlecontextimpl.registerservice (Bundlecontextimpl.java:346) [Org.apache.felix.framework- 4.0.3.jar:] في org.apache.felix.framework.bundlecontextimpl.registerservice (bundlecontexpl.java:320) [org.apache.felix.framework- 4.0.3.jar:] في Org.hibernate.osgi.hibernatebundleactivator.start (HibernateBundleActivator.java:80) [96: org.hibernate.osgi: 4.2.2.final] org.apache.felix.freamwork.util.secureaction.stactactivator (secureaction.java:645) [org.apache.felix.framework- 4.0.3.jar:] في org.apache.felix.framework.felix.activateBundle (felix.java:1977) [org.apache.felix.framework- 4.0.3.jar:] في org.apache.felix.framework.felix.startbundle (felix.java:1895) [org.apache.felix.frameworkwork-4.0.3.jar:] org.apache.felix.framework.bundleimpl.start (bundleimpl.java:944) [org.apache.felix.framework- 4.0.3.jar:] في org.apache.felix.framework.bundleimpl.start (bundleimpl.java:931) [org.apache.felix.framework- 4.0.3.jar:] في org.apache.karaf.features.internal.featuresserviceimpl.installFeatures (الميزات CerviceImpl.java:488) [25: org.apache.karaf.features.core: 2.3.4] في org.apache.karaf.features.internal.featuresserviceimpl.installfeature (المفردات Derviceimpl.java:405) [25: org.apache.karaf.coref.core: 2.3.4] في org.apache.karaf.features.internal.featuresserviceimpl.installfeature (الميزات Cerviceimpl.java:401) [25: org.apache.karaf.features.core: 2.3.4] في org.apache.karaf.features.command.InstallFeaturecommand.bleExecute (InstallFeaturecommand.java:62) [27: Org.apache.karaf.features.comMand: 2.3.4] في org.apache.karaf.features.command.featurescommandsupport.doExecute (fivesCommandsupport.java:41) [27: org.apache.karaf.features.comMand: 2.3.4] org.apache.karaf.shell.console.osgicommandsupport.execute (Osgicommandsupport.java:38) [14: org.apache.karaf.shell.console: 2.3.4] في org.apache.felix.gogo.commands.basic.abstractcommand.execute (مجردة - مجردة.جافا: 35) [14: org.apache.karaf.shell.chell.console: 2.3.4] في org.apache.felix.gogo.runtime.commandproxy.execute (commandproxy.java:78) [14: org.apache.karaf.shell.console: 2.3.4] في org.apache.felix.gogo.runtime.closure.executecmd (clighture.java:474) [14: org.apache.karaf.shell.console: 2.3.4] في org.apache.felix.gogo.runtime.closure.executestatement (clighture.java:400) [14: org.apache.karaf.shell.cell.console: 2.3.4] org.apache.felix.gogo.runtime.pipe.run (pipe.java:108) [14: org.apache.karaf.shell.chell.console: 2.3.4] في org.apache.felix.gogo.runtime.closure.execute (إغلاق .java: 183) [14: Org.apache.karaf.shell.console: 2.3.4] في org.apache.felix.gogo.runtime.closure.execute (Clighture.java:120) [14: Org.apache.karaf.shell.console: 2.3.4] في org.apache.felix.gogo.runtime.commandsessionImpl.execute (commandsessionimpl.java:89) [14: org.apache.karaf.shell.console: 2.3.4] في org.apache.karaf.shell.console.jline.console.run (console.java: 183) [14: org.apache.karaf.shell.console: 2.3.4] في java.lang.thread.run (Thread.java:744) [: 1.7.0_51]

قمت بحل هذه المشكلة وأنت قمت بتحديث قائمة الملفات كما قال M. Cristian لكن المشكلة الغريبة الأخرى: عند إعادة تشغيل Karaf وتحاول إدراج البيانات من خلال وحدة التحكم Karaf طباعة وحدة التحكم: لا توجد معاملة نشطة، لذلك حاولت الاتجاه الآخر باستخدام EntityManager ولا تظهر المشكلة بعد الآن.

هل كانت مفيدة؟

المحلول

لا يمكن أن يعمل رمزك حيث يتم نشر مصدر البيانات في نفس سياق المخطط حيث يتم استخدام وحدة الثبات.

المشكلة هي أن المخطط سوف تنتظر خدمة eniTitymanagleAgerfactory لحقنها.لذلك لن يتم نشر مصدر البيانات.سيكتشف ARIES JPA أنه يجب أن ينشئ كيانا أمراضي لحزمةك ولكنه سوف مهلة في محاولة للعثور على DataSource.

لذا ضع DataSource في حزمة Spearate ويجب أن يعمل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top