For what it is worth, I use target in the @Reference annotation to filter 
references by named properties.  I also use configuration when setting the 
datasource to use for specific bundles, i.e. config:property-set --pid 
com.example.crm datasource.target "(dataSourceName=dev_postgres)"

***
* Service implementation
***
@Component( property = { "inboundMessageProvider=email" })


***
* Service consumer
***
@Reference (target = "(inboundMessageProvider=email)")

Paul Spencer


> On Apr 18, 2025, at 10:02 AM, Matt Pavlovich <mattr...@apache.org> wrote:
> 
> I’ve had issues using the ‘filter' option on reference in the past with Karaf 
> commands. I think may not be evaluated or support for it isn’t implemented at 
> this point.
> 
> The work-around is to collect _all_ service for an interface and then 
> identify the one you want to work with within the Karaf command.
> 
> In your case, you may need a wrapper bean that contains the map and is easier 
> to pass around and identify by your karaf command vs a java.util.Map.
> 
> -Matt Pavlovich
> 
>> On Apr 18, 2025, at 6:16 AM, Ephemeris Lappis <ephemeris.lap...@gmail.com> 
>> wrote:
>> 
>> @Reference(filter = "(osgi.blueprint.compname=\"dlqRoutesTable\")")
>> Map<String, String> routesTable;
> 
> 

Reply via email to