code: @Override
      public String getXml(XmlObject xml, Map<String, String> metaInfo) throws ServiceException {
          try {
              Package pkg = getPkg(metaInfo);
              JSONObject jsonObj = null;
              if (xml != null)
                  jsonObj = ((Jsonable)getJaxbTranslator(pkg).realToObject(xml.xmlText())).getJson();
  
              return getJson(jsonObj, metaInfo);
          }
          catch (Exception e) {
              throw new ServiceException(e.getMessage());
          }
      }
docs: If the expected response back from the getJson() method is not null, then need to override getXml() in
  concrete service class to convert to XML response.  Steps would include calling super.getXml(), then creating
  new JSON object specific to the expected Jsonable class for the response, and then calling
  JaxbTranslator.realToString(JsonableObject) to marshall it and get the XML string back to return.
  
  Here's an example
  
  @Override
  public String getXml(XmlObject xml, Map<String, String> metaInfo) throws ServiceException {
  String response = super.getXml(xml, metaInfo);
  if (response != null) {
  try {
  response = getJaxbTranslator(getPkg(metaInfo)).realToString(new Employee(new JSONObject(response)));
  }
  catch (Exception e) {
  throw new ServiceException(e.getMessage());
  }
  }
  return response;