1. Trang chủ
  2. » Tất cả

os-ag-mashup-rest

13 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 448,51 KB

Nội dung

Xây d ng ng d ng hòa tr n phía máy ch v i Geronimo REST Page of 13 Xây d ng ng d ng hòa tr n phía máy ch v i Geronimo REST !" %& M c # ! $! ! ' : Trung bình J Jeffrey Hanson, Ki n trúc s tr ng, eReinsure.com, Inc 05 07 2009 Khám phá k thu t cơng ngh b n có th s d ng xây d ng m t ng d ng hòa tr n (mashup) b ng cách s d ng Apache Geronimo, m t giao th c d a REST d li u t nhi u ngu n ng d ng hòa tr n k t h p d li u t Google Maps thông i p ng n (tweet) c a Twitter nh v ng i dùng Twitter h c p nh t tr ng thái Twitter c a Ban u, thu t ng mashup (hịa tr n) có ngh a m t k thu t âm nh c pha tr n hai ho c nhi u hát theo m t cách ó t o m t hát hồn tồn m i Trong cơng ngh ph n m m mashup hàm ý công ngh m u hình k t h p d li u, thành ph n giao di n ng i dùng (UI) quy trình x lý t o ng d ng web trang web m i ng d ng hòa tr n c nhà phát tri n web a chu ng b i d dàng k t h p d li u n i dung S d d dàng làm nh th ã s!n có ph" c p r ng kh p công ngh ng giàu ng ngh a dành cho Web — ó công ngh nh XML, ký pháp #i t ng tu n t hóa c a JavaScript (JSON JavaScript Serialized Object notation), Khung công tác mô t$ tài nguyên (RDF - Resource Description Framework), JavaScript ng Ajax Chúng công ngh khác n a cung c%p m t kh$ n&ng không gi i h n cho nhà phát tri n sáng t o n i dung B n th ng t o ng d ng hòa tr n b ng cách k t h p thành ph n UI, d ch v ho c quy trình x lý d li u Các thành ph n UI có th hịa tr n c bao g m mã JavaScript ng, o n mã HTML, ngu n c%p d li u RSS, k t qu$ t l i g i API c a d ch v Web Các ng d ng hòa tr n ph thu c vào vi c tr n thành ph n UI c ghép l'ng v i nhau, quy trình x lý ho c d li u t m t ho c nhi u trang web b ng cách s d ng phép bi n "i d li u, Javascript ng, thao tác DOM k thu t khác Các ng d ng hòa tr n b$n m u hi n có bao g m vi c k t h p m t b$n t Google Maps v i d li u t i t ng a i m, ch(ng h n nh s# li u th#ng kê t i ph m giá b%t ng s$n cho m t khu v c ã cho Bài vi t th$o lu n v cách s d ng API Twitter Google Maps cung c%p v i Ajax mã Java™ xây d ng m t ng d ng hòa tr n mà b n có th tri n khai cho ch y m t môi tr ng Apache Geronimo (L u ý c a biên t p viên: Bài vi t th$o lu n v m t nhi u cách t o ng d ng hịa tr n phía máy ch WebSphere® cung c%p m t bi n pháp khác xây d ng ng d ng d a web b ng cách s d ng k ch b$n l nh (scripting) ng Xem m c Tài ngun có thêm thơng tin v ph n m m c th$o lu n vi t n)i tìm ph n m m ó…) T vi t t t th ng c s d ng Ajax: JavaScript không ng b + XML API: Giao di n l p trình ng d ng CSS: Cascading Style Sheets – Các phi u nh ki u ch ng DOM: Document Object Model – Mơ hình #i t ng tài li u HTML: Hypertext Markup Language – Ngôn ng ánh d%u siêu v&n b$n HTTP: Hypertext Transfer Protocol - Giao th c truy n t$i siêu v&n b$n UI: User interface - Giao di n ng i dùng XML: Extensible Markup Language – Ngôn ng ánh d%u m r ng c XSD: XML Schema Document -L c tài li u XML Làm quen v i Geronimo Geronimo n n Java doanh nghi p (Java EE), hoàn toàn t )ng thích v i n n Java, mà b n có th s d ng Xây d ng ng d ng hịa tr n phía máy ch v i Geronimo REST Page of 13 xây d ng d ch v ng d ng doanh nghi p Geronimo c thi t k theo m t ki n trúc s d ng k thu t $o ng c i u n (Inversion of Control – IOC) tách riêng d ch v thành ph n t i m t m c cao Vi c tách riêng m c cao nh v y cho phép tri n khai có mơi tr ng th c thi c%u hình c mơ un hóa cao Geronimo *y m nh s d ng ph n m r ng qu$n lý c a Java (Java Management Extensions -JMX) khung công tác ki u Mbean c thù cho Geronimo, làm cho Geronimo tr thành m t n n t$ng doanh nghi p m nh m+ d qu$n lý B n t o m t môi tr ng ch y c a Geronimo b ng cách s d ng m t t p h p có th tùy ch,nh c mô- un c l p ráp c qu$n lý b i m t máy h t nhân (kernel engine) g n nh- Máy h t nhân m t mô- un c a Geronimo, m t t p h p b%t k l p, mô- un khác, m t c%u hình tu n t hóa c (serializable) H t nhân Geronimo n p, h p d ch hòa ph#i mô- un m t cá th ch y thi hành c a Geronimo c kh i ng Các mô- un ã l p ráp xác nh ch c n&ng cho môi tr ng tri n khai thi hành Geronimo T%t c$ d ch v m t cá th ch y thi hành c a Geronimo c tri n khai nh mô- un Các mô- un Geronimo c nh ngh a m t t p tin XML c g i m t k ho ch tri n khai (deployment plan) K ho ch tri n khai Geronimo cu#i bao g m m t t" h p c a m t k ho ch tri n khai ban u, m t t p tin Maven project.properties m t t p tin mơ hình #i t ng d án Maven (Maven Project Object Model -POM) Hình cho ta th%y cách th c t o tác c x lý nh th t o m t k ho ch tri n khai cu#i Hình X lý k ho ch tri n khai Geronimo N i dung c a m t k ho ch tri n khai c ki m soát b i m t t p tin XSD K ho ch tri n khai nh ngh a ID c a mô- un, thu c tính mơi tr ng cho m t mơ- un, ph thu c c a mô- un, d ch v mà mô- un cung c%p Geronimo Beans (GBeans) cho mô- un m t s# th khác Li t kê minh ho m t k ho ch tri n khai Geronimo )n gi$n Li t kê Ví d k ho ch tri n khai Geronimo !! " " ! $ $ %" " ! $ " !" ! # " ! # $ %" $ ! ! # Xây d ng ng d ng hòa tr n phía máy ch v i Geronimo REST ! Page of 13 $ # " # $ %" ! $ " ! $ !" &' ! # %" $ # ! " ! "( " ! ! ( " " " ! ( " " ( ( ) " " " * " './0 !" ' " " ( " % # " +#* # !" ,- " ( ! Khi ti n trình xây d ng biên d ch m t k ho ch tri n khai gi#ng nh k ho ch Li t kê 1, m t t p tin l u tr c%u hình (Configuration Archive - CAR) c t o v i m t tên nh%t Tên nh%t c sinh cho c%u hình li t kê s+ geronimo/example-1.0.0/car Các t p tin CAR c a Geronimo M t t p tin CAR c a Geronimo m t t p tin l u tr Java (Java Archive - JAR) ch a d ng th c tu n t hóa (serialized) c a m t k ho ch tri n khai b%t c ngu n tài nguyên b" sung khác M t k ho ch tri n khai ã tu n t hóa c ch a m t t p tin có tên config.ser t i th m c META-INF c a t p tin CAR Các t p tin CAR c t o b i m t trình c m thêm t o gói c a Geronimo cho Maven trình xây d ng Kho ch a c a Geronimo Kho ch a c a Geronimo n)i &ng ký c a t o tác th ng c t p h p l i d i d ng m t h th m c h th#ng t p tin B$n phân ph#i mã nh phân c a Geronimo cung c%p m t th m c có tên repository (kho ch a), ch a t%t c$ ph thu c cho mô- un, n n c a Geronimo lõi Trong Geronimo, m t t o tác m t thành ph n b%t k., ví d nh m t t p tin L u tr web (WAR), m t t p tin JAR, ho c m t t p tin CAR, c l u gi kho ch a c a Geronimo T o tác c l u gi ti n ích tri n khai dòng l nh ho c bàn i u n trang Web c a Geronimo web c cung c%p v i m t thao tác phân ph#i c a Geronimo T i v cài t Geronimo Hãy t$i v b$n n n Geronimo (Xem m c Tài nguyên), sau ó gi$i nén t p tin vào m t th m c, g i GERONIMO_HOME Sau Geronimo ã c cài t, b n m c a s" dòng l nh thay "i tên th m c thành th m c GERONIMO_HOME/bin sau ó ch y t p tin startup.sh Thao tác kh i ch y máy ch c a s" dòng l nh m i Khi máy ch ã kh i ng, b n s+ th%y m t hình t )ng t nh hình Hình C a s dòng l nh kh i ng c a Geronimo Xây d ng ng d ng hòa tr n phía máy ch v i Geronimo REST Page of 13 C a s" dòng l nh kh i ng cho th%y mô- un, u n#i ng d ng ã c n p c kh i ch y môi tr ng ch y c a Geronimo c thi t l p B n có th ng ng Geronimo ang ch y b ng cách s d ng k ch b$n l nh shutdown.sh, c/ng n m th m c GERONIMO_HOME\bin\ t i n)i cài t Geronimo c a b n Làm quen v i REST Representational State Transfer (REST) hay “chuy n giao tr ng thái i di n”, m t m u hình ki n trúc ph n m m m t ki u g i hàm truy c p c p nh t tài nguyên m ng Thu t ng REST, c nh c s d ng mô t$ vi c ngh a lu n án c a Roy Thomas Fielding (Xem m c Tài nguyên), th ng Xây d ng ng d ng hịa tr n phía máy ch v i Geronimo REST truy n d li u thông qua HTTP b ng cách s d ng yêu c u h i áp tiêu chu*n b i m t t p h p m c nh ph )ng th c c a HTTP nh : GET, POST, DELETE, PUT Page of 13 c nh ngh a Ki u ki n trúc c a REST yêu c u ta s d ng mã nh danh tài nguyên ng d ng (URIs) xác nh a i m truy c p i di n c a tài nguyên - chúng c g i tr ng thái i di n c a tài nguyên Các tr ng thái i di n có th c truy c p b ng cách s d ng m t t p h p h n ch ng t create, read, update, delete (CRUD) v i m t vài vi c b" sung thêm vào nh ng mà giao th c tiêu chu*n, ch(ng h n nh giao th c HTTP, ã cung c%p Các cu c trao "i d a n n REST c n ph$i phi tr ng thái, b ng cách ó ta làm cho tr thành m t nhân t# t o i u ki n thu n l i quan tr ng cho nh d ng d li u có ng ngh a ví d nh RSS, RDF, ngôn ng ng ngh a Web (Web Ontology Language - OWL) Atom Làm quen v i Google Maps Các API c a Google Maps cung c%p m t s# cách thao tác b$n ho c t o l%y b$n có th c nhúng vào m t trang Web 0i u quan tâm c a vi t kh$ n&ng mà API c a Google Maps cung c%p, cho phép l%y m t b$n d a m t xâu ký t bi u di n a i m Giao di n công c ng c a Google Maps Google Maps cung c%p API mà b n có th truy c p b ng cách s d ng yêu c u HTTP tiêu chu*n M1i yêu c u API ịi h'i m t khóa API mà b n c n ph$i có tr c ó Các API c a Google Maps h1 tr h i áp HTTP nh d ng d li u ki u KML GeoRSS S d ng API c a Google Maps b t u s d ng API c a Google Maps, tr c tiên b n ph$i &ng ký nh n c m t khóa API t trang mã c a Google Khóa mà b n nh n c s+ có hi u l c cho ch, m t tên mi n Web L y m t b n t Google Maps Google Maps cho bi t m t API, API cung c%p kh$ n&ng l%y m t bi u hi n (rendition) b$n s# hóa theo t a a lý th c (geo-coded) c a a i m ã cho l%y m t a i m thông tin khác v ng i s d ng, b n ch, c n th c hi n m t yêu c u HTTP GET tiêu chu*n b ng cách s d ng http://maps.google.com/maps/geo?q=Salt+Lake+City%2C+UT&output=xml&key={apikey} B n ph$i thay th {apikey} b ng khóa API mà Google c%p cho b n Ví d d i ây cho b n th%y cách s d ng API v i m t l nh curl m t c a s" dòng l nh (curl hay cURL vi t t t c a client URL, m t trình ti n ích có tham s# u vào m t URL, cho phép k t n#i giao ti p v i nhi u ki u máy ch khác v i giao th c khác nhau) , !! " 4'14' 4'7 6?@

Ngày đăng: 13/08/2016, 19:39

w