【问题标题】:ATG Rest full API addItemToOrder is not workingATG Rest 完整 API addItemToOrder 不起作用
【发布时间】:2016-07-04 11:33:12
【问题描述】:

我正在开发 ATG Web-commerce REST Full API,addItemToOrder 不起作用。 这是错误:

{
  "formError": true,
  "formExceptions": [
    {
      "localizedMessage": "Unable to process the request currently. Please try again after some time",
      "errorCode": "atg.droplet.DropletException"
    }
  ],
  "concurrentUpdate": false
}

http://IP:Port/rest/model/atg/commerce/order/purchase/CartModifierActor/addItemToOrder

我检查了服务器日志文件,显示空指针异常。

/atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler   ---     java.lang.NullPointerException
**** Error      /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at atg.siebel.catalog.SiebelCatalogTools.updateQuoteWithProfileDetails(SiebelCatalogTools.java:3681)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at atg.siebel.catalog.SiebelCatalogTools.checkProductEligibility(SiebelCatalogTools.java:3384)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at atg.siebel.validation.SiebelValidator.validateProductEligibility(SiebelValidator.java:141)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at atg.siebel.order.purchase.SiebelCartModifierFormHandler.preAddItemToOrder(SiebelCartModifierFormHandler.java:569)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at atg.commerce.order.purchase.CartModifierFormHandler.handleAddItemToOrder(CartModifierFormHandler.java:3035)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  /atg/dynamo/servlet/pipeline/RequestScopeManager/RequestScope-143/atg/commerce/order/purchase/CartModifierFormHandler           at java.lang.reflect.Method.in

(有更多的错误行无法在此处发布), 会不会是因为产品同步问题?还是sku的问题..?

请帮忙

【问题讨论】:

  • 想在您的问题中添加NPE 吗?否则,您的问题的答案是,由于NPE,您会收到一个错误。
  • NPE 是什么意思,我尝试标记到 ATG web-commerce REST Full API 我在列表中找不到请指教,
  • 我严重卡在这个问题上,还有希望吗?
  • NPENullPointerException 的缩写。请在您的问题中添加例外,因为此处没有足够的信息可供我们为您提供帮助。
  • 您需要至少添加错误的前 10 行才能使其有用。

标签: atg atg-droplet


【解决方案1】:

仍然有点难以确定错误的确切位置,但考虑到您正在调用updateQuoteWithProfileDetails(Quote,RepositoryItem) 方法,并且在调用方法中有null 检查RepositoryItem(配置文件)和Quotenew,那么调用代码中唯一可能以NullPointerException 结尾的行是:

parentOrganizationOfProfile = (RepositoryItem) profile.getPropertyValue(getProfilePropertyParentOrganization());

这意味着profile RepositoryItem 上的ProfileParentOrganisation 值为null

该方法中的其余代码(根据参考应用中ATG提供的源代码)都提供null检查。

【讨论】:

  • 我正在使用 ATG Restful API,有点困惑,因为我是新域。 AddtoCart 方法与 CRM 无关,对吧?所以我不需要查看 CRM 日志。希望 addtoCart 不需要与 CRM 沟通。
  • 我正在调用 addItemToOrder API,不知道内部方法。请指教。
  • 正如我在回答中所说,您尝试使用的profile 中的ProfileParentOrganisationnull。检查您的数据。
  • 嗨,没有进展,因为我是 ATG 的新手,所以我感到很困难,并尝试了多种方法来理解答案。我对此有一些疑问,1.> 这个 addItemToOrder 是否正在调用任何 Siebel Web 服务? 2.> 或者这个呼叫是在 ATG 内? 3.> 如果调用的是Siebel服务,请解释一下网络服务
  • 我从未使用过 Siebel 集成,但我可以说您的问题在于 ATG 实例中的数据。您可能只需要在您尝试用于查询的用户上设置ProfileParentOrganisation。这很可能是通过密件抄送完成的。
猜你喜欢
  • 1970-01-01
  • 2023-03-04
  • 1970-01-01
  • 2016-03-27
  • 2018-01-29
  • 2016-12-21
  • 1970-01-01
  • 2017-06-17
  • 2016-07-27
相关资源
最近更新 更多