Skip to Content
Former Member
Mar 28, 2012 at 06:17 AM

StandAlone MDM Java Job for syndication



i wanted to use a standalone job for syndicating MDM records with specific port (MDM 7.1 SP08). I implemented the syndication as follows:

AddSyndicationRecordIdsCommand command = null;        try{            command = new AddSyndicationRecordIdsCommand(getMDMAccess().getUSC());            command.setSession(getMDMAccess().getSession());            command.setRemoteSystemId(getMDMAccess().getSchema().getRemoteSystemId(remoteSystemId));            command.setPortId(getMDMAccess().getSchema().getPortId(portId, remoteSystemId, portType));            command.setFilePrefix(filePrefix);            command.setRecordIds(recordIds);            // execute command            command.execute();        } catch (CommandException e){            throw new MDMOperationException("CommandException while syndicating port", e);        } catch (SessionException e) {            throw new MDMOperationException("SessionException while syndicating port", e);        } catch (ConnectionException e) {            throw new MDMOperationException("ConnectionException while syndicating port", e);        }

I already debugged everything so that I'm sure that all parameters are filled fine. The code snippet is also not throwing any exception. When I am in debugging mode and going slowly through the code everything is fine and the 4 selected record ids will be syndicated with port. On running without debugging (but also in eclipse) or as a stand alone java job, the syndication is executed succesfully, but MDM log is saying that no Record was marked (see message below).

<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="MDM_Log.xsl"?><MDM_Log version="1.0" type="Export">    <Open ts-long="15:48:27 GMT, Tuesday, March 27, 2012" ts="2012/03/27 15:48:27.487 GMT" "host=example" compile-type="WIN64_RELEASE">        <Trace ts="2012/03/27 15:48:27.503 GMT" tid="2704" entry-no="246">Syndicating to port #83 (MDM_PRT_OUT), agency is #2 (RSY)</Trace>        <Trace ts="2012/03/27 15:48:27.534 GMT" tid="2704" entry-no="247">Syndication manager has successfully connected to a port.</Trace>        <Trace ts="2012/03/27 15:48:27.534 GMT" tid="2704" entry-no="248">Syndication manager has executed syndication query. 0 records found</Trace>        <Trace ts="2012/03/27 15:48:27.659 GMT" tid="2704" entry-no="249">Syndication manager has exported the data to a temp location.</Trace>        <Trace ts="2012/03/27 15:48:27.690 GMT" tid="2704" entry-no="250">Export succeeded.</Trace>    </Open></MDM_Log>

I also found out that this behaviour happens in debugging mode too, when I am going through faster (e.g. running through after one breakpoint). Did anyone faced this issue too? What can be wrong with this? I am quite sure, that in this case the same 4 records are sent with AddSyndicationRecordIdsCommand as before.

Best regards,