无法获取元数据:无法执行OData元数据请求。将s4sdk部署到Cloud Foundry后出现错误

时间:2019-04-13 14:09:08

标签: s4sdk

将s4sdk应用程序部署到cf后,在调用/ businesspartners api时收到以下响应。 enter image description here

我能够通过本地部署来测试该应用程序(在ALLOW_MOCKED_AUTH_HEADER之后:true),因此我将应用程序部署到了Cloud Foundry,并尝试使用目的地服务(由env插入),下面是我遵循的步骤。

步骤1:设置云连接器 enter image description here

步骤2:创建xsuaa和目标的服务实例 enter image description here

第3步:在应用Yaml文件中引用此内容 enter image description here

第4步:将程序包推送到云端。 (MVN清洁包;请参阅推送) enter image description here

步骤5:现在,我继续并配置了目的地; (app >>服务实例>>目的地) enter image description here

在这里我无法测试连接性,当我按下“检查连接”时,出现以下错误: enter image description here 我如何测试此连接?

步骤6:相信连接正常后,我继续并重新启动了该应用程序,并开始测试api。该应用程序已启动,但是当我遇到上述(图1)错误​​时。

第7步:尝试查看日志,并注意到以下错误 enter image description here

有人可以在这里帮助解决此问题吗??

  1. 尝试设置“ ALLOW_MOCKED_AUTH_HEADER”->相同的两个问题
  2. 试图删除目的地中的属性,但存在相同的错误。
  3. 由于我们的S4系统未公开开放,因此无法在CF中尝试使用destinations变量,因此请在本地尝试运行。
  4. 与Neo一起试用,它既可以在本地运行又可以在云上运行。
  5. 但是在使用CF后,无法运行

谢谢, 吉里什

1 个答案:

答案 0 :(得分:4)

您还需要将应用程序绑定到Cloud Foundry上的 connnectivity 服务的实例,以通过Cloud Connector进行通信。错误消息"Failed to get connectivity service credentials: no service binding found"中提到了这一点,尽管有些隐瞒。

  1. 使用cf create-service connectivity lite my-connectivity创建服务实例。
  2. 将此实例的名称添加到 manifest.yml 文件中的services部分。

如果之后仍然遇到问题,请也尝试从目标位置删除proxyPortproxyHost属性。那些不是必需的。

有关SAP Cloud Platform Cloud Foundry上的本地连接的更多详细信息,请查阅following blog post