2016-04-29 13 views
-1

Ich möchte mein JPG zu meiner SOAP-Anfrage hinzufügen, und ich muss es konvertieren, denke ich.Bild mit SOAP-Nachricht senden

Wenn ich die gleiche Soapmessage mit SoapUI senden (es funktioniert) Ich kann sehen, dass die Codierung meines Bildes ist wie folgt:

[0xff] [0xd8] [0xff] [0xe0] [0x0] [0x10 ] JFIF [0x0] [0x1] [0x1] [0x1] [0x0] H [0x0] H [0x0] [0x0] [0xff] [0xe1] [0x19] tExif [0x0] [0x0] MM [0x0] * [ 0x0] [0x0] [0x0] [0x8] [0x0] [0xc] [0x1] [0x0] [0x0] [0x4] [0x0] [0x0] [0x0] [0x1] [0x0] [0x0] [0xc] [0xc0] [0x1] [0x1] [0x0] [0x4] [0x0] [0x0] [0x0] [0x1] [0x0] [0x0] [0x7], [0x1] [0xf] [0x0] [0x2] [ 0x0] [0x0] [0x0] [0x8] [0x0] [0x0] [0x0] [0x9e] [0x1] [0x10] [0x0] [0x2] [0x0] [0x0] [0x0] [0x8] [0x0] [0x0] [0x0] [0xa6] [0x1] [0x12] [0x0] [0x3] [0x0] [0x0] [0x0] [0x1] [0x0] [0x1] [0x0] [0x0] [0x1] [0x1a ] [0x0] [0x5] [0x0] [0x0] [0x0] [0x1] [0x0] [0x0] [0x0] [0xae] [0x1] [0x1b] [0x0] [0x5] [0x0] [0x0] [ 0x0] [0x1] [0x0] [0x0] [0x0] [0xb6] [0x1] ([0x0] [0x3] [0x0] [0x0] [0x0] [0x1] [0x0] [0x2] [0x0] [0x0 ] [0x1] 1 [0x0] [0x 2] [0x0] [0x0] [0x0] [0xc] [0x0] [0x0] [0x0] [0xbe] [0x1] 2 [0x0] [0x2] [0x0] [0x0] [0x0] [0x14] [0x0 [0x0] [0x0] [0xca] [0x2] [0x13] [0x0] [0x3] [0x0] [0x0] [0x0] [0x1] [0x0] [0x1] [0x0] [0x0] [0x87] i [0x0] [0x4] [0x0] [0x0] [0x0] [0x1] [0x0] [0x0] [0x0] [0xde] [0x0] [0x0] [0x3] Bsamsung [0x0] SM-P600 [0x0] [ 0x0] [0x0] [0x0] H [0x0] [0x0] [0x0] [0x1] [0x0] [0x0] [0x0] H [0x0] [0x0] [0x0] [0x1] P600XXUDOJ3 [0x0] 2016: 04 : 08 14:32:04 [0x0] [0x0] [0x1c] [0x82] [0x9a] [0x0] [0x5] [0x0] [0x0] [0x0] [0x1] [0x0] [0x0] [0x2] 4 [0x82] [0x9d] [0x0] [0x5] [0x0] [0x0] [0x0] [0x1] [0x0] [0x0] [0x2] < [0x88] "[0x0] [0x3] [0x0] [0x0] [0x0] [0x1] [0x0] [0x2] [0x0] [0x0] [0x88] '[0x0] [0x3] [0x0] [0x0] [0x0] [0x1] [0x0] P [0x0] [0x0] [0x90] [0x0] [0x0] [0x7] [0x0] [0x0] [0x0] [0x4] 0220 [0x90] [0x3] [0x0] [0x2] [0x0] [0x0] [0x0] [0x14] [ 0x0] [0x0] [0x2] D [0x90] [0x4] [0x0] [0x2] [0x0] [0x0] [0x0] [0x14] [0x0] [0x0] [0x2] X [0x92] [0x1] [ 0x0] [\ n] "

Also ich denke ich sollte mein Bild genau so kodieren wie vorher Hinzufügen meines Bildes (JPG) zu meiner Nachricht.

Wie kann ich mein Bild bitte so kodieren? - mit Attachments

  • MTOM
  • Dann in Ihrem SOAP SOAP

    • base64Binary
    • SwA:

    +3

    uns Zeigen Sie, was Sie bisher versucht. Niemand hier wird all deine Arbeit für dich erledigen. Sogar ein bisschen mehr Informationen bezüglich des verwendeten Stapels usw. würden helfen. Schau mal hier [http://stackoverflow.com/help/mcve](http://stackoverflow.com/help/mcve) – Frank

    +0

    Ich habe versucht, während 1 Woche und ich habe keine Zeile meines Codes, weil ich sehen wollte andere Ideen. Danke für Ihre Hilfe – Swodniw

    Antwort

    0

    Um ein Bild unter Verwendung von SOAP Sie es in einem dieser Formate kodieren müssen senden Anfrage Sie können den xsi: type verwenden, um Ihren Kodierungstyp zu deklarieren:

    <submitClaim> 
        <accountNumber>5XJ45-3B2</accountNumber> 
        <eventType>accident</eventType> 
        <image imageType="jpg" xsi:type="base64binary"> 
        4f3e9b0...(rest of encoded image) 
        </image> 
    </submitClaim> 
    

    In Ihrem Java-Code müssen Sie die BufferedImage lesen und es in eine Zeichenfolge zu konvertieren, und fügen Sie dann zu Ihrem SOAP-Anforderung:

    public static String encodeToString(BufferedImage image, String type) { 
         String imageString = null; 
         ByteArrayOutputStream bos = new ByteArrayOutputStream(); 
    
         try { 
          ImageIO.write(image, type, bos); 
          byte[] imageBytes = bos.toByteArray(); 
    
          BASE64Encoder encoder = new BASE64Encoder(); 
          imageString = encoder.encode(imageBytes); 
    
          bos.close(); 
         } catch (IOException e) { 
          e.printStackTrace(); 
         } 
         return imageString; 
        } 
    
    +1

    Danke, es funktioniert, wenn ich mein Bild in Base64 kodiere und ich setze diese Kodierung zwischen Swodniw

    +0

    Gern geschehen :) –