Pracuję nad tym projektem, w którym klient obsługuje tylko protokół SOAP WSDL do korzystania z usług WWW, ponieważ obsługuje on odpoczynek dla połączeń przychodzących. Muszę zintegrować to narzędzie z innym narzędziem, które jest całkowicie spokojne (ma WADL). Czy klient mydła może spożywać spokojne usługi sieciowe? Jeśli tak, które narzędzie zasugerujesz?Usługi Web Service zużywające aplikacje zużywające mydło
Odpowiedz
SOAP definiuje standardową specyfikację protokołu komunikacyjnego (zestaw reguł) dla wymiany wiadomości opartej na XML. SOAP używa różnych protokołów transportowych, takich jak HTTP i SMTP. Standardowy protokół HTTP ułatwia modelowi SOAP tunelowanie w zaporach sieciowych i serwerach proxy bez żadnych modyfikacji protokołu SOAP.
REST opisuje zestaw zasad architektonicznych, według których dane mogą być przesyłane za pomocą standardowego interfejsu (np. HTTP). REST nie zawiera dodatkowej warstwy wiadomości i koncentruje się na regułach projektowania dla tworzenia usług bezpaństwowych. Klient może uzyskać dostęp do zasobu przy użyciu unikalnego identyfikatora URI i zwracana jest reprezentacja zasobu. Przy każdej nowej reprezentacji zasobów klient ma przekazywać stan. Podczas uzyskiwania dostępu do zasobów RESTful za pomocą protokołu HTTP adres URL zasobu służy jako identyfikator zasobu, a GET, PUT, DELETE, POST i HEAD są standardowymi operacjami HTTP, które należy wykonać dla tego zasobu.
Można to zrobić za pomocą jQuery.
jQuery przykładowy identyfikator języka:
$.post('https://services.open.xerox.com/RestOp/LanguageIdentifier/GetLanguageForString',
{'document' : 'This is a sample'}, function (data) {
var res = 'Not found';
if (data != null) {
res = data;
}
});
Dalsze czytanie: https://spring.io/guides/gs/consuming-rest-jquery/
Nie, to nie jest możliwe, aby klient mydło spożywać usługi spokojny. Nie ma między nimi żadnej interoperacyjności.
Nawet gdybyś mógł to zrobić, nie powinieneś. Użyj biblioteki narzędzi i po prostu utwórz klienta odpoczynku dla swojej usługi odpoczynku.
Twoje pytanie nie jest dla mnie całkowicie jasne. Czy używasz słów "klient", by znaczyć to samo, co "to narzędzie" i "klient mydła"? Jeśli twoja odpowiedź brzmi "tak", to czy rozumiem poprawnie, że to narzędzie obsługuje wywoływanie usług internetowych opartych na SOAP, a twoje pytanie brzmi: w jaki sposób możesz zezwolić na wywoływanie usług internetowych zdefiniowanych w WADL? Należy zauważyć, że REST jest po prostu stylem architektonicznym i że usługi SOAP oparte na sieci mogą być również RESTful. –
Tak, możesz. Używając jax-ws możesz to zrobić za pomocą API 'Provider' i' Dispatch'. Możesz nawet wywołać usługę REST za pomocą 'HttpURLConnection'. W końcu wywoływanie punktu końcowego REST polega na wysyłaniu żądania HTTP do określonego adresu URL. Oto kilka przykładów: http://www.java2s.com/Code/Java/Web-Services-SOA/RESTbasedWebServicesusingHTTPbindingandJAXWSProviderDispatch.htm, http://www.edureka.co/blog/how-to-write-restful- web-services-with-jax-ws /, https://www.subbu.org/blog/2006/08/jax-ws-for-restful-web-services –