NIA DINIYAH 1401129141 JOSEPHINE KARINA 1401127602

advertisement
NIA DINIYAH 1401129141
JOSEPHINE KARINA 1401127602
REZON 1401127956
RAHMAN 1401127306
ALDOFA 1401127653
06PMT
ADSE UTS BAYANGAN
Web Services
Web Service dapat disamakan dengan library tersebut tetapi tidak
memerlukan registrasi khusus kedalam sistem operasi yang menyimpannya. Web
Service tersimpan di Web Server sehingga dapat diakses oleh berbagai bahasa
pemrograman dengan lebih mudah baik dalam lingkungan LAN maupun Internet.
Sistem Web Service ini diharapkan meningkatkan kolaborasi antar pemrogram dan
perusahaan, yang memungkinkan sebuah fungsi di dalam Web Service dapat
dipinjam oleh aplikasi lain tanpa perlu mengetahui detil pemrograman yang terdapat
di dalamnya.
W3C mendefinisikan Web Service sebagai subuah sistem perangkat lunak
yang dirancang untuk mendukung komunikasi dan interaksi antar mesin ke mesin
(Machine to Machine) melalui sebuah network (jaringan). Web Service juga
termasuk Web APIs yang dapat diakses melalui jaringan seperti misalnya internet,
dan dieksekusi melalui sebuah sistem jarak jauh sesusai dengan layanan yang
diminta.
Definisi Web Service menurut W3C juga meliputi banyak sistem berbeda,
tetapi pada umumnya lebih menyangkut pada client dan server yang berkomunikasi
menggunakan XML yang memenuhi standard SOAP (Simple Object Access
Protocol). Asumsi secara umum adalah pada terminologi terdapat deskripsi dari
mesin yang layanannya disediakan oleh server, atau sama seperti konsep dari
WSDL. WSDL bukan termasuk standard dari SOAP tetapi merupakan syarat mutlak
untuk client-side otomatis pada framework Java dan .NET SOAP. Beberapa
organisasi industri seperti WS-I mengklaim baik SOAP dan WSDL sebagai definisi
sari Web Service.
Definisi lain juga menyebutkan bahwa Web Service merupakan standard
yang memungkinkan adanya interaksi informasi teknologi yang terintregasi antara
proses dan sistem. Kita dapat mendeskripsikannya sebagai keluaran baru dari Web
application yang dapat mennyediakan layanan dari yang palin mudah dan
sederhana sampai yang paling rumit dan kompleks, juga proses-proses yang
bersifat scientific. Web Service menyediakan mekanisme standard untuk komunikasi
yang terintegrasi antara system-sistem yang berjauhan. Mekanisme ini membuat
Web Service ideal untuk pengimplementasian Service-Oriented Architecture (SOA).
Untuk kondisi sekarang , web services cocok untuk menyelesaikan masalah
pada system bisnis konsep lama ke system bisnis ter Intergrasi. Sehingga dengan 1
model konsep bisnis dapat di akses dan dipergunakann macam-macam aplikasi dan
device. Ini semua bekerja dengan beberapa protocol standart yang sudah ada
diantaraya :
• XML
• WSDL
• SOAP
• UDDI
Kapan Kita Gunakan Web Services ?
Web Services itu digunakan saat kita akan mentransformasi sebuat bisnis
logik / sebuah class dan object yang terpisah dalam 1 ruang lingkup yang menjadi
satu, sehingga tingkat keamanan dan security dapat di tangani dengan baik. Selain
itu Web Service juga lebih mudah dalam process deploymentnya, karena tidak
memerlukan registrasi khusus ke dalam sistem operasi. Web Service cukup diupload
ke Web Server dan siap diakses oleh pihak-pihak yang telah diberikan otorisasi.
Web Service berjalan di port 80 yang merupakan protokol standar HTTP,
dengan demikian mengurangi resiko terblokir oleh firewall. Kendala arsitektur
COM/DCOM adalah memerlukan konfigurasi khusus di sisi firewall, dan ini tidak
perlu dilakukan untuk mengakses Web Service. Beberapa vendor luar negeri mulai
berkolaborasi satu sama lain dengan konsep web services, diantaranya : IBM ,
Microsoft , SUN , ORACLE.
Diantaranya contoh web services yang sudah jadi dan dipakai adalah web
services keluaran Microsoft ( Microsoft Passport ) – web services untuk user name
dan password yang sudah dipasang di web site Microsoft dan HOTMAIL
Spesifikasi dan Standard
Ada beberapa spesifikasi inti dari Web Service, misalnya:



SOAP: Berbasis XML, protokol primernya adalah HTTP dan HTTPS
(termasuk SMTP dan XMPP).
WSDL: Format XML yang menyediakan layanan interface untuk
dideskripsikan. Umumnya digunakan untuk kode pada client dan
server, juga untuk konfigurasi.
UDDI: Protokol yang digunakan untuk mempublish dan mendiscover
seluruh metadata tentang Web Service untuk menjalankan aplikasi
dalam menemukan Web Service, baik dalam segi disain maupun
waktu kerjanya.
Spesifikasi-spesifikasi di atas pada umumnya merupakan standard dari W3C,
termasuk XML, SOAP2, dan WSDL. UDDI merupakan standard dari OASIS.
Spesifikasi yang lain telah dikembangkan untuk memperluas kemampuan Web
Service itu sendiri. Spesifikasi-spesifikasi ini lebih mengarah sebagai WS-*.



WS-Security: Menjelaskan bagaimana cara menggunakan XML
Encryption dan XML Signature pada SOAP untuk keamanan
pertukaran pesan, sebagai alternatif ataupun perpanjangan dalam
penggunaan HTTPS untuk keamanan jalur.
WS-Reliability: Prokol standard dari OASIS untuk pertukaran pesan di
antara dua Web Service.
WS-ReliableMessaging: Protokol untuk message di antara dua Web
Service yang dikeluarkan oleh Microsoft, BEA, dan IBM yang
distandardisasi oleh organisasi OASIS.

WS-Addressing: Cara untuk mendeskripsikan alamat dari penerima
maupun pengirim pesan, selain SOAP itu sendiri.
Spesifikasi-spesifikasi dari Web Service bekerja bersama untuk keamanan maupun
keandalan.
Spesifikasi dalam Message (Messaging Spesifications)








SOAP
WS-Addressing
MTOM (Attachments)
WS-Enumeration
WS-Eventing
WS-Transfer
SOAP-over-UDP
SOAP 1.1 Binding for MTOM 1.0
Security Specifications












WS-Security: SOAP Message Security
WS-Security: UsernameToken Profile
WS-Security: X.509 Certificate Token Profile
WS-SecureConversation
WS-SecurityPolicy
WS-Trust
WS-Federation
WS-Federation Active Requestor Profile
WS-Federation Passive Requestor Profile
WS-Security: Kerberos Binding
Web Single Sign-On Interoperability Profile
Web Single Sign-On Metadata Exchange Protocol
Reliable Messaging Specifications

WS-ReliableMessaging
Transaction Specifications



WS-Coordination
WS-AtomicTransaction
WS-BusinessActivity
Metadata Specifications






WSDL
WSDL 1.1 Binding Extension for SOAP 1.2
WS-Policy
WS-PolicyAssertions
WS-PolicyAttachment
WS-Discovery

WS-MetadataExchange
XML Specifications



XML
Namespaces in XML
XML Information Set
Management Specifications


WS-Management
WS-Management Catalog
Business Process Specifications

BPEL4WS
Specification Profiles


