title: Java - How to send byte array on Soap Request?
body: <p>I was wondering if it is possible to send a byte[] over the Soap Request. Is it? If so, how can i do it using javax.xml.soap.*?</p>
  
  <p>I only know how to do it sending strings.</p>
  
  <pre><code>private static SOAPMessage createSOAPRequest() throws Exception {
      MessageFactory messageFactory = MessageFactory.newInstance();
      SOAPMessage soapMessage = messageFactory.createMessage();
      SOAPPart soapPart = soapMessage.getSOAPPart();
  
  
      SOAPEnvelope envelope = soapPart.getEnvelope();
      envelope.addNamespaceDeclaration("ws", "http://www.qwert.com.ar/");
  
      SOAPBody soapBody = envelope.getBody();
      SOAPElement soapBodyElem = soapBody.addChildElement("ronkMotor", "ws");
      SOAPElement soapBodyElem1 = soapBodyElem.addChildElement("file");
  
      //How to add byte[] here?
      //soapBodyElem1.addTextNode("mutantninja@gmail.com");
  
      MimeHeaders headers = soapMessage.getMimeHeaders();
      headers.addHeader("SOAPAction", "ronkNow");
  
      soapMessage.saveChanges();
  
      soapMessage.writeTo(System.out);
  
      return soapMessage;
  }
  </code></pre>
  
  <p>The ws signature is:</p>
  
  <pre><code>@WebMethod(operationName = "ronkNow", action = "urn:rs")
  Response ronkNow(@WebParam(name = "file")byte[] data);
  </code></pre>