问题标签 [sap-cloud-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sapui5 - SAP ui5 应用程序中非活动用户的会话超时
我正在创建一个 UI5 应用程序。我的问题是如何为非活动用户设置会话超时。会话超时是否有任何直接属性?
java - 无法使用 SDK 从 S/4 系统检索数据以进行服务开发
我正在使用 Olingo 构建 OData v2 服务,该服务部分通过自定义网关 OData 服务从 S/4 系统获取数据,部分来自 Cloud Platform Neo 并将两者结合起来。为此,我使用 S/4 Cloud SDK ( https://help.sap.com/viewer/p/SDK_FOR_SERVICE_DEVELOPMENT ) 中包含的 SDK 进行服务开发。
这是我的问题:尝试从我的 Olingo 服务调用我的网关 OData 服务时,它给了我一个错误“在 JSON 中找不到错误字段”。经过一些尝试,我找到了堆栈跟踪,但它也没有真正帮助我,因为它只是说元数据请求失败,没有原因。这是我的堆栈跟踪: 谁能告诉我这可能是什么原因(凭据和 URL 被仔细检查)和/或帮助我解决这个问题?
提前非常感谢!
编辑
该问题似乎与目标配置有关。我尝试了一个 HTTP 目标而不是 HTTPS,现在它正在工作......我仍然想让它也能在 HTTPS 上工作。
sap - 我可以在本地或 NEO 环境中使用 com.sap.cloud.servicesdk 吗?
我想使用 SAP Cloud Platform SDK for Service Development 以花哨而简单的方式创建 odata-services :-)
我已按照教程创建一个公开模拟数据的简单 OData V4 服务中的说明进行操作。
我能够在 SAP Cloud Foundry 中成功部署和运行它,但我的目标是在本地以及稍后在 SAP Neo 环境中运行它。
因此,我尝试将其部署在本地 SAP 服务器“Java Web Tomcat 8”上。部署成功,我也可以得到 $metadata。但是,一旦我调用端点http://localhost:8080/quickstart/odata/v4/EPMSampleService/Products,就会返回以下错误消息:
{"error":{"code":"不支持操作。","message":"不支持操作。"}}
如果可以在本地和 SAP NEO 中以某种方式使用 SCP 服务 SDK,有什么想法吗?
cloud-foundry - s4sdk、Neo 或 Cloud Foundry
我们目前正在评估 SCP、可用的 SDK,并尝试为以下项目要求找到合适的环境(Neo 或 CF)和正确的设置:
- 提供 oData 服务
- 连接 S/4(读/写)
- SCP Hana DB 中的持久性
- SCP 工作流程集成
- SCP文档服务集成
- 多租户能力
我们发现很难确定正确的设置(环境和 SDK):
Neo 中提供了“文档”和“工作流”服务。我们的假设是否正确,即我们的服务应用程序因此也必须在 Neo 中运行?
“用于服务开发的 SAP Cloud Platform SDK”在我们看来是实现 OData 服务的正确方法。但是,该 SDK 仅适用于 Cloud Foundry 环境。
请给我们一些建议
- 什么样的环境适合我们的要求?
- 可以使用哪些 SDK 来有效地实现它?
etag - 使用“API_PHYSICAL_INVENTORY_DOC_SRV”修补库存项目时出错(eTag - CloudSDK)
我们希望使用 CloudSDK(版本 1.9.2)在我们的 Java 应用程序中实现库存预订流程。我们正在调用 S4 OnPremise System (1709)。
1.) 我们在使用服务 DefaultPhysicalInventoryDocumentService() 和方法 .createPhysInventoryDocHeader() 时调用创建过程。
=> 结果:创建了实物盘点文件。
2.) 必须对已创建的盘点单据的盘点对象进行盘点。为此,我们使用方法 .getPhysInventoryDocItem() 获取相应的项目,设置新值并使用方法 updatePhysInventoryDocItem() 调用更新过程。
=>结果:错误:“数据服务请求必须是有条件的。尝试使用 \"If-Match\" 标头。”
我们曾使用 SAP 的 Gateway Client 尝试过这个过程。在这里,我们必须使用 GET 过程访问实例,以从响应中获取“eTag”,并能够在 patch 方法中将其指定为“If-Match”参数。此过程在网关客户端中工作。
尽管如此,我们还是对我们的 Java 应用程序尝试了相同的过程。不幸的是,我们没有为获取请求返回 eTag。根据后端的跟踪,与网关客户端中相同的 OData 服务被寻址。
我们的实现是通过 PostMan 调用的(用于测试目的)。
补丁 - 方法:
odata - 未知异常“null - 解析元数据时出错”。在执行 DefaultSalesOrderService() - updateSalesOrder()
作为 PoC 的一部分,我目前正在尝试为 S/4HANA Cloud 的并行扩展构建一个原型,该原型由两层组成:使用S/4HANA Cloud SDK 与 Java 后端分离的 SAPUI5 前端。
总的来说,它也很好用。但是我经常遇到 UPDATE 命令的问题,所以我写了一个小 servlet 用于演示目的。现在我在更新过程中总是遇到同样的异常,即"Error while parsing the metadata"。
我已经尝试了一切,现在不知道什么可能是这个异常的触发器。
我试图在 pom.xml 中添加更多依赖项,但没有成功。使用 GET 命令获取所有字段并更新填充对象的尝试也未成功。ETag 也不是问题,这是自最新版本以来由“versionIdentifier”出色处理的。
如果你们中的任何一个知道我的错误在哪里,我将非常感激!
在此先感谢您的帮助!
[旧] 代码片段:公共类 UpdateService 扩展 HttpServlet
[旧] Http 响应
更新 - 2018-04-18
首先,感谢您的帮助!
我稍微重新编写了代码并实现了 Henning 的解决方法。乍一看,一切似乎都正常。没有例外,也没有警告。
但是,在后端您可以看到,实际值保持不变。你对我有什么建议吗?
[新] 代码片段:公共类 UpdateService 扩展了 HttpServlet
[新] Http 响应
[新] S/4HANA 云 API
sap - 在 Cloud Foundry 中部署 s4sdk 应用程序时出现问题
该项目是使用生成的:mvn archetype:generate -DarchetypeGroupId=com.sap.cloud.s4hana.archetypes -DarchetypeArtifactId=scp-cf-spring -DarchetypeVersion=2.3.1
,该项目在本地运行良好。为 spring security 添加了 jars,定义了名为“destinations”的环境并执行了对 S4 Hana 系统的调用,这在本地工作正常。但是,当我通过 cf push 部署它时出现错误,日志如下所示:
如果需要提供任何其他详细信息,请告诉我。
sap - 获取访问令牌失败:通过 OAuth2Bearer 访问 S4HANA 时未找到有效的 JWT 承载
我通过以下方式生成了项目:
mvn archetype:generate -DarchetypeGroupId=com.sap.cloud.s4hana.archetypes -DarchetypeArtifactId=scp-cf-spring -DarchetypeVersion=LATEST
我包含了 S4Sdk jar 并访问了 S4Hana V2 API。该代码适用于基本身份验证,但是当我将目标类型配置为“OAuth2SAMLBEARER ASSERTION”时,通过 .execute 调用访问 S4Hana API 时,我在 CF 日志中收到以下错误。:
注意我已经在 S4Hana 系统和子账户之间建立了信任,配置了通信和业务用户,主要传播步骤如下:https ://blogs.sap.com/2018/02/05/deep-dive-8-with- sap-s4hana-cloud-sdk-leverage-principal-propagation-via-oauth-2-when-sumption-a-business-api-from-s4hana-cloud/,
请检查并让我知道是否需要为此配置其他内容。
我尝试通过评论中建议的博客创建 approuter,但在 cf 中部署 approuter 时出错:
你能帮帮我吗?我从博客中建议的链接下载了 approuter。
java - 创建 ErpConfigContext 引发异常
我正在尝试使用 S/4HANA SDK 调用 CompanyCode OData VDM 服务,但如果我在 Cloud Foundry 环境中执行此操作,则会收到附加错误。我之前一直在使用 SDK,但这并没有发生。你能帮帮我吗?
代码:
错误: