code: @Override
      public void onSuccess(String response)
      throws ActivityException, ConnectionException, AdapterException {
          try {
              // set the variable value based on the unwrapped soap content
              soapResponse = getSoapResponse(response);
              Node childElem = unwrapSoapResponse(soapResponse);
              String responseXml = DomHelper.toXml(childElem);
  
              String responseVarName = getAttributeValue(RESPONSE_VARIABLE);
              if (responseVarName == null)
                  throw new AdapterException("Missing attribute: " + RESPONSE_VARIABLE);
              String responseVarType = getParameterType(responseVarName);
  
              if (!VariableTranslator.isDocumentReferenceVariable(getPackage(), responseVarType))
                  throw new AdapterException("Response variable must be a DocumentReference: " + responseVarName);
  
              if (responseVarType.equals(StringDocument.class.getName())) {
                  setParameterValueAsDocument(responseVarName, responseVarType, responseXml);
              }
              else {
                  com.centurylink.mdw.variable.VariableTranslator varTrans = VariableTranslator.getTranslator(getPackage(), responseVarType);
                  if (!(varTrans instanceof XmlDocumentTranslator))
                      throw new AdapterException("Unsupported response variable type: " + responseVarType + " (must implement XmlDocumentTranslator)");
                  XmlDocumentTranslator xmlDocTrans = (XmlDocumentTranslator) varTrans;
                  Object responseObj = xmlDocTrans.fromDomNode(childElem);
                  setParameterValueAsDocument(responseVarName, responseVarType, responseObj);
              }
          }
          catch (Exception ex) {
              throw new ActivityException(ex.getMessage(), ex);
          }
      }
docs: Overriding this method affords the opportunity to parse the response and
  populate process variables as needed.