Добавление оформления XML в мыльное сообщение

1

Я пытаюсь добавить XML-декларацию для ex: <?xml version="1.0" encoding="utf-8"?> начало этого сообщения о мыле. Может ли кто-нибудь помочь мне в том, как это можно сделать?

 try {
            // Create SOAP Connection
            SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();
            SOAPConnection soapConnection = soapConnectionFactory.createConnection();

            // Send SOAP Message to SOAP Server
            String url = "http://ws.cdyne.com/emailverify/Emailvernotestemail.asmx";
            SOAPMessage soapResponse = soapConnection.call(createSOAPRequest(), url);

            // Process the SOAP Response
            printSOAPResponse(soapResponse);

            soapConnection.close();
        } catch (Exception e) {
            System.err.println("Error occurred while sending SOAP Request to Server");
            e.printStackTrace();
        }
    }

    private static SOAPMessage createSOAPRequest() throws Exception {
        MessageFactory messageFactory = MessageFactory.newInstance();
        SOAPMessage soapMessage = messageFactory.createMessage();
        SOAPPart soapPart = soapMessage.getSOAPPart();
        SOAPHeader header = soapMessage.getSOAPHeader();
  • 0
    soapMessage.setProperty (SOAPMessage.WRITE_XML_DECLARATION, Boolean.TRUE) должен позволить вам сделать это
Теги:
soap
soap-client

2 ответа

2
Лучший ответ

Вы должны установить свойство для сообщения SOAP.

soapMessage.setProperty(SOAPMessage.WRITE_XML_DECLARATION, "true")

Этот код должен сделать это.

Вот ссылка на документацию setProperty(String property, Object value).

  • 0
    Как я могу сделать печать отчета, который будет включать весь код? Заголовки и т.д? При необходимости я могу представить весь свой код, я могу напечатать структуру мыла, но не содержимое headers.addHeader (,).
  • 0
    Вы можете сделать что-то вроде: ByteArrayOutputStream baos = new ByteArrayOutputStream (); soapMessage.writeTo (BAOS); System.out.println (baos.toString ());
Показать ещё 4 комментария
1
soapMessage.setProperty(SOAPMessage.CHARACTER_SET_ENCODING, "UTF-8");
soapMessage.setProperty(SOAPMessage.WRITE_XML_DECLARATION, "true");

Ещё вопросы

Сообщество Overcoder
Наверх
Меню