当前位置: 首页>>代码示例>>Java>>正文


Java XmlUtil.newTransformer方法代码示例

本文整理汇总了Java中com.sun.xml.internal.ws.util.xml.XmlUtil.newTransformer方法的典型用法代码示例。如果您正苦于以下问题:Java XmlUtil.newTransformer方法的具体用法?Java XmlUtil.newTransformer怎么用?Java XmlUtil.newTransformer使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.sun.xml.internal.ws.util.xml.XmlUtil的用法示例。


在下文中一共展示了XmlUtil.newTransformer方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: writeTo

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
public void writeTo(SOAPMessage saaj) throws SOAPException {
        try {
            // TODO what about in-scope namespaces
            // Not very efficient consider implementing a stream buffer
            // processor that produces a DOM node from the buffer.
            Transformer t = XmlUtil.newTransformer();
            SOAPHeader header = saaj.getSOAPHeader();
            if (header == null)
                header = saaj.getSOAPPart().getEnvelope().addHeader();
// TODO workaround for oracle xdk bug 16555545, when this bug is fixed the line below can be
// uncommented and all lines below, except the catch block, can be removed.
//            t.transform(epr.asSource(localName), new DOMResult(header));
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            XMLStreamWriter w = XMLOutputFactory.newFactory().createXMLStreamWriter(baos);
            epr.writeTo(localName, w);
            w.flush();
            ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
            DocumentBuilderFactory fac = DocumentBuilderFactory.newInstance();
            fac.setNamespaceAware(true);
            Node eprNode = fac.newDocumentBuilder().parse(bais).getDocumentElement();
            Node eprNodeToAdd = header.getOwnerDocument().importNode(eprNode, true);
            header.appendChild(eprNodeToAdd);
        } catch (Exception e) {
            throw new SOAPException(e);
        }
    }
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:27,代码来源:EPRHeader.java

