首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能在单个请求中向Websphere web服务提交多个产品( ChangeCatalogEntry Commerce)

不能在单个请求中向Websphere web服务提交多个产品( ChangeCatalogEntry Commerce)
EN

Stack Overflow用户
提问于 2013-06-20 20:55:41
回答 2查看 285关注 0票数 0

使用Websphere Commerce V7、FP6、FEP5。

我正在尝试使用ChangeCatalogEntry web服务对我们的目录进行更新。我可以很好地更新一个产品。我的问题是,任何额外的CatalogEntry节点都会被完全忽略。它似乎只处理它找到的第一个CatalogEntry节点。我正在使用SoapUI提交请求。这是我试图提交的一个样本。在此示例中,更新了部件号p_MAT153,但更新了p_MAT203和p_MAT185。webservice是否设计为每条消息只更新一个产品?

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <soapenv:Header>
        <wsse:Security soapenv:mustUnderstand="1">
            <wsse:UsernameToken>
                <wsse:Username>
                    wcs_sonic
                </wsse:Username>
                <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">
                    passw0rd
                </wsse:Password>
            </wsse:UsernameToken>
        </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
<ChangeCatalogEntry xmlns:udt="http://www.openapplications.org/oagis/9/unqualifieddatatypes/1.1"
                    xmlns:_wcf="http://www.ibm.com/xmlns/prod/commerce/9/foundation"
                    xmlns="http://www.ibm.com/xmlns/prod/commerce/9/catalog"
                    xmlns:oa="http://www.openapplications.org/oagis/9"
                    xmlns:clmIANAMIMEMediaTypes="http://www.openapplications.org/oagis/9/IANAMIMEMediaTypes:2003"
                    xmlns:oacl="http://www.openapplications.org/oagis/9/codelists"
                    xmlns:clm54217="http://www.openapplications.org/oagis/9/currencycode/54217:2001"
                    xmlns:clm5639="http://www.openapplications.org/oagis/9/languagecode/5639:1988"
                    xmlns:qdt="http://www.openapplications.org/oagis/9/qualifieddatatypes/1.1"
                    xmlns:clm66411="http://www.openapplications.org/oagis/9/unitcode/66411:2001"
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                    xsi:schemaLocation="http://www.ibm.com/xmlns/prod/commerce/9/catalog C:/Users/SteveS/MuleStudio/workspace/shapeitdeltaupdates/src/main/resources/WebContent/component-services/xsd/OAGIS/9.0/Overlays/IBM/Commerce/BODs/ChangeCatalogEntry.xsd"
                    releaseID="9.0"
                    versionID="7.0.0.0">
   <oa:ApplicationArea xsi:type="_wcf:ApplicationAreaType">
      <oa:CreationDateTime>2013-04-29T15:38:19.173-04:00</oa:CreationDateTime>
      <_wcf:BusinessContext>
         <_wcf:ContextData name="storeId">10651</_wcf:ContextData>
         <_wcf:ContextData name="catalogId">10051</_wcf:ContextData>
      </_wcf:BusinessContext>
   </oa:ApplicationArea>
   <DataArea>
      <oa:Change>
         <oa:ActionCriteria>
            <oa:ActionExpression actionCode="Change" expressionLanguage="_wcf:XPath">/CatalogEntry[1]/Description[1]</oa:ActionExpression>
         </oa:ActionCriteria>
      </oa:Change>
      <CatalogEntry>
         <CatalogEntryIdentifier>
            <_wcf:ExternalIdentifier ownerID="7000000000000000601">
               <_wcf:PartNumber>p_MAT153</_wcf:PartNumber>
               <_wcf:StoreIdentifier>
                  <_wcf:UniqueID>10551</_wcf:UniqueID>
               </_wcf:StoreIdentifier>
            </_wcf:ExternalIdentifier>
         </CatalogEntryIdentifier>
         <Description language="-1">
            <Name>Absorbent Pants Roll</Name>
            <ShortDescription>     universal XSMP133</ShortDescription>
            <LongDescription>These are my pants.</LongDescription>
            <Attributes name="auxDescription1">I need an aux description</Attributes>
         </Description>
      </CatalogEntry>
      <CatalogEntry>
         <CatalogEntryIdentifier>
            <_wcf:ExternalIdentifier ownerID="7000000000000000601">
               <_wcf:PartNumber>p_MAT203</_wcf:PartNumber>
               <_wcf:StoreIdentifier>
                  <_wcf:UniqueID>10551</_wcf:UniqueID>
               </_wcf:StoreIdentifier>
            </_wcf:ExternalIdentifier>
         </CatalogEntryIdentifier>
         <Description language="-1">
            <Name>Absorbent Mat Roll</Name>
            <ShortDescription>     universal XSMP133</ShortDescription>
            <LongDescription>These are not my pants. These are your pants.</LongDescription>
            <Attributes name="auxDescription1">These pants should be washed regularly.</Attributes>
         </Description>
      </CatalogEntry>
      <CatalogEntry>
         <CatalogEntryIdentifier>
            <_wcf:ExternalIdentifier ownerID="7000000000000000601">
               <_wcf:PartNumber>p_MAT185</_wcf:PartNumber>
               <_wcf:StoreIdentifier>
                  <_wcf:UniqueID>10551</_wcf:UniqueID>
               </_wcf:StoreIdentifier>
            </_wcf:ExternalIdentifier>
         </CatalogEntryIdentifier>
         <Description language="-1">
            <Name>Pants on a Roll</Name>
            <ShortDescription>     universal XSMP133</ShortDescription>
            <LongDescription>A roll of pants. Genuius. </LongDescription>
            <Attributes name="auxDescription1">Still more pants. Need a different aux description.</Attributes>
         </Description>
      </CatalogEntry>
   </DataArea>
</ChangeCatalogEntry>
    </soapenv:Body>
</soapenv:Envelope>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-03 05:03:05

答案在oa中:ActionCriteria节点。对于每个CatalogEntry实例,我都需要一个匹配的节点。

代码语言:javascript
复制
        <oa:ActionCriteria>
            <oa:ActionExpression actionCode="Change" expressionLanguage="_wcf:XPath">/CatalogEntry[1]/Description[1]</oa:ActionExpression>
        </oa:ActionCriteria>
        <oa:ActionCriteria>
            <oa:ActionExpression actionCode="Change" expressionLanguage="_wcf:XPath">/CatalogEntry[2]/Description[1]</oa:ActionExpression>
        </oa:ActionCriteria>
        <oa:ActionCriteria>
            <oa:ActionExpression actionCode="Change" expressionLanguage="_wcf:XPath">/CatalogEntry[3]/Description[1]</oa:ActionExpression>
        </oa:ActionCriteria>
票数 0
EN

Stack Overflow用户

发布于 2013-09-17 04:00:18

补充一下:你可以在同一个数据对象上运行多个操作,例如创建属性,删除属性,设置SEO数据等。然而,如果你没有按照添加,更改和删除的顺序对操作进行排序,这可能会混淆图形对象。

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

https://stackoverflow.com/questions/17214207

复制
相关文章

相似问题

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