Example usage for javax.xml.transform Transformer setParameter

List of usage examples for javax.xml.transform Transformer setParameter

Introduction

In this page you can find the example usage for javax.xml.transform Transformer setParameter.

Prototype

public abstract void setParameter(String name, Object value);

Source Link

Document

Add a parameter for the transformation.

Usage

From source file:org.sapia.soto.state.cocoon.view.DomifyView.java

protected void execute(Object model, Map viewParams, ContentHandler handler) throws Throwable {

    if (_name == null) {
        _name = CocoonContext.MODEL_KEY;
    }// w  ww  .j a v a  2  s  .  com

    DOMSource src = model instanceof Node ? new DOMSource((Node) model)
            : new DOMSource(new DOMAdapter().adapt(model, _name));

    SAXResult res = new SAXResult(handler);
    Transformer tx = _fac.newTransformer();
    Iterator params = viewParams.entrySet().iterator();
    Map.Entry entry;
    while (params.hasNext()) {
        entry = (Map.Entry) params.next();
        tx.setParameter(entry.getKey().toString(), entry.getValue());
    }
    tx.transform(src, res);
}

From source file:org.springframework.integration.xml.transformer.XsltPayloadTransformer.java

private Transformer buildTransformer(Message<?> message) throws TransformerException {
    // process individual mappings
    Transformer transformer = this.templates.newTransformer();
    if (this.xslParameterMappings != null) {
        for (String parameterName : this.xslParameterMappings.keySet()) {
            Expression expression = this.xslParameterMappings.get(parameterName);
            try {
                Object value = expression.getValue(this.evaluationContext, message);
                transformer.setParameter(parameterName, value);
            } catch (Exception e) {
                if (logger.isWarnEnabled()) {
                    logger.warn("Evaluation of header expression '" + expression.getExpressionString()
                            + "' failed. The XSLT parameter '" + parameterName + "' will be skipped.");
                }//from   w ww . java2s .  co m
            }
        }
    }
    // process xslt-parameter-headers
    MessageHeaders headers = message.getHeaders();
    if (!ObjectUtils.isEmpty(this.xsltParamHeaders)) {
        for (String headerName : headers.keySet()) {
            if (PatternMatchUtils.simpleMatch(this.xsltParamHeaders, headerName)) {
                transformer.setParameter(headerName, headers.get(headerName));
            }
        }
    }
    return transformer;
}

From source file:org.toobsframework.transformpipeline.domain.ChainedXSLTransformer.java