Devices Profile
WS-I Basic Profile
Profil Web Service
Untuk lebih mengembangkan fungsinya, WS-I mempublikasikan profil. Profil
mengeset spesifikasi inti (SOAP, WSDL, dll) pada versi yang lebih spesifik (SOAP
1.2, UDDI 2, dll) dengan beberapa tambahan untuk lebih memperketat penggunaan
spesifikasi inti. WS-I juga mempublikasikan kasus dan tool.
Penggunaan
Web Service adalah sekumpulan tools yang dapat digunakan dengan berbagai
macam cara. Tiga cara yang sering digunakan adalah RPC, SOA, dan REST.
Web Service RPC menampilkan fungsi dan metode call interface yang terdistribusi
yang bersifat familiar bagi banyak pengembang. Biasanya, unit dasar dari RPC ini
adalah WSDL operation.
Pada awalnya, tools dari Web Service lebih difokuskan pada RPC dan sebagai
hasilnya, hádala pengembangan yang lebih luas. Meskipun demikian, hal ini dirasa
tidak efektif oleh berbagai vendor sehingga pada akhirnya RPC tidak diikutkan
dalam WS-I Basic Profile.
Self-Oriented Architecture
Web Service juga dapat digunakan untuk pengimplementasian arsitektur yang
berdasarkan pada konsep Service-Oriented Architecture (SOA) di mana unit dasar
dari komunikasi itu sendiri adalah pesan, dan bukan operasi. Ini sering disebut
dengan layanan “service-oriented”. Banyak vendor-vendor software dan analis
industri “menganut” konsep Web Service SOA ini.
Representational State Transfer
Web Service RESTful berencana untuk menandingi HTTP dan protokol lain yang
sejenis dengan membatasi interface pada operasi yang standard (misalnya GET,
PUT, DELETE). Di sini, fokus lebih pada stateful resource daripada pesan ataupun
operasi. RESTful dapat menggunakan WSDL untuk mendeskripsikan pesan SOAP
melalui HTTP, yang mendefinisikan operasi, atau dapat diimplementasikan sebagai
abstraksi pada puncak SOAP (misalnya WS-Tran
Sumber:
1. www.wikipedia.org
2. www.ilmukomputer.com
Model Web Services
Setelah menyelesaikan modul ini, akan didapati:
_ Menjelaskan peran web services
_ Mengetahi daftar spesifikasi yang digunakan untuk membuat web service
platform independen
_ Menjelaskan API Java yang digunakan untuk pengolahan XML dan web services
Modul 12 Model Web Service Page 2 of 11
Peran Web Services
World Wide Web Consortium (W3C) mendefinisikan web service sebagai " sistem
perangkat lunak yang dirancang untuk mendukung interoperabiliti interaksi mesin
yang satu dengan mesin yang lain melalui jaringan." Sebuah web service
mengekspose service remote atau prosedur yang dapat dieksekusi ke klien aplikasi.
Web service dirancang untuk platform independen, namun independensi platform
ini tidak tanpa kekurangan. Kekurangan untuk independensi dari platform web
service adalah ada pengeluaran tambahan, baik pemakaian jaringan ataupun
penggunaan CPU.
Beberapa fitur utama web service adalah:
_ Platform Independen = Web Service tidak bergantung pada CPU, sistem operasi,
atau bahasa pemrograman.
_ Dirancang untuk memanfaatkan teknologi yang telah ada = Web service
menggunakan secara ekstensif teknologi XML dan HTTP.
_ Interoperabel dengan bahasa pemrograman yang berlainan = Web service
menggunakan model klien-server.
Adalah memungkinkan untuk memiliki sebuah
klien yang ditulis dalam satu bahasa pemrograman untuk berkomunikasi dengan
server yang ditulis dalam bahasa pemrograman yang berbeda.
Aplikasi klien-server dengan klien dan server yang keduanya dibuat dengan
menggunakan bahasa pemrograman Java yang tidak dapat digunakan untuk klien
atau server yang ditulis dalam bahasa pemrograman lain, memerlukan sedikit usaha
tambahan agar menjadi web service. Web service telah didukung oleh platform Java
enterprise sejak J2EE 1.4.
Meskipun web service bukan lagi sebuah teknologi baru,
sejumlah industri memberikan gairah untuk terus mengembangkannya. Anda
mungkin diminta untuk membuat fungsi aplikasi yang sudah anda buat untuk diubah
menjadi web service tanpa banyak menimbulkan masalah teknis. Beruntung
platform Java EE 5 memungkinkan penciptaan atau penambahan web service
dengan
cara yang mudah untuk aplikasi anda.
Web Service Sebagai Komponen Remote
Web service menyediakan sebuah mekanisme untuk menjalankan operasi bisnis
mirip dengan session EJB remote. Web service menyediakan eksekusi sebuah
pekerjaan secara remote yang mirip dengan:
_ Common Object Request Broker Architecture (CORBA) = Spesifikasinya
dikelola
oleh Object Management Group (OMG). Menyediakan binding untuk bahasa
pemrograman C dan C + +, kemudian diikuti Jawa. Dilihat oleh banyak orang
sebagai arsitektur yang kompleks. Digunakan terutama pada tahun 1990-an.
Mulai tahun 2000, web service mulai menggantikan CORBA untuk beberapa
aplikasi.
Membangun Aplikasi dengan Platform Java EE Page 3 of 11
_ Remote Method Invocation (RMI) = Sebuah teknologi Java untuk pemanggilan
method dari remote klien. Teknologi ini digunakan sebagai fondasi bagi
komponen distributed di Java, misalnya EJB. Dimasukkan sebagai bagian dari
platform Java SE.
_ Remote Procedure Call (RPC) = Mengeksekusi prosedur secara remote
menggunakan satu protokol tertentu dipopulerkan oleh Sun Microsystems.
Biasanya tidak digunakan dalam perangkat lunak berorientasi objek. Network File
System (NFS) adalah contoh dari program RPC.
_ Distributed Component Object Model (DCOM) = Teknologi yang dibuat oleh
Microsoft yang posisinya setara dengan RMI, yang hanya bekerja pada platform
Microsoft. DCOM saat ini diganti dengan. Net Remoting dan web service.
Web service berbeda dengan teknologi-teknilogi di atas, dengan menggunakan
teknologi Hyper Teks Transfer Protocol (HTTP) dan XML (Extensible Markup
Language), keduanya juga didukung oleh librari yang ada di hampir semua bahasa
pemrograman, seperti standar transport dan payload. Librari Java yang mendukung
web service yang saat ini disertakan dalam versi platform Java enterprise dan jika
anda menggunakan platform Java SE versi 1.6 librari web service sudah
dimasukkan
ke dalamnya.
Web Service Dibandingkan Dengan Remote EJB
Arsitektur EJB secara keseluruhan tidak jauh berbeda dari yang web service,
dengan
pengecualian teknologi spesifik yang digunakan untuk membuat web service
platform independen:
_ Sebuah registry untuk mengumumkan dan mencari web service yang dikenal
sebagai Universal Description, Discovery and Integration (UDDI). Jika klien sudah
mengetahui lokasi yang diinginkan, anda dapat membypass registry.
_ Sebuah protokol yang digunakan sebagai jalur transportasi untuk memanggil
service, mengirimkan parameter, dan menerima nilai balikan. Dalam remote EJB,
protocol ini adalah Internet Inter-Orb Protocol (IIOP). Di web service yang
digunakan adalah HTTP.
_ Sebuah urutan data yang ditransfer antara klien dan server. Session Bean remote
menggunakan object yang serialized sedangkan web service menggunakan XML.
Modul 12 Model Web Service Page 4 of 11
Spesifikasi Web Service
Pada bagian ini akan dijelaskan spesifikasi web service.
Persyaratan Interoperabilitas
Web service dirancang untuk platform dan bahasa yang netral. Untuk membuat web
service secara efektif, yang harus diperhatikan adalah:
_ Dukungan klien tanpa memandang platform atau bahasa yang digunakan –
Sebuah web service tidak tergantung pada bahasa pemrograman tertentu atau
dijalankan pada sistem operasi tertentu.
_ Dapat dilaksanakan dalam bahasa apapun tanpa memperhatikan platform yang
digunakan – Sebuah API web service meekspose semua informasi dalam bentuk
file teks yang dikenal sebagai file Web Service Description Language (WSDL).
Dengan file WSDL, anda dapat mengembangkan klien baru dalam bahasa
pemrograman apapun tanpa mengakses informasi lainnya ke server. Sebagian
besar tool di Java juga mendukung pembuatan web service yang kompatibel
cukup dengan menggunakan informasi dari file WSDL.
Dua dari beberapa spesifikasi yang digunakan untuk membuat web service
interoperable adalah HTTP dan XML. HTTP adalah protokol transportasi, biasanya
digunakan di atas Transmission Control Protocol/Internet Protocol (TCP/IP), yang
dapat digunakan untuk mentransfer informasi di dalam arsitektur berorientasi
permintaan-respon. XML adalah suatu spesifikasi yang digunakan untuk mengatur
data dalam sebuah file teks yang bisa di parsing oleh mesin.
Web service menggunakan HTTP untuk mengirim data dalam format XML untuk
permintaan dan respon. Namun, dengan menggunakan HTTP sebagai protokol
transport dan XML
sebagai format data yang tidak menyediakan interoperabilitas tingkat tinggi. Agar
interoperable:
_ Method dan header yang digunakan dalam transport protokol HTTP harus
standar.
_ Format pesan XML harus diketahui. XML tidak hanya memerlukan dokumen yang
‘well-formed’ tetapi juga memerlukan struktur atau formatnya. Simple Object
Access Protocol (SOAP) adalah spesifikasi yang mengatur standar struktur pesan
XML untuk digunakan dalam web service.
Catatan - The World Wide Web Consortium (W3C) yang menerbitkan HTTP,
XML dan SOAP spesifikasi di http://www.w3c.org
Membangun Aplikasi dengan Platform Java EE Page 5 of 11
Standar Interoperabilitas
Bukan hanya spesifikasi XML, HTTP, dan SOAP yang digunakan untuk mencapai
interoperabilitas antara web servis dan kliennya. Karena banyak spesifikasi yang
digunakan dalam web service, spesifikasi telah dibuat untuk mandat spesifikasi dan
versi yang akan digunakan. Ini serupa dengan Java EE 5 mandat penggunaan
spesifikasi, seperti EJB 3 dan Servlet 2.5.
_ XML = Standar W3C yang dirancang untuk menyimpan data dalam format yang
baik untuk dibaca manusia dan mudah diparsing oleh mesin.
_ HTTP = Standar W3C untuk komunikasi data.
_ UDDI = Standar untuk publikasi dan pencarian service, disponsori oleh OASIS.
_ SOAP = Standar W3C yang memaksa format pesan XML lebih didefinisikan pada
struktur untuk digunakan dalam web service.
Kode 12-1 Contoh Permintaan SOAP
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns1="http://sample/">
<soapenv:Body>
<ns1:getGreeting>
<arg0>Duke</arg0>
</ns1:getGreeting>
</soapenv:Body>
</soapenv:Envelope>
Kode 12-2 Contoh Respon SOAP
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns1="http://sample/">
<soapenv:Body>
<ns1:getGreetingResponse>
<return>Hello Duke</return>
</ns1:getGreetingResponse>
</soapenv:Body>
</soapenv:Envelope>
Modul 12 Model Web Service Page 6 of 11
_ WSDL – Diusulkan oleh W3C untuk menjadi standar yang mendefinisikan fungsi
web service. Serupa fungsinya dengan interface bisnis dari komponen Session
EJB, namun dalam format XML.
Kode 12-3 Contoh File WSDL
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://sample/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
targetNamespace="http://sample/" name="SayHelloService">
<types>
<xsd:schema>
<xsd:import namespace="http://sample/"
schemaLocation="http://10.1.1.1:8080/WebService/SayHelloService/__contain
er$publishing$subctx/WEB-INF/wsdl/SayHelloService_schema1.xsd"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"/>
</xsd:schema>
</types>
<message name="getGreeting">
<part name="parameters" element="tns:getGreeting"/>
</message>
<message name="getGreetingResponse">
<part name="parameters" element="tns:getGreetingResponse"/>
</message>
<portType name="SayHello">
<operation name="getGreeting">
<input message="tns:getGreeting"/>
<output message="tns:getGreetingResponse"/>
</operation>
</portType>
<binding name="SayHelloPortBinding" type="tns:SayHello">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<operation name="getGreeting">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="SayHelloService">
<port name="SayHelloPort" binding="tns:SayHelloPortBinding">
Membangun Aplikasi dengan Platform Java EE Page 7 of 11
<soap:address location="http://10.1.1.1:8080/WebService/SayHelloService"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"/>
</port>
</service>
</definitions>
_ Web Service Interoperability = Organzation (WS-I Organization) – WS-I
Organization adalah organisasi yang mengeluarkan mandat berupa profil yang
berisi penggunaan spesifikasi tertentu, seperti SOAP dan WSDL, dan
menempatkan mereka pada tambahan batasan yang diperlukan, untuk
menyediakan web service interoperable. Profil ini dikenal dengan istilah Basic
Profil.
Modul 12 Model Web Service
API Java Terkait Dengan XML dan Web Services
Sebagian besar dari spesifikasi dalam daftar berikut ini digunakan ketika membuat
atau menggunakan web service dalam bahasa pemrograman Java. Namun, Anda
tidak perlu menggunakan atau bahkan mengetahui rincian spesifikasi ini untuk
menggunakan web service dengan teknologi Java.
_ Java Document Object Model (JDOM atau Java DOM) menyediakan model Java
berorientasi objek dari XML dokumen.
_ Java API untuk XML Processing (JAXP) adalah teknologi Java yang merupakan
abstraksi dari pemrosesan XML.
_ Java Architecture untuk XML Binding (JAXB) mengatur bagaimana mengkonversi
objek Java ke skema XML.
_ Java API for XML-based Remote Process Communications (JAX-RPC) adalah
spesifikasi untuk membangun web service dengan teknologi Java. Di spesifikasi
Java EE 5, peran JAX-RPC digantikan oleh Java API for XML Web Services
(JAXWS).
_ Java API for XML Registries (JAXR) adalah spesifikasi standar Java untuk
menggunakan UDDI registries.
_ SOAP With Attachment API for Java (SAAJ) adalah spesifikasi standar Java untuk
membuat, mengirim, menerima, dan memparsing pesan SOAP. Digunakan oleh
JAX-WS.
_ Java API for XML Web Service (JAX-WS) adalah spesifikasi Java untuk web
service.
Implementasi JAX-WS menggunakan implementasi dari SAAJ, yang pada
gilirannya menggunakan JAXP dan spesifikasi Java untuk XML yang lainnya.
API SAAJ
API SAAJ memungkinkan klien untuk menggunakan web service tanpa harus
mempedulikan parser XML atau protokol transport yang digunakan. API-nya
dianggap lebih tinggi dari JAXP, untuk menggunakan API SAAJ masih memerlukan
pengetahuan XML dan WSDL.
Kode 12-4 Contoh Pemakaian API SAAJ
MessageFactory msgFactory = MessageFactory.newInstance();
SOAPMessage message = msgFactory.createMessage();
SOAPHeader header = message.getSOAPHeader();
header.detachNode();
Membangun Aplikasi dengan Platform Java EE Page 9 of 11
SOAPBody body = message.getSOAPBody();
javax.xml.namespace.QName bodyName = new
QName("http://sample/","getGreeting", "ns1");
SOAPBodyElement requestBodyElement = body.addBodyElement(bodyName);
QName name = new QName("arg0");
SOAPElement symbol = requestBodyElement.addChildElement(name);
symbol.addTextNode("Duke");
SOAPConnectionFactory connFactory = SOAPConnectionFactory.newInstance();
SOAPConnection connection = connFactory.createConnection();
String endpoint = "http://localhost:8080/WebService/SayHelloService";
SOAPMessage response = connection.call(message, endpoint);
connection.close();
SOAPBody soapBody = response.getSOAPBody();
SOAPBodyElement getGreetingResponseElement =
(SOAPBodyElement)soapBody.getChildElements().next();
SOAPBodyElement returnElement =
(SOAPBodyElement)getGreetingResponseElement.getChildElements().next();
System.out.print("The response was: " + returnElement.getValue());
API JAX-WS
API JAX-WS adalah Java API level tertinggi (saat ini) untuk web service. API JAXWS:
_ Menggantikan JAX-RPC
_ Memerlukan sedikit pengetahuan XML atau WSDL tingkat dasar untuk web
service yang sederhana
_ Menggunakan JAXB untuk menentukan bagaimana melakukan pemetaan tipe
data antara teknologi Java dan XML
_ Menggunakan SAAJ untuk mengirim, menerima, dan mem-parsing pesan SOAP
Menggunakan JAX-WS pada sisi klien atau server tidak memerlukan
penggunaannya
pada sisi lainnya. Jika anda sedang mengembangkan web service klien dan server
dengan menggunakan teknologi Java, maka anda harus menggunakan API JAXWS.
Walaupun ada sedikit yang menggunakan untuk membuat web service yang
memiliki
baik pada sisi klien dan service yang menggunakan platform Java, masih ada
beberapa alasan untuk mempertimbangkan menggunakan web service:
_ Mendukung fleksibilitas platform klien tidak dikenal di masa mendatang
Modul 12 Model Web Service Page 10 of 11
_ Tidak terikat pada platform server tertentu. Misalnya, jika server platform tidak
memiliki skalabilitas yang baik, maka dapat diganti tanpa mempengaruhi aplikasi
client
_ Penggunaan HTTP sebagai teknologi untuk berkomunikasi, dalam banyak kasus,
memungkinkan penggunaan aturan-aturan firewall yang sudah ada.
Gambar 12-1 menggambarkan bagaimana teknologi JAX-WS mengelola komunikasi
antara web service dan klien.
Gambar 12-1 Komunikasi antara yang JAX-WS Web Service dan Klien
Membangun Aplikasi dengan Platform Java EE Page 11 of 11
Rangkuman
Peran web service di aplikasi enterprise adalah menyediakan metode yang
tidak
bergantung pada platform untuk pemanggilan method secara remote. Supaya
platform-netral, beberapa spesifikasi digunakan, seperti SOAP dan HTTP. Teknologi
Java menyediakan API untuk pengolahan XML dan web service . Dasar API, seperti
JAXP merupakan bagian dari platform Java SE, sedangkan API tingkat tinggi,
seperti
JAX-WS merupakan bagian dari platform Java EE.
Download