Topic
2 replies Latest Post - ‏2012-07-26T14:26:05Z by SystemAdmin
SystemAdmin
SystemAdmin
345 Posts
ACCEPTED ANSWER

Pinned topic MDM deletePartyServiceWithHistory mystery

‏2012-07-15T15:01:30Z |
Hi,

Question: it seems the implementation between v9 and v10 of the deleteParty service has changed. Anyone has any details on this? It is now complaining about a missing field while the only thing I provide is the partyId - alternatively - the DataSteward displays the same error. Which I would qualify as a bug? Anyone got this service to work?

Cheers,

Bart
Updated on 2012-07-26T14:26:05Z at 2012-07-26T14:26:05Z by SystemAdmin
  • prashanta.nc
    prashanta.nc
    56 Posts
    ACCEPTED ANSWER

    Re: MDM deletePartyServiceWithHistory mystery

    ‏2012-07-18T17:32:16Z  in response to SystemAdmin
    Hi Bart,

    What exact error message you are getting.

    Also share any stack trace you get in logs. Thanks

    -Prashant
    • SystemAdmin
      SystemAdmin
      345 Posts
      ACCEPTED ANSWER

      Re: MDM deletePartyServiceWithHistory mystery

      ‏2012-07-26T14:26:05Z  in response to prashanta.nc
      Hi Prashanta,

      Sure, the error message is the following:

      26-7-12 16:13:40:296 CEST 0000001f SystemOut O ERROR - com.dwl.tcrm.exception.TCRMReadException: http://99 READERR 1 The required field is missing.
      at com.dwl.tcrm.coreParty.component.TCRMPartyComponent.checkPartyExistence(TCRMPartyComponent.java:1697)
      at com.dwl.tcrm.coreParty.component.PartyTypeTransientHelper.getPartyType(PartyTypeTransientHelper.java:91)
      at com.ibm.mdm.party.suspect.component.PartySuspectProcessor.getPartyType(PartySuspectProcessor.java:157)
      at com.ibm.mdm.party.suspect.component.PartySuspectProcessor.reIdentifySuspects(PartySuspectProcessor.java:178)
      at com.dwl.base.DWLCommonComponent.handleEntitySuspectsReIdentification(DWLCommonComponent.java:3803)
      at com.dwl.base.DWLCommonComponent.postExecute(DWLCommonComponent.java:551)
      at com.dwl.tcrm.common.TCRMCommonComponent.postExecute(TCRMCommonComponent.java:271)
      at com.dwl.tcrm.coreParty.controller.TCRMCorePartyTxnBean.deletePartyWithHistory(TCRMCorePartyTxnBean.java:7230)
      at com.dwl.tcrm.coreParty.controller.EJSLocalCSLTCRMCorePartyTxn_aeb50529.deletePartyWithHistory(EJSLocalCSLTCRMCorePartyTxn_aeb50529.java)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
      at java.lang.reflect.Method.invoke(Method.java:611)
      at com.dwl.base.requestHandler.DWLTxnBP.processPersistentObject(DWLTxnBP.java:310)
      at com.dwl.base.requestHandler.DWLTxnBP.execute(DWLTxnBP.java:133)
      at com.dwl.base.requestHandler.DWLTxnProcessor.processTx(DWLTxnProcessor.java:129)
      at com.dwl.unifi.tx.manager.CTxRxFacade.processTxNormal(CTxRxFacade.java:789)
      at com.dwl.unifi.tx.manager.CTxRxFacade.processTx(CTxRxFacade.java:590)
      at com.dwl.base.requestHandler.DWLRequestHandler.processTransaction(DWLRequestHandler.java:1107)
      at com.dwl.base.requestHandler.DWLRequestHandler.processTx(DWLRequestHandler.java:507)
      at com.dwl.base.requestHandler.DWLServiceControllerBase.processRequest(DWLServiceControllerBase.java:248)
      at com.dwl.base.requestHandler.beans.DWLServiceControllerBean.processRequest(DWLServiceControllerBean.java:137)
      at com.dwl.base.requestHandler.beans.EJSRemoteCSLDWLServiceController_8fd5545d.processRequest(EJSRemoteCSLDWLServiceController_8fd5545d.java)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
      at java.lang.reflect.Method.invoke(Method.java:611)
      at com.ibm.rmi.util.ProxyUtil$4.run(ProxyUtil.java:612)
      at java.security.AccessController.doPrivileged(AccessController.java:251)
      at com.ibm.rmi.util.ProxyUtil.invokeWithClassLoaders(ProxyUtil.java:608)
      at com.ibm.CORBA.iiop.ClientDelegate.invoke(ClientDelegate.java:1165)
      at $Proxy40.processRequest(Unknown Source)
      at com.dwl.base.requestHandler.beans._DWLServiceController_Stub.processRequest(_DWLServiceController_Stub.java)
      at com.ibm.mdm.ui.services.CustomerServices$2.run(CustomerServices.java:358)
      at java.security.AccessController.doPrivileged(AccessController.java:224)
      at javax.security.auth.Subject.doAs(Subject.java:495)
      at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:131)
      at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:89)
      at com.ibm.mdm.ui.services.CustomerServices.invokeBackend(CustomerServices.java:371)
      at com.ibm.mdm.ui.services.TCRMServices.invokeCustomer(TCRMServices.java:588)
      at com.ibm.mdm.ui.services.TCRMServices.invokeTCRMTxEx(TCRMServices.java:1459)
      at com.ibm.mdm.ui.services.TCRMServices.invokeTCRMTx(TCRMServices.java:1526)
      at com.dwl.datastewardship.model.Party.deletePartyWithHistory(Party.java:179)
      at pagecode.partyMaintenance.Three60View.doDeletePartyAndHistory(Three60View.java:735)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
      at java.lang.reflect.Method.invoke(Method.java:611)
      at org.apache.el.parser.AstValue.invoke(AstValue.java:159)
      at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
      at com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
      at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
      at javax.faces.component.UICommand.broadcast(UICommand.java:387)
      at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:458)
      at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:763)
      at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
      at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
      at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1657)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1597)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
      at com.ibm.mdm.ui.filter.SessionFilter.doFilter(SessionFilter.java:145)
      at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
      at com.ibm.mdm.ui.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:64)
      at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
      at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:934)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502)
      at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179)
      at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3935)
      at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276)
      at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:931)
      at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1583)
      at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:186)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:276)
      at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
      at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
      at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
      at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
      at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
      at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
      at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
      at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
      at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1604)
      26-7-12 16:13:40:296 CEST 0000001f SystemOut O ERROR - 99 READERR 1 The required field is missing.
      It reported this error after retrieving a party from MDM using the datasteward UI (which had the deletion allowed flag) and selecting delete party with history. I enabled the trace but did not see anything strange. The XML of the request was the following:

      <?xml version="1.0" encoding="UTF-8"?>
      <TCRMService xmlns="http://www.ibm.com/mdm/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/mdm/schema MDMDomains.xsd">
      <RequestControl>
      <requestID>212785919707985920</requestID>
      <DWLControl>
      <requesterName>cusadmin</requesterName>
      <requesterLocale>en</requesterLocale>
      <clientSystemName>DataStewardship</clientSystemName>
      <userRole>RoV Rules Admin</userRole>
      </DWLControl>
      </RequestControl>
      <TCRMTx>
      <TCRMTxType>deletePartyWithHistory</TCRMTxType>
      <TCRMTxObject>TCRMPartyBObj</TCRMTxObject>
      <TCRMObject>
      <CommonBObj xsi:type="TCRMPartyBObjType">
      <PartyId>1000</PartyId>
      </CommonBObj>
      </TCRMObject>
      </TCRMTx>
      </TCRMService>

      If you want the traces as well, just let me know I'll upload them but they are quite big. (especially because I enabled the trace string com.ibm.mdm.eme.core.*=all).

      The message I used with the XML tester was a bit different but with the same result:
      <?xml version="1.0" encoding="UTF-8"?>
      <TCRMService xmlns="http://www.ibm.com/mdm/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/mdm/schema MDMDomains.xsd">
      <RequestControl>
      <requestID>444444</requestID>
      <DWLControl>
      <requesterName>cusadmin</requesterName>
      <requesterLanguage>100</requesterLanguage>
      </DWLControl>
      </RequestControl>
      <TCRMTx>
      <TCRMTxType>deletePartyWithHistory</TCRMTxType>
      <TCRMTxObject>TCRMPartyBObj</TCRMTxObject>
      <TCRMObject>
      <TCRMPartyBObj>
      <PartyId>1000</PartyId>
      </TCRMPartyBObj>
      </TCRMObject>
      </TCRMTx>
      </TCRMService>

      Thanks for your time!

      Bart