Как преобразовать байтовый массив сообщения SOAP в необработанный XML в Java

Я работаю над веб-сервисом, сервисы общаются друг с другом с помощью SOAPMessage (SOAP XML). SOAPMessage входит в мой метод как байтовый массив

public void process(byte xmlByteArray[]){ ... ..... }

мне нужно преобразовать этот байтовый массив в необработанный XML, чтобы я мог обработать его с помощью JDOM.

Вы знаете какое-нибудь решение этой проблемы?

3 ответа

Решение
SAXBuilder builder = new SAXBuilder();
Document document = builder.build(new ByteArrayInputStream(xmlByteArray));

См. http://www.java2s.com/Code/Java/XML/ReadanXMLdocumentusingJDOM.htm

Попробуй это:

public static Document byteArrayToDocument( final byte[] byteArray ) throws IOException, SAXException,
        ParserConfigurationException
{
     final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
     final DocumentBuilder builder = factory.newDocumentBuilder();
     return builder.parse( new ByteArrayInputStream( byteArray ) );
}

Вот как это сделать в VTD-XML

импорт com.ximpleware.*;

public class readBytes{

    public static void main(String[] s} throws VTDException{
        VTDGen vg = new VTDGen();
        //get XML Byte array here
        vg.setDoc(xmlByteArray);
        vg.parse();
        VTDNav vn = vg.getNav();
    }
}
Другие вопросы по тегам