示例2: createDOM

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
private Document createDOM(SDDocument doc) {
    // Get infoset
    ByteArrayBuffer bab = new ByteArrayBuffer();
    try {
        doc.writeTo(null, resolver, bab);
    } catch (IOException ioe) {
        throw new WebServiceException(ioe);
    }

    // Convert infoset to DOM
    Transformer trans = XmlUtil.newTransformer();
    Source source = new StreamSource(bab.newInputStream(), null); //doc.getURL().toExternalForm());
    DOMResult result = new DOMResult();
    try {
        trans.transform(source, result);
    } catch(TransformerException te) {
        throw new WebServiceException(te);
    }
    return (Document)result.getNode();
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:21,代码来源:AbstractSchemaValidationTube.java

示例3: MexEntityResolver

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
public MexEntityResolver(List<? extends Source> wsdls) throws IOException {
    Transformer transformer = XmlUtil.newTransformer();
    for (Source source : wsdls) {
        XMLStreamBufferResult xsbr = new XMLStreamBufferResult();
        try {
            transformer.transform(source, xsbr);
        } catch (TransformerException e) {
            throw new WebServiceException(e);
        }
        String systemId = source.getSystemId();

        //TODO: can we do anything if the given mex Source has no systemId?
        if(systemId != null){
            SDDocumentSource doc = SDDocumentSource.create(JAXWSUtils.getFileOrURL(systemId), xsbr.getXMLStreamBuffer());
            this.wsdls.put(systemId, doc);
        }
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:19,代码来源:MexEntityResolver.java

示例4: writeTo

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
public void writeTo(SOAPMessage saaj) throws SOAPException {
        try {
            // TODO what about in-scope namespaces
            // Not very efficient consider implementing a stream buffer
            // processor that produces a DOM node from the buffer.
            Transformer t = XmlUtil.newTransformer();
            SOAPHeader header = saaj.getSOAPHeader();
            if (header == null)
                header = saaj.getSOAPPart().getEnvelope().addHeader();
// TODO workaround for oracle xdk bug 16555545, when this bug is fixed the line below can be
// uncommented and all lines below, except the catch block, can be removed.
//            t.transform(epr.asSource(localName), new DOMResult(header));
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            XMLStreamWriter w = XMLOutputFactory.newFactory().createXMLStreamWriter(baos);
            epr.writeTo(localName, w);
            w.flush();
            ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
            DocumentBuilderFactory fac = XmlUtil.newDocumentBuilderFactory(false);
            fac.setNamespaceAware(true);
            Node eprNode = fac.newDocumentBuilder().parse(bais).getDocumentElement();
            Node eprNodeToAdd = header.getOwnerDocument().importNode(eprNode, true);
            header.appendChild(eprNodeToAdd);
        } catch (Exception e) {
            throw new SOAPException(e);
        }
    }
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:27,代码来源:EPRHeader.java

示例5: getPayload

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
public Source getPayload() {
    assert (!(payloadSrc instanceof DOMSource));
    try {
        Transformer transformer = XmlUtil.newTransformer();
        DOMResult domResult = new DOMResult();
        transformer.transform(payloadSrc, domResult);
        DOMSource dom = new DOMSource(domResult.getNode());
        lm = new DOMLogicalMessageImpl((DOMSource) dom);
        payloadSrc = null;
        return dom;
    } catch (TransformerException te) {
        throw new WebServiceException(te);
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:15,代码来源:LogicalMessageImpl.java

示例6: writeTo

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
public void writeTo(SOAPMessage saaj) throws SOAPException {
    try {
        // TODO what about in-scope namespaces
        // Not very efficient consider implementing a stream buffer
        // processor that produces a DOM node from the buffer.
        Transformer t = XmlUtil.newTransformer();
        SOAPHeader header = saaj.getSOAPHeader();
        if (header == null)
            header = saaj.getSOAPPart().getEnvelope().addHeader();
        t.transform(epr.asSource(localName), new DOMResult(header));
    } catch (Exception e) {
        throw new SOAPException(e);
    }
}
 
开发者ID:alexkasko,项目名称:openjdk-icedtea7,代码行数:15,代码来源:EPRHeader.java

示例7: generateHandlerChainFile

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
private void generateHandlerChainFile(Element hChains, String name) {
    String hcName = getHandlerConfigFileName(name);

    File packageDir = DirectoryUtil.getOutputDirectoryFor(name, destDir);
    File hcFile = new File(packageDir, hcName);

    options.addGeneratedFile(hcFile);

    try {
        IndentingWriter p =
            new IndentingWriter(
                new OutputStreamWriter(new FileOutputStream(hcFile)));
        Transformer it = XmlUtil.newTransformer();

        it.setOutputProperty(OutputKeys.METHOD, "xml");
        it.setOutputProperty(OutputKeys.INDENT, "yes");
        it.setOutputProperty(
            "{http://xml.apache.org/xslt}indent-amount",
            "2");
        it.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
        it.transform( new DOMSource(hChains), new StreamResult(p) );
        p.close();
    } catch (Exception e) {
        throw new GeneratorException(
                "generator.nestedGeneratorError",
                e);
    }
}
 
开发者ID:alexkasko,项目名称:openjdk-icedtea7,代码行数:29,代码来源:GeneratorBase.java

示例8: writeTo

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
/**
 * Convert the object to a byte stream
 */
public void writeTo(Object obj, String mimeType, OutputStream os)
    throws IOException {

    if (!(obj instanceof DataSource || obj instanceof Source || obj instanceof String)) {
         throw new IOException("Invalid Object type = "+obj.getClass()+
            ". XmlDataContentHandler can only convert DataSource|Source|String to XML.");
    }

    ContentType ct = new ContentType(mimeType);
    if (!isXml(ct)) {
        throw new IOException(
            "Invalid content type \"" + mimeType + "\" for XmlDataContentHandler");
    }

    String charset = ct.getParameter("charset");
    if (obj instanceof String) {
        String s = (String) obj;
        if (charset == null) {
            charset = "utf-8";
        }
        OutputStreamWriter osw = new OutputStreamWriter(os, charset);
        osw.write(s, 0, s.length());
        osw.flush();
        return;
    }

    Source source = (obj instanceof DataSource)
            ? (Source)getContent((DataSource)obj) : (Source)obj;
    try {
        Transformer transformer = XmlUtil.newTransformer();
        if (charset != null) {
            transformer.setOutputProperty(OutputKeys.ENCODING, charset);
        }
        StreamResult result = new StreamResult(os);
        transformer.transform(source, result);
    } catch (Exception ex) {
        throw new IOException(
            "Unable to run the JAXP transformer in XmlDataContentHandler "
                + ex.getMessage());
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:45,代码来源:XmlDataContentHandler.java

示例9: createSourceReader

import com.sun.xml.internal.ws.util.xml.XmlUtil; //导入方法依赖的package包/类
public static XMLStreamReader createSourceReader(Source source, boolean rejectDTDs, String charsetName) {
    try {
        if (source instanceof StreamSource) {
            StreamSource streamSource = (StreamSource) source;
            InputStream is = streamSource.getInputStream();

            if (is != null) {
                // Wrap input stream in Reader if charset is specified
                if (charsetName != null) {
                    return XMLStreamReaderFactory.create(
                        source.getSystemId(), new InputStreamReader(is, charsetName), rejectDTDs);
                }
                else {
                    return XMLStreamReaderFactory.create(
                        source.getSystemId(), is, rejectDTDs);
                }
            }
            else {
                Reader reader = streamSource.getReader();
                if (reader != null) {
                    return XMLStreamReaderFactory.create(
                        source.getSystemId(), reader, rejectDTDs);
                }
                else {
                    return XMLStreamReaderFactory.create(
                        source.getSystemId(), new URL(source.getSystemId()).openStream(), rejectDTDs );
                }
            }
        }
        else if (source.getClass() == fastInfosetSourceClass) {
            return FastInfosetUtil.createFIStreamReader((InputStream)
                fastInfosetSource_getInputStream.invoke(source));
        }
        else if (source instanceof DOMSource) {
            DOMStreamReader dsr =  new DOMStreamReader();
            dsr.setCurrentNode(((DOMSource) source).getNode());
            return dsr;
        }
        else if (source instanceof SAXSource) {
            // TODO: need SAX to StAX adapter here -- Use transformer for now
            Transformer tx =  XmlUtil.newTransformer();
            DOMResult domResult = new DOMResult();
            tx.transform(source, domResult);
            return createSourceReader(
                new DOMSource(domResult.getNode()),
                rejectDTDs);
        }
        else {
            throw new XMLReaderException("sourceReader.invalidSource",
                    source.getClass().getName());
        }
    }
    catch (Exception e) {
        throw new XMLReaderException(e);
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:57,代码来源:SourceReaderFactory.java


注:本文中的com.sun.xml.internal.ws.util.xml.XmlUtil.newTransformer方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。