aries-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Odom (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ARIES-1635) BeanMetadata parsing issue when ext and cm are combined.
Date Tue, 26 Sep 2017 15:35:00 GMT

    [ https://issues.apache.org/jira/browse/ARIES-1635?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16180949#comment-16180949
] 

Chris Odom commented on ARIES-1635:
-----------------------------------

Yes, I found that if you use something else other than the default it works
for the system properties it works. Seems that using both, with defaults,
in the same the xml causes issues.

Thanks,

On Tue, Sep 26, 2017 at 3:56 AM, Grzegorz Grzybek (JIRA) <jira@apache.org>




-- 

*Chris Odom* | *Founder* | *No Limits Software, LLC*
512.799.0270 | nolimitssoft.com <http:/www./nolimitssoft.com> |
chris.odom@nolimitssoft.com
8164 Bobcat Dr. Round Rock, TX 78681


> 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: Grzegorz Grzybek
>
> {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
(v6.4.14#64029)

Mime
View raw message