Webové služby JAX-WS |
|
|
![]() |
|
Spustit | Konfigurovat | Technické poznámky | Dokumentace Javadoc | Sestavit pomocí nástroje Ant |
Zahájení práce |
Vyhledání zdrojového kódu |
Kontrola poznámek ke kódu |
Tato ukázka popisuje použití protokolu SOAP MTOM (Message Transmission Optimization Mechanism) k přenosu binárních souborů pomocí webové služby JAX-WS.
Ukázka služby MTOM implementuje webovou službu, která vrací binární obsah souboru klientovi. Ukázka zahrnuje klienta servletu org.apache.axis2.jaxws.sample.servlet.SampleServlet a aplikaci tenkého klienta služby MTOM org.apache.axis2.jaxws.sample.mtom.SampleMTOMTests. Servlet klienta služby a aplikace tenkého klienta používají stejný kód pro práci se službou pomocí klientů založených na serveru proxy a odbavení ve zdrojovém souboru SampleMTOMTests.java.
Kód Java pro servlet klienta ukázky služby MTOM s anotací a aplikaci tenkého klienta je umístěn v adresáři kořen_profilu/samples/src/JaxWSServicesSamples/SampleMTOMClient/src.
Kód Java pro aplikaci služby MTOM je umístěn v adresáři kořen_profilu/samples/src/JaxWSServicesSamples/SampleMTOMService/src.
Operační systémy z/OS: Pro operační systém z/OS není strom zdrojového kódu ukázek JAX-WS k dispozici, protože ukázkové aplikace nejsou pro systém z/OS sestaveny.
Ukázka služby MTOM byla vygenerována pomocí nástroje Rational Application Developer ze souborů jazyka WSDL (Web Services Description Language), které definují služby. Jeden z poskytovaných koncových bodů služby používá rozhraní SOAP 1.1 a druhý rozhraní SOAP 1.2. Server automaticky identifikuje příchozí zprávy optimalizované pro službu MTOM na základě typu obsahu a příslušným způsobem tyto zprávy deserializuje. V ukázce služby MTOM tedy neexistuje žádný explicitní kód ke zpracování služby MTOM ve službách.
Na straně klienta však musí být služba před transakcí služby povolena. V aplikaci tenkého klienta služby MTOM (org.apache.axis2.jaxws.sample.mtom.SampleMTOMTests.java) v metodách testMtomWithDispatch a testMtomWithProxy existuje ve vazbě vyvolání metody setMTOMEnabled. Po vyvolání této metody jsou odchozí zprávy serializovány a odeslány jako zprávy optimalizované pro službu MTOM. Pokud pro metodu setMTOMEnabled není nastavena vazba, budou všechna binární data v uzlech s binárním obsahem serializována jako řetězce s kódováním Base64.
Servlet klienta (org.apache.axis2.jaxws.sample.servlet.SampleServlet.java) neobsahuje žádný specifický kód pro službu a volá metody poskytované v souboru SampleMTOMTests.java.
Klient poskytovaný v této ukázce vyvolává službu MTOM pomocí programovacích modelů serveru proxy i odbavení. Klient demonstruje přístup k metodám serveru proxy i odbavení.
Další informace o povolení služby MTOM pro webové služby JAX-WS naleznete v části Knihovna Informačního centra produktu WebSphere Application Server.