Puede crear aplicaciones CMP para examinar y reproducir los datos que ha grabado y almacenado utilizando grabar y reproducir.
Lea el tema de concepto Grabar y reproducir.
Para obtener más información sobre estos objetos y cómo utilizarlos, consulte la API de CMP.
BrokerProxy bp = null;
try {
BrokerProxy.enableAdministrationAPITracing("C:\\AdminTrace.txt");
bp = BrokerProxy.getLocalInstance("WEB");
ExecutionGroupProxy eg = bp.getExecutionGroupByName("default");
Properties newFilterProps = new Properties();
newFilterProps.setProperty(DataCaptureEntry.PROPERTY_BROKER_NAME, "WEB");
DataCaptureEntry filterMessage = new DataCaptureEntry(newFilterProps);
DataCaptureProxy dcp = eg.getDataCapture("MYDATA", filterMessage);
String output = dcp.getDataCaptureEntryAsXml(1);
System.out.println("XML output: "+output);
int messNo = 0;
Enumeration <DataCaptureEntry> dceE = dcp.elements();
while (dceE.hasMoreElements()) {
DataCaptureEntry dce = dceE.nextElement();
System.out.print("\nMessage: "+messNo++);
Properties props = dce.getAllProperties();
String[] columns = dce.getPropertyNames();
for (int i = 0; i < columns.length; i++) {
System.out.print("\nProperty: "+columns[i]+ " Value: "+props.getProperty(columns[i]));
}
}
} catch (ConfigManagerProxyLoggedException e) {
e.printStackTrace();
} catch (ConfigManagerProxyPropertyNotInitializedException e) {
e.printStackTrace();
} finally {
if(bp != null) {
bp.disconnect();
}
}
El ejemplo siguiente muestra cómo reproducir datos.
BrokerProxy brokerProxy = null;
try {
// DataCaptureStore que contiene mensaje a reproducir
String dataCaptureStore = "MyStore";
// ID de mensaje a reproducir
String replayMsgId = "0123456789ABCDEF";
// Destino de datos en el que reproducir el mensaje
String dataDestination = "ReplayDestination";
// EG a reproducir
String replayEG = "MyExecutionGroupName";
Properties dataCaptureProps = new Properties();
// Establecer el mensaje a reproducir
dataCaptureProps.setProperty(DataCaptureEntry.PROPERTY_WMBMSG_KEY, replayMsgId);
// Establecer el destino en el que reproducir
dataCaptureProps.setProperty(AttributeConstants.DATACAPTURE_REPLAY, dataDestination);
DataCaptureEntry dataCaptureEntry = new DataCaptureEntry(dataCaptureProps );
brokerProxy = WebAdminBrokerProxy.getLocalInstance("MB8BROKER");
ExecutionGroupProxy egProxy = brokerProxy.getExecutionGroupByName(replayEG);
// Someter solicitud a EG para realizar realmente reproducción
DataCaptureProxy dataCaptureProxy = egProxy.getDataCapture(dataCaptureStore, dataCaptureEntry);
dataCaptureProxy.hasBeenPopulatedByBroker(true);
String responseBody = dataCaptureProxy.getDataCaptureEntryAsXml(1);
} catch(Exception e) {
// TODO: Handle Exception
} finally {
if (brokerProxy != null) {
brokerProxy.disconnect();
}
}