aries-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guillaume Nodet (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (ARIES-1635) BeanMetadata parsing issue when ext and cm are combined.
Date Fri, 19 Jan 2018 09:52:00 GMT

     [ https://issues.apache.org/jira/browse/ARIES-1635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Guillaume Nodet resolved ARIES-1635.
------------------------------------
    Resolution: Cannot Reproduce
      Assignee: Guillaume Nodet  (was: Grzegorz Grzybek)

It work fine for me with the given blueprint.
Maybe you were using an outdated version of the bundle  ?
Please reopen if needed.

> BeanMetadata parsing issue when ext and cm are combined.
> --------------------------------------------------------
>
>                 Key: ARIES-1635
>                 URL: https://issues.apache.org/jira/browse/ARIES-1635
>             Project: Aries
>          Issue Type: Bug
>          Components: Blueprint
>    Affects Versions: blueprint-core-1.6.2, blueprint-cm-1.0.8
>            Reporter: Chris Odom
>            Assignee: Guillaume Nodet
>            Priority: Major
>
> {noformat}
> org.osgi.service.blueprint.container.ComponentDefinitionException: Multiple placeholders
with the same prefix and suffix are not allowed
> 	at org.apache.aries.blueprint.ext.PlaceholdersUtils.validatePlaceholder(PlaceholdersUtils.java:49)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.ext.impl.ExtNamespaceHandler.parsePropertyPlaceholder(ExtNamespaceHandler.java:367)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.ext.impl.ExtNamespaceHandler.parse(ExtNamespaceHandler.java:165)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.parser.Parser.parseCustomElement(Parser.java:1369)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:427)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:349)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:276)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:300)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:269)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:265)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:255)[21:org.apache.aries.blueprint.core:1.6.2]
> 	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[30:org.apache.aries.util:1.1.1]
> 	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[30:org.apache.aries.util:1.1.1]
> 	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[30:org.apache.aries.util:1.1.1]
> 	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[30:org.apache.aries.util:1.1.1]
> 	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[30:org.apache.aries.util:1.1.1]
> 	at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1179)[org.apache.felix.framework-5.4.0.jar:]
> 	at org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:731)[org.apache.felix.framework-5.4.0.jar:]
> 	at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:486)[org.apache.felix.framework-5.4.0.jar:]
> 	at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541)[org.apache.felix.framework-5.4.0.jar:]
> 	at org.apache.felix.framework.Felix.startBundle(Felix.java:2172)[org.apache.felix.framework-5.4.0.jar:]
> 	at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)[org.apache.felix.framework-5.4.0.jar:]
> 	at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984)[org.apache.felix.framework-5.4.0.jar:]
> 	at org.apache.karaf.features.internal.service.FeaturesServiceImpl.startBundle(FeaturesServiceImpl.java:1286)[8:org.apache.karaf.features.core:4.0.7]
> 	at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:846)[8:org.apache.karaf.features.core:4.0.7]
> 	at org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1176)[8:org.apache.karaf.features.core:4.0.7]
> 	at org.apache.karaf.features.internal.service.FeaturesServiceImpl$1.call(FeaturesServiceImpl.java:1074)[8:org.apache.karaf.features.core:4.0.7]
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_111]
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_111]
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_111]
> 	at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
> {noformat}
> Debug of BeanMetadata:
> {noformat}
> BeanMetadata[id='system-database-config', initialization=0, dependsOn=null, className='null',
initMethodName='init', destroyMethodName='null', \
> arguments=null, properties= [ \
>    BeanProperty[name='placeholderPrefix', value=ValueMetadata[stringValue='${', type='null']],
\
>    BeanProperty[name='placeholderSuffix', value=ValueMetadata[stringValue='}', type='null']]
\
> ], factoryMethodName='null', factoryComponent=null, scope='singleton', runtimeClass=class
org.apache.aries.blueprint.ext.PropertyPlaceholder, fieldInjection=false]
> {noformat}
> blueprint.xml:
> {code:xml}
> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
> 	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
> 	xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.3.0"
> 	xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.5.0"
> 	xsi:schemaLocation="
>     http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>     http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.3.0 http://aries.apache.org/schemas/blueprint-cm/blueprint-cm-1.3.0.xsd
>     http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.5.0 http://aries.apache.org/schemas/blueprint-ext/blueprint-ext-1.5.xsd">
> 	<cm:property-placeholder id="application-database-config" persistent-id="com.nolimitssoft"
update-strategy="none" />
> 	<!-- Allow the use of system properties -->
>     <ext:property-placeholder id="system-database-config" placeholder-prefix="$["
placeholder-suffix="]" />
>     ...
> </blueprint>
> {code}
> You will notice that the Blueprint bean uses prefix and suffix properties but the BeanMetadata
does not reflect those properties.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message