private String transform(List inputXSLs, String inputXML, Map inputParams,
        IXMLTransformerHelper transformerHelper) throws XMLTransformerException {

    String outputXML = null;//from   w w w .java2 s .  c o m
    ByteArrayInputStream xmlInputStream = null;
    ByteArrayOutputStream xmlOutputStream = null;
    try {
        TransformerFactory tFactory = TransformerFactory.newInstance();
        setFactoryResolver(tFactory);

        if (tFactory.getFeature(SAXSource.FEATURE) && tFactory.getFeature(SAXResult.FEATURE)) {
            // Cast the TransformerFactory to SAXTransformerFactory.
            SAXTransformerFactory saxTFactory = ((SAXTransformerFactory) tFactory);

            // Create a TransformerHandler for each stylesheet.
            ArrayList tHandlers = new ArrayList();
            TransformerHandler tHandler = null;

            // Create an XMLReader.
            XMLReader reader = new SAXParser();

            // transformer3 outputs SAX events to the serializer.
            if (outputProperties == null) {
                outputProperties = OutputPropertiesFactory.getDefaultMethodProperties("html");
            }
            Serializer serializer = SerializerFactory.getSerializer(outputProperties);
            String xslFile = null;
            for (int it = 0; it < inputXSLs.size(); it++) {
                Object source = inputXSLs.get(it);
                if (source instanceof StreamSource) {
                    tHandler = saxTFactory.newTransformerHandler((StreamSource) source);
                    if (xslFile == null)
                        xslFile = ((StreamSource) source).getSystemId();
                } else {
                    //tHandler = saxTFactory.newTransformerHandler(new StreamSource(getXSLFile((String) source)));
                    tHandler = saxTFactory
                            .newTransformerHandler(uriResolver.resolve((String) source + ".xsl", ""));
                    if (xslFile == null)
                        xslFile = (String) source;
                }
                Transformer transformer = tHandler.getTransformer();
                transformer.setOutputProperty("encoding", "UTF-8");
                transformer.setErrorListener(tFactory.getErrorListener());
                if (inputParams != null) {
                    Iterator paramIt = inputParams.entrySet().iterator();
                    while (paramIt.hasNext()) {
                        Map.Entry thisParam = (Map.Entry) paramIt.next();
                        transformer.setParameter((String) thisParam.getKey(), (String) thisParam.getValue());
                    }
                }
                if (transformerHelper != null) {
                    transformer.setParameter(TRANSFORMER_HELPER, transformerHelper);
                }
                tHandlers.add(tHandler);
            }
            tHandler = null;
            for (int th = 0; th < tHandlers.size(); th++) {
                tHandler = (TransformerHandler) tHandlers.get(th);
                if (th == 0) {
                    reader.setContentHandler(tHandler);
                    reader.setProperty("http://xml.org/sax/properties/lexical-handler", tHandler);
                } else {
                    ((TransformerHandler) tHandlers.get(th - 1)).setResult(new SAXResult(tHandler));
                }
            }
            // Parse the XML input document. The input ContentHandler and output ContentHandler
            // work in separate threads to optimize performance.
            InputSource xmlSource = null;
            xmlInputStream = new ByteArrayInputStream((inputXML).getBytes("UTF-8"));
            if (log.isTraceEnabled()) {
                log.trace("Input XML:\n" + inputXML);
            }
            xmlSource = new InputSource(xmlInputStream);
            xmlOutputStream = new ByteArrayOutputStream();
            serializer.setOutputStream(xmlOutputStream);
            ((TransformerHandler) tHandlers.get(tHandlers.size() - 1))
                    .setResult(new SAXResult(serializer.asContentHandler()));

            Date timer = new Date();
            reader.parse(xmlSource);
            Date timer2 = new Date();
            outputXML = xmlOutputStream.toString("UTF-8");
            if (log.isDebugEnabled()) {
                long diff = timer2.getTime() - timer.getTime();
                log.debug("Time to transform: " + diff + " mS XSL: " + xslFile);
                if (log.isTraceEnabled()) {
                    log.trace("Output XML:\n" + outputXML);
                }
            }
        }
    } catch (IOException ex) {
        throw new XMLTransformerException(ex);
    } catch (IllegalArgumentException ex) {
        throw new XMLTransformerException(ex);
    } catch (SAXException ex) {
        throw new XMLTransformerException(ex);
    } catch (TransformerConfigurationException ex) {
        throw new XMLTransformerException(ex);
    } catch (TransformerFactoryConfigurationError ex) {
        throw new XMLTransformerException(ex);
    } catch (TransformerException ex) {
        throw new XMLTransformerException(ex);
    } finally {
        try {
            if (xmlInputStream != null) {
                xmlInputStream.close();
                xmlInputStream = null;
            }
            if (xmlOutputStream != null) {
                xmlOutputStream.close();
                xmlOutputStream = null;
            }
        } catch (IOException ex) {
        }
    }
    return outputXML;
}

From source file:org.toobsframework.transformpipeline.domain.ChainedXSLTransletTransformer.java

