java - 如何在camel蓝图中引用 "disable"bean?

标签 java spring apache-camel blueprint-osgi

我正在使用 Camel 。这是我的蓝图(摘录):

<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
    <cm:property-placeholder id="placeholder" persistent-id="com.adelco.articulos" />
    <!-- Configures the Inbound and Outbound SAP Connections -->
    <bean id="sap-configuration" class="org.fusesource.camel.component.sap.SapConnectionConfiguration">
        .
        .
    </bean>

    <!--A lot of things here, let's omit them-->
    <!-- Route beans--> 
    <bean id="rutaSTEPEntrada" class="com.adelco.articulos.RutaSTEPEntrada"/>
    <bean id="rutaSTEPSap" class="com.adelco.articulos.RutaSTEPSap"/>

    <camelContext id="camel-articulos" xmlns="http://camel.apache.org/schema/blueprint">
        <routeBuilder ref="rutaSTEPEntrada"/>   
        <routeBuilder ref="rutaSTEPSap"/>
    </camelContext>

</blueprint>

我想“禁用”bean“sap-configuration”,但不使用 XML 注释。像这样的事情:

<bean id="sap-configuration" enabled=${ENABLED} class="org.fusesource.camel.component.sap.SapConnectionConfiguration">
    .
    .
</bean>

我可以使用“autoStartup”和属性占位符“autoStartup=${ENABLED}”定义要激活的 Camel 路线,但我找不到如何使用 bean 执行此操作。

最佳答案

这是不可能的。这就是 OSGi 蓝图的工作原理。如果您定义 <bean>然后就可以使用了。

关于java - 如何在camel蓝图中引用 "disable"bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41265847/

相关文章:

java - Android动画,一个简单的线性插值器

javascript - 添加新行后,React.js 从 Mongo DB 更新表

java - 使用 ActiveDirectoryLdapAuthenticationProvider 进行集成测试

java - 在 2.23.0 版本中,如果没有 CamelContext,则无法创建 Camel DefaultMessage

java - 如何让 Barcode4J FOP 扩展在 OSGi 中工作(用于使用条形码生成 PDF)

java - spring mvc - 检查您所在页面并更改菜单项样式的最简单方法

java - OraclePreparedStatement.executeUpdate() 是否通过抛出 SQLException 实例来处理连接池耗尽?

spring - 在 Spring 代理 bean 中查找注解

java - Spring 4 : cannot get arguments annotations at interception?

ActiveMQ:简单的基于主题的集群