Use a custom Java class to implement custom error checking.
package com.sybase.sup.sap3; import com.sap.conn.jco.JCoFunction; import com.sybase.vader.core.OperationHandlerBase; public abstract class SAPOperationHandler extends OperationHandlerBase { /** * * @param f - JCO function that has already been executed. * Use the JCO API to retrieve returned values and * determine if the RFC has executed successfully. * * Throw OHException to return an error. * Call OHLog.log() as often as needed to return * warnings and other informational messages. */ public void resultCheck(JCoFunction f) { } /** * @param cause Exception thrown by the call to the EIS * * @param f - JCO function that has already been executed. * Use the JCO API to retrieve returned values and * determine if the RFC has executed successfully. * * Throw OHException to return an error. * Call OHLog.log() as often as needed to return warnings * and other informational messages. */ public void onError(Throwable cause, JCoFunction f) { } }
package com.sybase.sup.ws.soap; import com.sybase.vader.core.OperationHandlerBase; public abstract class SoapOperationHandler extends OperationHandlerBase { /** * * @param response the SOAP Envelope response from * a web service execute. * Use the SOAP API to retrieve values and determine * if the SOAP request has executed successfully. * * @param request the SOAP Envelope request sent to * the web service. * Use the SOAP API to retrieve values. * * Throw OHException to return an error. * Call OHLog.log() as often as needed to return warnings * and other informational messages. * */ public void resultCheck( javax.xml.soap.SOAPEnvelope response, javax.xml.soap.SOAPEnvelope request) { } /** * @param cause Exception thrown by the call to the EIS * * @param request the SOAP Envelope request sent to the * web service. * Use the SOAP API to retrieve values. * * Throw OHException to return an error. * Call OHLog.log() as often as needed to return warnings * and other informational messages. * */ public void onError(Throwable cause, javax.xml.soap.SOAPEnvelope request) { } }
package com.sybase.sup.ws.rest; import java.util.List; import com.sybase.vader.core.OperationHandlerBase; import java.net.URL; public abstract class RestOperationHandler extends OperationHandlerBase{ public RestOperationHandler () { super(); } /** * REST Result Check. * * @param responseBody HTTP response body. * * @param responseHeaders HTTP response headers in the form * {{header1,value1}, {header2,value2}, ...}. * * @param httpStatusCode HTTP status code. * * @param url HTTP URL. * * @param requestBody HTTP request body. * * @param requestHeaders HTTP request headers in the form * {{header1,value1}, {header2,value2}, ...}. * * Throw OHException to return an error. * Call OHLog.log() as often as needed to return warnings * and other informational messages. * **/ public void resultCheck( String responseBody, List<List<String>> responseHeaders, int httpStatusCode, URL url, String requestBody, List<List<String>> requestHeaders) { } /** * REST On Error * Note that errors are virtually never thrown by REST. * Instead, HTTP Error codes are returned. * The Result Check method can handle these codes * before any exception is thrown by Data Services. * * @param cause Exception thrown by the call to the EIS * * @param url HTTP URL. * * @param requestBody HTTP request body. * * @param requestHeaders HTTP request headers in the form * {{header1,value1}, {header2,value2}, ...}. * * @return Result Checker Return * * Throw OHException to return an error. * Call OHLog.log() as often as needed to return warnings * and other informational messages. * */ public void onError(Throwable cause, URL url, String requestBody, List<List<String>> requestHeaders) { } }
Result checkers depend on the Unwired Server sup-ds.jar file. For example, <UnwiredPlatform_InstallDir>\Servers\UnwiredServer\lib\ext\sup-ds.jar.