public String transform(List inputXSLs, String inputXML, Map inputParams,
        IXMLTransformerHelper transformerHelper) throws XMLTransformerException {

    String outputXML = null;// w  w  w  .ja  va 2 s. c  om
    ByteArrayInputStream xmlInputStream = null;
    ByteArrayOutputStream xmlOutputStream = null;
    try {
        TransformerFactory tFactory = new org.apache.xalan.xsltc.trax.TransformerFactoryImpl();
        try {
            //tFactory.setAttribute("use-classpath", Boolean.TRUE);
            tFactory.setAttribute("auto-translet", Boolean.TRUE);
        } catch (IllegalArgumentException iae) {
            log.error("Error setting XSLTC specific attribute", iae);
            throw new XMLTransformerException(iae);
        }
        setFactoryResolver(tFactory);

        TransformerFactoryImpl traxFactory = (TransformerFactoryImpl) tFactory;

        // Create a TransformerHandler for each stylesheet.
        ArrayList tHandlers = new ArrayList();
        TransformerHandler tHandler = null;

        // Create a SAX XMLReader.
        XMLReader reader = new org.apache.xerces.parsers.SAXParser();

        // transformer3 outputs SAX events to the serializer.
        if (outputProperties == null) {
            outputProperties = OutputPropertiesFactory.getDefaultMethodProperties("html");
        }
        Serializer serializer = SerializerFactory.getSerializer(outputProperties);
        for (int it = 0; it < inputXSLs.size(); it++) {
            String xslTranslet = (String) inputXSLs.get(it);
            Source source = uriResolver.resolve(xslTranslet + ".xsl", "");

            String tPkg = source.getSystemId().substring(0, source.getSystemId().lastIndexOf("/"))
                    .replaceAll("/", ".").replaceAll("-", "_");

            // Package name needs to be set for each TransformerHandler instance
            tFactory.setAttribute("package-name", tPkg);
            tHandler = traxFactory.newTransformerHandler(source);

            // Set parameters and output encoding on each handlers transformer
            Transformer transformer = tHandler.getTransformer();
            transformer.setOutputProperty("encoding", "UTF-8");
            transformer.setErrorListener(tFactory.getErrorListener());
            if (inputParams != null) {
                Iterator paramIt = inputParams.entrySet().iterator();
                while (paramIt.hasNext()) {
                    Map.Entry thisParam = (Map.Entry) paramIt.next();
                    transformer.setParameter((String) thisParam.getKey(), (String) thisParam.getValue());
                }
            }
            if (transformerHelper != null) {
                transformer.setParameter(TRANSFORMER_HELPER, transformerHelper);
            }
            tHandlers.add(tHandler);
        }
        tHandler = null;
        // Link the handlers to each other and to the reader
        for (int th = 0; th < tHandlers.size(); th++) {
            tHandler = (TransformerHandler) tHandlers.get(th);
            if (th == 0) {
                reader.setContentHandler(tHandler);
                reader.setProperty("http://xml.org/sax/properties/lexical-handler", tHandler);
            } else {
                ((TransformerHandler) tHandlers.get(th - 1)).setResult(new SAXResult(tHandler));
            }
        }
        // Parse the XML input document. The input ContentHandler and output ContentHandler
        // work in separate threads to optimize performance.
        InputSource xmlSource = null;
        xmlInputStream = new ByteArrayInputStream((inputXML).getBytes("UTF-8"));
        xmlSource = new InputSource(xmlInputStream);
        xmlOutputStream = new ByteArrayOutputStream();
        serializer.setOutputStream(xmlOutputStream);
        // Link the last handler to the serializer
        ((TransformerHandler) tHandlers.get(tHandlers.size() - 1))
                .setResult(new SAXResult(serializer.asContentHandler()));
        reader.parse(xmlSource);
        outputXML = xmlOutputStream.toString("UTF-8");
    } catch (Exception ex) {
        log.error("Error performing chained transformation: " + ex.getMessage(), ex);
        throw new XMLTransformerException(ex);
    } finally {
        try {
            if (xmlInputStream != null) {
                xmlInputStream.close();
                xmlInputStream = null;
            }
            if (xmlOutputStream != null) {
                xmlOutputStream.close();
                xmlOutputStream = null;
            }
        } catch (IOException ex) {
        }
    }
    return outputXML;
}

From source file:org.toobsframework.transformpipeline.domain.TransletTransformer.java

