首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改后不会刷新SAPUI5元数据。

更改后不会刷新SAPUI5元数据。
EN

Stack Overflow用户
提问于 2019-05-16 14:32:15
回答 1查看 7.2K关注 0票数 1

我们在SAPUI5服务维护方面遇到了问题。在通过SEGW事务对服务实体进行更改之后,在GW客户机中加载的元数据保持在更改前的状态。

例如,有一个日期字段更改为字符串,GW抛出invalid or no mapping to system data types found的错误。原因是试图将字符串日期值(如'16.05.2019‘)放入日期类型(实体的元数据不刷新)。

我们试图刷新那些缓存:

  • 指数重新计算
  • 斯米克
  • 全局缓存

Via:

  • /iwfnd/缓存清理
  • /ui2 2/失效全局缓存
  • /ui5 5/app指数计算

我们还重新加载元数据,甚至删除该实体并重新创建它--所有这些都失败了。

/IWFND_GW_CLIENT事务中,显示了更新的元数据。

只有重新创建具有不同名称的实体才能解决这个问题,但它似乎并不是维护服务的好方法。

EN

回答 1

Stack Overflow用户

发布于 2019-05-16 17:07:19

/IWFND/CACHE_CLEANUP是唯一与OData相关的缓存,其他缓存用于部署的UI5应用程序。如果您是在具有多个后端系统的GatewayHub环境中,则必须在这两个系统上运行事务。

如果事务不执行,则这两个系统都有另一个缓存清理,这是SAP以不同的方式实现的。以下是我在SEGW后端系统中更改服务后所做的工作:

  1. 后端SEGW:重新生成运行时对象
  2. GatewayHub (GW) /IWFND/GW_CLIENT执行/sap/opu/odata/ZyourService_SRV/$metadata。无更改的服务
  3. 在顶部菜单中的相同事务中:Metadata -> Cleanup Cache -> on both systems
  4. 再次执行/sap/opu/odata/ZyourService_SRV/$metadata。变更服务
  5. 现在,在前端只剩下一个浏览器缓存,可能有过时的信息。通常情况下,应用程序的刷新会使浏览器重新加载元数据。在Chrome浏览器的开发者控制台中,在选项卡网络中,也可以在打开控制台时禁用缓存。
  6. 最新的 GatewayHub systems 已经引入了使用CacheBuster的Odata缓存应定期规划的方案

为了确保令牌是最新的,必须定期执行report /UI5/UPD_ODATA_元数据缓存。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56170969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档