如何在 Cloud Foundry 中为 java 应用程序添加多个目的地?

How to add multiple destinations for a java application in cloud foundry?

我使用 S4Hana SDK 开发了一个 Java 应用程序。将应用程序部署到 SAP Cloud 平台后,我使用以下命令将目标设置为环境变量。

cf set-env firstapp destinations '[{name: "ErpQueryEndpoint", url: "https://URL", username: "USER", password: "PASSWORD"}]'

现在,我想为同一个应用程序添加第二个目的地。有人可以帮我吗?

谢谢, 桑克思

您可以在环境变量中定义多个目的地。这是一个 JSON 数组。

cf set-env firstapp destinations '[{name: "ErpQueryEndpoint", url: "https://URL", username: "USER", password: "PASSWORD"},{name: "ErpQueryEndpoint2", url: "https://URL", username: "USER", password: "PASSWORD"}]'

在虚拟数据模型的执行方法中,您可以定义要使用的目的地:

BusinessPartnerService service = new DefaultBusinessPartnerService();

final List<BusinessPartner> businessPartners =
        service.getAllBusinessPartner().execute(new ErpConfigContext("ErpQueryEndpoint2"));

但是,比使用环境变量更好的方法是使用目标服务。

SDK 教程的第 4 步说明了如何使用此服务: https://blogs.sap.com/2017/05/21/step-4-with-sap-s4hana-cloud-sdk-calling-an-odata-service/

这样甚至可以为每个租户配置目的地。