@SuppressWarnings("unchecked")
protected void doTransform(String xslTranslet, StreamSource xmlSource, Map params,
        IXMLTransformerHelper transformerHelper, StreamResult xmlResult) throws XMLTransformerException {

    try {//from www. j  a  v a  2s  .  c  om
        // Dont rely on the system property to get the right transformer
        TransformerFactory tFactory = new org.apache.xalan.xsltc.trax.TransformerFactoryImpl();
        // set the URI Resolver for the transformer factory      
        setFactoryResolver(tFactory);

        Source source = uriResolver.resolve(xslTranslet + ".xsl", "");

        String tPkg = source.getSystemId().substring(0, source.getSystemId().lastIndexOf("/"))
                .replaceAll("/", ".").replaceAll("-", "_");

        try {
            //tFactory.setAttribute("use-classpath", Boolean.TRUE);
            tFactory.setAttribute("auto-translet", Boolean.TRUE);
            tFactory.setAttribute("package-name", tPkg);
        } catch (IllegalArgumentException iae) {
            log.error("Error setting XSLTC specific attribute", iae);
            throw new XMLTransformerException(iae);
        }

        Transformer transformer = tFactory.newTransformer(source);

        // 2.2 Set character encoding for all transforms to UTF-8.
        transformer.setOutputProperty("encoding", "UTF-8");
        transformer.setErrorListener(tFactory.getErrorListener());

        // 2.5 Set Parameters necessary for transformation.
        if (params != null) {
            Iterator paramIt = params.entrySet().iterator();
            while (paramIt.hasNext()) {
                Map.Entry thisParam = (Map.Entry) paramIt.next();
                transformer.setParameter((String) thisParam.getKey(), (String) thisParam.getValue());
            }
        }
        if (transformerHelper != null) {
            transformer.setParameter(TRANSFORMER_HELPER, transformerHelper);
        }

        // 3. Use the Transformer to transform an XML Source and send the
        //    output to a Result object.
        transformer.transform(xmlSource, xmlResult);
    } catch (TransformerConfigurationException tce) {
        log.error(tce.toString(), tce);
        throw new XMLTransformerException(tce);
    } catch (TransformerException te) {
        log.error(te.toString(), te);
        throw new XMLTransformerException(te);
    }

}

From source file:org.wso2.carbon.registry.core.jdbc.handlers.XSLTBasedUIEnabledHandler.java

public Resource getBrowseView(String viewKey, RequestContext requestContext) throws RegistryException {

    String xslt = browseXSLTs.get(viewKey);
    if (xslt == null) {
        String msg = "Unsupported browse view: " + viewKey + ". XSLT is not registered for this view.";
        log.error(msg);/*from   w w  w  .j a va  2 s  .c  o  m*/
        throw new RegistryException(msg);
    }
    Transformer viewTransformer = getTransformer(xslt);

    ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
    Resource resource = requestContext.getRegistry().get(requestContext.getResourcePath().getPath());

    try {
        viewTransformer.setParameter("resourcePath", requestContext.getResourcePath().toString());
        viewTransformer.transform(new StreamSource(resource.getContentStream()), new StreamResult(byteOut));

    } catch (TransformerException e) {
        String msg = "Failed to generate the view UI for resource " + requestContext.getResourcePath()
                + ". XSLT transformation failed for XSLT " + xslt + ". " + e.getMessage();
        log.error(msg, e);
        throw new RegistryException(msg, e);
    }

    String content = byteOut.toString();
    resource.setContent(content);

    return resource;
}

From source file:org.wso2.carbon.registry.core.jdbc.handlers.XSLTBasedUIEnabledHandler.java

public Resource getEditView(String editViewKey, RequestContext requestContext) throws RegistryException {

    String xslt = editXSLTs.get(editViewKey);
    if (xslt == null) {
        String msg = "Unsupported edit view: " + editViewKey + ". XSLT is not registered for this view.";
        log.error(msg);//from   w w  w .j  a  v  a 2  s  . com
        throw new RegistryException(msg);
    }
    Transformer viewTransformer = getTransformer(xslt);

    if (viewTransformer == null) {
        return getRawResource(requestContext);
    }

    ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
    Resource resource = requestContext.getRegistry().get(requestContext.getResourcePath().getPath());

    try {
        viewTransformer.setParameter("resourcePath", requestContext.getResourcePath().getPath());
        viewTransformer.transform(new StreamSource(resource.getContentStream()), new StreamResult(byteOut));

    } catch (TransformerException e) {
        String msg = "Failed to generate the edit UI for resource " + requestContext.getResourcePath()
                + ". XSLT transformation failed for XSLT " + xslt + ". " + e.getMessage();
        log.error(msg, e);
        throw new RegistryException(msg, e);
    }

    String content = byteOut.toString();
    resource.setContent(content);

    return resource;
}

From source file:org.wso2.carbon.wsdl2form.Util.java

/**
 * Transform based on parameters//from ww w.jav  a  2  s  .c  om
 *
 * @param xmlIn    XML
 * @param xslIn    XSL
 * @param result   Result
 * @param paramMap Parameter map
 * @throws javax.xml.transform.TransformerException
 *          will be thrown
 */
