Was ist der Unterschied zwischen MTOM und die Anlage Funktionen von SAAJ?
SAAJ: SOAP mit Attachments API für Java
MTOM: SOAP Message Transmission Optimization Mechanism
Mein einfaches Verständnis: Sie befassen sich mit der SOAP-attachments mit MTOM die mehr optimiert version von SAAJ. Ist das richtig?
Sind Sie einfach 2 verschiedene Wege, die gleiche Sache zu tun? Oder bin ich versucht zu vergleichen, äpfel und Orangen hier?
Kann ich SAAJ und MTOM zusammen?
InformationsquelleAutor der Frage Jops | 2013-03-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es ein bisschen komplizierter. SAAJ ist eine alte Java API zum manipulieren von SOAP-Umschläge, also das senden von binären Anlagen getan werden kann, in einer vernünftigen Art und Weise (das ist nicht als BASE64-codierte Zeichenfolge im Nachrichtentext). SAAJ ist eine Art von low-level-Schnittstelle, die Sie benötigen, zu konstruieren SOAP-envelope "von hand" in Ihr code und fügen Sie Anhänge hinzu.
Wenn Sie nicht brauchen, um die Arbeit mit legacy-code und Sie möchten, um zu arbeiten direkt mit SOAP-Umschläge, dann schauen Sie auf JAX-WS Dispatcher und Provider-Schnittstellen.
MTOM ist ein anderes Tier. Es ist nicht ein full-web-service-API - es ist die spezielle Art der Versendung Anlagen. Es kann verwendet werden, von jedem "wahren" web-service-API wie JAX-WS oder SAAJ (wenn es Ihnen gelingt, Kraft, SAAJ, das es so funktioniert).
MTOM ist (fast) immer verwendet mit XOP, eine effizientere Methode zum senden von binären Daten, als im Vergleich zu BASE64 (mit großen Aufwand). Anlage gesendet wird separat als MIME-attachment und den MIME-Typ korrekt verarbeitet (das verwendet werden, um ein Problem für Java -, Microsoft-Technologien, Interaktionen).
Heutzutage vergessen SAAJ, verwenden Sie JAX-WS + MTOM Unterstützung, die von den meisten JAX-WS-Implementierungen.
InformationsquelleAutor der Antwort Piotr Kochański