134 Problem Determination Using Self-Managing Autonomic Technology
}
call.setMethodName("sendEvent");
if (_header != null) {
call.setHeader(_header);
}
call.setEncodingStyleURI(Constants.NS_URI_LITERAL_XML);
call.setTargetObjectURI(targetObjectURI);
Vector params = new Vector();
Parameter cbeXMLParam = new Parameter("cbeXML",
org.w3c.dom.Element.class, cbeXML,
Constants.NS_URI_LITERAL_XML);
params.addElement(cbeXMLParam);
call.setParams(params);
Response resp = call.invoke(getURL(), SOAPActionURI);
//Check the response.
if (resp.generatedFault()) {
Fault fault = resp.getFault();
call.setFullTargetObjectURI(targetObjectURI);
throw new SOAPException(fault.getFaultCode(), fault
.getFaultString());
}
}
public void setHeader(Header header) {
_header = header;
}
public synchronized void sendEvent(org.w3c.dom.Element cbeXML)
throws Exception {
// delegate to method sendEvent_
sendEvent_(cbeXML);
return;
}
protected Call createCall() {
SOAPHTTPConnection soapHTTPConnection = new SOAPHTTPConnection();
if (setTcpNoDelayMethod != null) {
try {
setTcpNoDelayMethod.invoke(soapHTTPConnection,
new Object[] { Boolean.TRUE });
} catch (Exception ex) {
}
}
Call call = new Call();
call.setSOAPTransport(soapHTTPConnection);
Chapter 4. Generic Log Adapter 135
SOAPMappingRegistry smr = call.getSOAPMappingRegistry();
return call;
}
public void sendEvent(CommonBaseEvent arg0) throws Exception {
// convert the cbe to an XML element and then send that out using the
// primary method
sendEvent(EventUtils.cbe2Element(arg0));
}
}
4.5.2 Testing the custom outputter
To test the custom outputter, we need to create an adapter configuration file that
specifies the executable class of the custom outputter.
In order to test our ITSOSHIMOutputter, we created an adapter configuration file
and configured the outputter component with
com.ibm.itso.sg246665.outputters.ITSOSHIMOutputter.
Figure 4-38 shows the adapter configuration file using the ITSOSHIMOutputter.
Figure 4-38 Adapter configuration file using ITSOSHIMOutputter
136 Problem Determination Using Self-Managing Autonomic Technology
The Outputter element in context instance does not require any properties. The
Output Type is set to undeclared, as shown in Figure 4-39.
Figure 4-39 Context Instance Outputter element for ITSOSHIMOutputter
After the adapter configuration file is created, it needs to be deployed using one
of the methods described in 4.4, “Deploying and running the adapter
configuration file” on page 121.
Due to the ITSOSHIMOutputter custom outputter functionality, it also requires the
following libraries in addition to the libraries required by the Generic Log Adapter
Runtime. The following JAR files must be included in the CLASSPATH to run the
Generic Log Adapter Runtime to run the adapter file using the
ITSOSHIMOutputter. We include these libraries in the examples provided with
this book. For details, refer to Appendix A, “Additional material” on page 379.
򐂰 awp-common.jar
򐂰 j2ee.jar
򐂰 mail.jar
򐂰 soap.jar
Note: The libraries listed in this section are required for the
ITSOSHIMOutputter. Make sure to include all the libraries required for your
custom outputter in the CLASSPATH of the Generic Log Adapter Runtime.

Get Problem Determination Using Self-Managing Autonomic Technology now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.