Java 为端点动态创建和设置连接器

Java 为端点动态创建和设置连接器,java,mule,mule-el,Java,Mule,Mule El,我有一个出站端点,但我希望在端点实际发送文件之前,使用Java为端点动态创建和设置一个连接器 我发现了一个动态创建连接器的示例,如: As2Connector connector = new As2Connector(muleContext); connector.setName("TestAS2Connector"); connector.setPartnerId("mend"); connector.setKeystorePath("src/test/reso

我有一个出站端点,但我希望在端点实际发送文件之前,使用Java为端点动态创建和设置一个连接器

我发现了一个动态创建连接器的示例,如:

    As2Connector connector = new As2Connector(muleContext);
    connector.setName("TestAS2Connector");
    connector.setPartnerId("mend");
    connector.setKeystorePath("src/test/resources/keystoreTest.jks");
    connector.setKeystorePassword("PASSWORD");
    return connector;
但是,我不知道如何将连接器与现有端点绑定。有办法做到这一点吗


谢谢,

让多客户端为您创建端点并在其上配置连接器,如:

muleClient.send("as2://...?connector=TestAS2Connector", ...);

我想要动态创建连接器的原因是因为我想要动态设置partnerId属性。我不认为可以根据入站消息使用具有不同值的mule表达式来设置它,但我可能错了。有趣。如果我在实际端点元素的address=”“属性中附加?connector=TestAS2Connector,它会工作吗?我想知道我是否可以只做?connector=#['dynamicEndpointName'],然后完成它:)。值得一试!您说“endpoint元素”:这是否意味着您通过XML而不是代码配置端点?在这种情况下,可以使用的元素上有一个
connector
属性。因此,我假设connector属性确实可以接受一个mule表达式,该表达式包含对动态创建的连接器的引用,或者它可以简单地接受其名称,就像您的示例中的muleClient.send()调用一样。谢谢你的帮助!只需获取名称,但确保首先将其注册到对象注册表中,否则Spring将找不到它,注入将失败。这是一项棘手的工作,因为您需要在初始化Mule时使用此自定义连接器填充注册表。。。使用MuleClient或requester模块(包装它)来进行完全动态的出站交互比使用XML元素更容易。