Apache camel DOM与webspherecommerce的集成

Apache camel DOM与webspherecommerce的集成,apache-camel,websphere-commerce,Apache Camel,Websphere Commerce,我们集成了Websphere以支持Camel集成,并建立了DOM清单模型。因此,当用户到达产品页面并选择一个项目时,将对Camel integration framework进行外部调用,并更新INVAVL商业表 但在第页中,库存状态仍显示为不可用。但是,如果再次选择相同的产品,它将显示为可用,因为第二个请求是直接向数据库发出的,而不是驼峰请求 任何解决方案?当Commerce调用外部系统时,它返回外部系统返回的对象,而不是它存储在缓存中的对象 如果外部系统不提供商业本身适用于库存响应的完整信息

我们集成了Websphere以支持Camel集成,并建立了DOM清单模型。因此,当用户到达产品页面并选择一个项目时,将对Camel integration framework进行外部调用,并更新INVAVL商业表

但在第页中,库存状态仍显示为不可用。但是,如果再次选择相同的产品,它将显示为可用,因为第二个请求是直接向数据库发出的,而不是驼峰请求


任何解决方案?

当Commerce调用外部系统时,它返回外部系统返回的对象,而不是它存储在缓存中的对象

如果外部系统不提供商业本身适用于库存响应的完整信息集,这会导致行为上的一些差异

为什么会这样,我并不清楚,但我观察到这是真的。它还影响实体店库存显示,因为外部系统将填充库存记录的外部标识符,而仅缓存版本不会。JSP希望它能出现在那里

所以,第一次运行看起来是正常的,但随后的执行将不会显示库存

调试这一点最简单的方法是在以下两种情况下使用Soap UI在WCS上调用GetInventoryAvailability

a) 不存在现有的缓存项 和 b) 存在现有缓存项时

然后摆弄camel响应,直到它与b)中返回的响应匹配为止

通常,它的字段您不认为很重要,例如StoreIdentifier和AvailabilityTime