IBM webMethods Hybrid Integration

IBM webMethods Hybrid Integration

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.



#Automation


#Applicationintegration
#webMethods
#Integration
 View Only
  • 1.  reading a Channel's Dead Event Store setting

    Posted 10/26/17 07:23 AM

    Hi,

    I know I’am able to create a Channel with a Dead Event Store by setting its channel attributes with com.pcbsys.nirvana.client.nChannelAttributes.setDeadEventHandler

    However I’m not able to find any direct counterpart to get the Dead Event Store settings from an existing Channel!

    Does anyone know if there is an indirect way to get this (through the Admin API or other)?

    I must be possible as the Enterprise Manager gives that information directly.

    (checked docs from 9.9, 9.12 and 10.1).

    Best Regards,


    #Universal-Messaging-Broker
    #webMethods
    #Integration-Server-and-ESB


  • 2.  RE: reading a Channel's Dead Event Store setting

    Posted 10/26/17 06:10 PM

    You could look into EM to see what APIs it uses.


    #Integration-Server-and-ESB
    #Universal-Messaging-Broker
    #webMethods


  • 3.  RE: reading a Channel's Dead Event Store setting

    Posted 11/20/17 01:27 PM

    You have to use the nAdmin API, this information is not available on the client API:

    nLeafNode com.pcbsys.nirvana.nAdminAPI.nLeafNode.findDeadEventStore()

    
    import com.wm.app.b2b.server.ServiceException;
    import com.pcbsys.nirvana.client.nIllegalArgumentException;
    import com.pcbsys.nirvana.client.nSessionAttributes;
    import com.pcbsys.nirvana.nAdminAPI.nAdminIllegalArgumentException;
    import com.pcbsys.nirvana.nAdminAPI.nLeafNode;
    import com.pcbsys.nirvana.nAdminAPI.nRealmNode;
    
    public static final void getChannelInfo(IData pipeline) throws ServiceException
    {
    nRealmNode             nrm = null; 
    nLeafNode             leaf = null;
    nLeafNode             dsel = null;
    
    IDataCursor pipelineInCursor = pipeline.getCursor();
    String  realm = IDataUtil
    .getString(pipelineInCursor, "realm" );
    String  name  = IDataUtil
    .getString(pipelineInCursor, "channel" );
    pipelineInCursor.destroy();
    
    try
    {
    nrm = new nRealmNode(new nSessionAttributes( realm ));
    nrm.waitForEntireNameSpace(1000);
    leaf = (nLeafNode) nrm.findNode(name);
    dsel = leaf.findDeadEventStore();
    
    }
    catch (nIllegalArgumentException 
    | nAdminIllegalArgumentException e)
    { throw new ServiceException(e); }
    catch (Exception e) { throw new ServiceException(e); }
    
    IDataCursor pipelineOutCursor = pipeline.getCursor();     
    if (dsel != null)
    {
    IDataUtil.put( pipelineOutCursor, 
    "deadEventStore", 
    String.valueOf(dsel.getAbsolutePath()));
    }
    pipelineOutCursor.destroy();
    
    
    }

    #Integration-Server-and-ESB
    #Universal-Messaging-Broker
    #webMethods