我们了解,这些是SDK提供的用于连接到ODATA服务的选项
选项1-如果SDK不隐式支持ODATA服务,则使用com.sap.cloud.sdk.odatav2.connectivity.1.ODataCreateRequestBuilder
选项2-如果SDK不隐式支持ODATA服务,则使用VDM生成方法。使用生成的Java类调用服务
选项3-如果com.sap.cloud.sdk.s4hana.datamodel.odata.services.OutboundDeliveryService隐式支持ODATA服务,则使用已有的类,例如2> SDK
现在我们有一些问题,需要专家的指导。
问题1-我们有一个需要从第三方系统调用oDATA服务的用例,我们应该选择选项1还是选项2?
问题2 -选项1优先于选项2的情况是什么?
问题3-我们还有一个需要调用与OutboundDelivery相关的S4HANA ODATA服务的用例。SDK通过类com.sap.cloud.sdk.s4hana.datamodel.odata.services.OutboundDeliveryService支持服务,但在当前版本中,服务中增加了一个新字段。在这种情况下,我们需要更新此字段,建议使用哪个选项?
问题4-现有S4HANA odata服务上的新字段多频繁地包含在SDK中?
发布于 2020-01-08 18:33:26
我希望我能在这里给你一点启发:
关于1:就我个人而言,我仍然建议使用选项2,并使用我们的生成器生成客户端代码。对于任何其他OData服务,这将为您提供与S/4服务相同的便利性。如果由于某些原因,生成的代码不能用于您的第三方服务,您仍然可以使用选项1作为后备。一般来说,我们的生成器应该适用于任何OData v2服务,而不仅仅是service。
关于2:正如已经提到的,如果生成的客户端不能正常工作,则通用OData客户端始终作为备用客户端工作。我能想到的另一种情况(这种情况应该很少见)是,您自己公开了一个服务,该服务从多个下游OData服务检索数据。在这种情况下,与生成的客户端相比,通用客户端可能会提供一些优势。除此之外,我没有意识到有任何用例让我个人使用通用客户端而不是生成的客户端。
关于3和4:我们作为SAP Cloud SDK的一部分发布的VDM包包含用于当前版本的SAP S/4HANA Cloud的OData客户端代码。因此,如果SAP S/4HANA Cloud中的服务更新,我们的包将反映该更新。如果您在内部使用SAP S/4HANA,则该服务通常很有可能与云版本兼容。如果没有,您仍然可以使用我们的生成器来生成包含相应本地服务的元数据的客户端代码。
https://stackoverflow.com/questions/59643038
复制相似问题