public static void transform(Source xmlIn, Source xslIn, Result result, Map paramMap)
        throws TransformerException {
    try {
        TransformerFactory transformerFactory = new TransformerFactoryImpl();
        Transformer transformer = transformerFactory.newTransformer(xslIn);
        if (paramMap != null) {
            Set set = paramMap.keySet();
            for (Object aSet : set) {
                if (aSet != null) {
                    String key = (String) aSet;
                    String value = (String) paramMap.get(key);
                    transformer.setParameter(key, value);
                }
            }
        }
        transformer.transform(xmlIn, result);
    } catch (TransformerException e) {
        log.error(e.getMessage(), e);
        throw e;
    }
}

From source file:org.wso2.carbon.wsdl2form.Util.java

public static void transform(Source xmlIn, Source xslIn, Result result, Map paramMap, URIResolver uriResolver)
        throws TransformerException {
    try {//  w  ww  .ja  v a2s  .c  o  m
        TransformerFactory transformerFactory = new TransformerFactoryImpl();
        transformerFactory.setURIResolver(uriResolver);
        Transformer transformer = transformerFactory.newTransformer(xslIn);
        if (paramMap != null) {
            Set set = paramMap.keySet();
            for (Object aSet : set) {
                String key = (String) aSet;
                String value = (String) paramMap.get(key);
                transformer.setParameter(key, value);
            }
        }
        transformer.transform(xmlIn, result);
    } catch (TransformerException e) {
        log.error(e.getMessage(), e);
        throw e;
    }
}

From source file:org.wso2.codegen.service.ajax.DynamicCodeGeneratorService.java

