【问题标题】:WSO2 Programmatically Update an Endpoint ConfigurationWSO2 以编程方式更新端点配置
【发布时间】:2013-12-11 19:15:08
【问题描述】:

我编写了这些代码行,用于以编程方式访问和修改保存在我的 esb (4.7.0) 本地注册表中的负载平衡端点配置。 [简而言之,我在负载平衡端点列表中添加了一个新的地址端点]

    SynapseConfiguration sc = synapseMsgContext.getConfiguration();

    LoadbalanceEndpoint le =(LoadbalanceEndpoint) sc.getEndpoint("test");       
    List<Endpoint>list = le.getChildren();
    AddressEndpoint ad = new AddressEndpoint();
    EndpointDefinition  def = new EndpointDefinition();        
    def.setAddress("http://172.17.54.101:8083/RestService/rest/servizio");
    def.setAddressingOn(false);
    def.setTimeoutAction(100);
    ad.setDefinition(def);
    list.add(ad);
    le.setChildren(list);
    sc.updateEndpoint("test", le);
    synapseMsgContext.setConfiguration(sc);

通过此代码行,端点的更新保存在内存中,并在我重新启动 ESB 时丢失。所以这个更新只持续到 esb 停止。

如何使这些更新持久化?我的意思是端点 xml 配置文件的有效更新?

【问题讨论】:

    标签: wso2 updates wso2esb endpoint


    【解决方案1】:

    【讨论】:

    • 我检查了 EndpointFactory 和 EndpointSerializer。但我找不到任何可以帮助我的东西。端点工厂允许我创建一个新端点(我已经这样做了),而 che 序列化程序允许我序列化为 xml 元素。好的,但是当我在创建或修改新端点后单击保存和关闭时,我需要调用我在 UI 上使用的相同功能。你能建议我吗?我应该看到我的端点配置文件在文件系统上更新。
    • 您可以简单地使用 EndpointAdmin 服务将您的配置持久化到文件系统中。 svn.wso2.org/repos/wso2/carbon/platform/branches/turing/…
    • 这是管理服务,我们从 UI 中使用来持久化配置..您可以有自己的逻辑,否则为该管理服务编写一个客户端并使用它
    • 太棒了...在 EndpoinAdmin 中找到了 saveEnpoint 函数。它有效
    猜你喜欢
    • 2010-11-03
    • 2011-11-15
    • 1970-01-01
    • 2019-09-29
    • 1970-01-01
    • 2019-04-24
    • 1970-01-01
    • 2011-03-16
    • 2011-10-07
    相关资源
    最近更新 更多