我遇到了一个问题,即通过传统的绿屏应用程序在 IBM i 上创建的数据没有反映在我正在编写的 Web 应用程序中。我从 Web 应用程序添加的记录似乎可以立即用于 Web 应用程序和 IBM i,但我在 IBM i 上创建的记录不能立即用于 Web 应用程序。我认为这可能是缓存问题,但重新启动我的网络应用程序后,记录仍然不存在。我已经尝试设置javax.persistence.cache.retrieveMode
为BYPASS
,并且该设置在我的 Hibernate 实体管理器创建时得到反映,但是从我的查询返回的数据仍然缺少通过绿屏添加的记录。
在这个阶段,我不认为这是一个缓存问题。所以这是我到目前为止所做的测试。
我正在使用的文件是 WOHDR2 和 WOJOBS,其中 WOHDR2 是头文件,WOJOBS 是详细文件。
这是我到目前为止测试过的。
通过网络应用程序添加到文件 WOJOBS 并立即关联到 WOHDR2 的记录 - 这些记录反映了父 WOHDR2 的 ID 字段,并且在网络应用程序和绿屏中都可见。
通过绿屏应用程序添加到文件 WOJOBS 的记录,没有与 WOHDR2 的 ID 关联,即:它处于挂起状态,直到用户稍后将其分配给 WOHDR2 - 此记录通过绿屏应用程序可见,但网络应用程序不可见
通过绿屏将 WOJOBS 记录关联到 WOHDR2 - 我现在可以通过 Web 应用程序查看 WOJOBS 记录
通过网络应用程序或绿屏应用程序添加到文件 WOHDR2 的记录 - 通过网络应用程序和绿屏应用程序同时显示记录