public String generate(String serviceName) throws AxisFault {

    MessageContext currentMessageContext = MessageContext.getCurrentMessageContext();
    AxisConfiguration axisConfiguration = currentMessageContext.getConfigurationContext()
            .getAxisConfiguration();//from   ww w .  j a v  a  2 s  .  com
    AxisService service = axisConfiguration.getService(serviceName);
    if (service == null) {
        String message = "Service " + serviceName + " cannot be found.";
        log.error(message);
        throw new AxisFault(message);
    }
    Parameter enableMTOM = service.getParameter(Constants.Configuration.ENABLE_MTOM);
    if (enableMTOM != null && enableMTOM.getValue().equals("true")) {
        throw new AxisFault("Try It feature is not available for MTOM enabled services");
    }

    Object parameterValue = service.getParameterValue("WSDLSupplier");
    if (parameterValue != null) {
        String message = "RPC/ENC WSDL found. Axis2 does not support RPC/ENC encoding scheme";
        log.warn(message);
        throw new AxisFault(message);
    }

    String uuidTryit;
    WSDLMetaDataFactory wsdlMetaDataFactory = WSDLMetaDataFactory.getFactory("2.0", serviceName,
            MessageContext.getCurrentMessageContext());

    WSDLMetaDataFactory.UniqueOutputDirInfo uniqueOutputDirInfo = wsdlMetaDataFactory
            .generateUniqueCodegenOutputDir();

    uuidTryit = uniqueOutputDirInfo.getUuid();

    String outputDir = wsdlMetaDataFactory.generateUniqueDir("dynamic_codegen", uniqueOutputDirInfo)
            .getOutputDir();

    String wsdlFileURI = wsdlMetaDataFactory.getWSDLFileURI(outputDir);

    //Generating the .sig foramat using wsdl2sig.xslt to intermediate DOM Document. This doc will be
    // used to transformed with tryit.xslt and jsstub.xslt.

    try {
        InputStream wsdl2InStream = new FileInputStream(new File(wsdlFileURI));
        InputStream wsdl2sigXSLTStream = getClass().getClassLoader().getResourceAsStream("wsdl2sig.xslt");

        Source wsdl2Source = new StreamSource(wsdl2InStream);
        Source wsdl2sigXSLTSource = new StreamSource(wsdl2sigXSLTStream);

        DocumentBuilder docB = DocumentBuilderFactory.newInstance().newDocumentBuilder();
        Document doc = docB.newDocument();

        //do the first transformation
        Result result = new DOMResult(doc);
        Transformer transformer = TransformerFactory.newInstance().newTransformer(wsdl2sigXSLTSource);
        transformer.transform(wsdl2Source, result);

        ///////////////////////////////////////////////////
        //            System.out.println(DOM2Writer.nodeToString(doc));
        ////////////////////////////////////////////////////

        DOMSource xmlSource = new DOMSource(doc);

        Map fileResourcesMap = (Map) MessageContext.getCurrentMessageContext().getConfigurationContext()
                .getProperty(WSO2Constants.FILE_RESOURCE_MAP);

        if (fileResourcesMap == null) {
            fileResourcesMap = new Hashtable();
            MessageContext.getCurrentMessageContext().getConfigurationContext()
                    .setProperty(WSO2Constants.FILE_RESOURCE_MAP, fileResourcesMap);
        }

        String uuidJsstub;
        WSDLMetaDataFactory.UniqueOutputDirInfo jsstubUniqueOutputDirInfo = wsdlMetaDataFactory
                .generateUniqueCodegenOutputDir();
        uuidJsstub = jsstubUniqueOutputDirInfo.getUuid();

        String jstubOutputDir = wsdlMetaDataFactory
                .generateUniqueDir("dynamic_codegen", jsstubUniqueOutputDirInfo).getOutputDir();
        File jstubOutputDirFile = new File(jstubOutputDir);
        jstubOutputDirFile.mkdirs();
        File jsStubFle = new File(jstubOutputDir, serviceName + ".stub.js");

        OutputStream jsStubOutputStream = new FileOutputStream(jsStubFle);
        Result jsStubResult = new StreamResult(jsStubOutputStream);
        InputStream jsStubXSLTStream = getClass().getClassLoader().getResourceAsStream("jsstub.xslt");
        Source jsStubXSLSource = new StreamSource(jsStubXSLTStream);
        transformer = TransformerFactory.newInstance().newTransformer(jsStubXSLSource);
        transformer.transform(xmlSource, jsStubResult);

        FileFilter jsStubFileFilter = new JSStubFilter();
        String absolutePath = null;
        File[] files0 = jstubOutputDirFile.listFiles(jsStubFileFilter);
        if ((files0 != null) && (files0[0] != null) && (files0[0].getAbsoluteFile() != null)) {
            absolutePath = files0[0].getAbsoluteFile().getAbsolutePath();
            fileResourcesMap.put(uuidJsstub, absolutePath);
        }

        if (absolutePath == null) {
            throw new AxisFault(DynamicCodeGeneratorService.class.getName() + " cannot continue"
                    + " since an instance of jsstub.xslt is not available");
        }

        InputStream tryItXSLTStream = getClass().getClassLoader().getResourceAsStream("tryit.xslt");
        Source tryItXSLSource = new StreamSource(tryItXSLTStream);
        File tryItOutFile = new File(outputDir, serviceName + ".html");
        OutputStream tryItOutFileStream = new FileOutputStream(tryItOutFile);
        Result tryItResult = new StreamResult(tryItOutFileStream);
        transformer = TransformerFactory.newInstance().newTransformer(tryItXSLSource);
        transformer.setParameter("wsrequest-location", "js/WSRequest.js");
        transformer.setParameter("stub-location", "filedownload?id=" + uuidJsstub);

        String injectValue = "<div>"
                + "<h4><a href=\"#\" onClick=\"javascript:top.showServiceInitializer(); return false;\">Services</a>&nbsp;&gt;&nbsp;"
                + "<a href=\"#\" onClick=\"javascript:top.listServiceData('" + serviceName
                + "'); return false;\">" + serviceName + "</a>&nbsp;&gt;&nbsp;" + "Try Web Service" + "</h4>"
                + "</div>";

        transformer.setParameter("show-alternate", "false");
        transformer.setParameter("breadcrumbs", injectValue);
        transformer.transform(xmlSource, tryItResult);

        FileFilter tryItFileFilter = new TryItFilter();
        File[] files1 = new File(outputDir).listFiles(tryItFileFilter);
        if ((files1 != null) && (files1[0] != null) && (files1[0].getAbsoluteFile() != null)) {
            fileResourcesMap.put(uuidTryit, files1[0].getAbsoluteFile().getAbsolutePath());
        }
        log.debug("Try it page has been generated for the service: " + serviceName);
        return "filedownload" + "?id=" + uuidTryit;
    } catch (Exception e) {
        log.error(e);
        throw AxisFault.makeFault(e);
    }

}