Tải bản đầy đủ (.pdf) (152 trang)

Nghiên cứu và phát triển BPEL DESIGNER sử dụng công nghệ JAVAFX

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.73 MB, 152 trang )




I HC KHOA HC T 
 




NGUYN M-MAI NG



NG



N TT NGHIP C 








TP. HCM, 2011



I HC KHOA HC T 


 






NGUYN M - 0842083
MAI NG - 0842126








N TT NGHIP C 


NG DN
NGUY





NHA NG DN





















u ca LV c c.
1
ng dn



NHN BIN





















 luu ca LV c c.

n bin
 lun tt nghip c  
i

LI C
 i Hc Khoa
Hc T i hc Quc gia Tp. H u kin thun li cho
c tc hi t nghip.
i v, th
ng dc t
thc hi 
 
ng dy, trang b ng kin tht

c tc hi n thy
trong lt nhiu trong
suc hin lu
 o mu kin
thun lt lu
M gng h 
chc chn s i nhng thic s 
t bo cn.
Mt ln nc nhm 
a tt c mi
TP. H 
-

 lun tt nghip c  
ii

 
Li Hc
 T

   :         

ng dn: Nguy
Thi gian thc hin: 21/2/2011
c hin: 0842083  Nguyn M Mai Ng
Lo :  n ng dng

:    
n ng dng. N n sau:
  SOA

 
 
 
 
 

:
-
-25/6/2010 -5/8: RIA, SOA,
BPEL 1.1, JavaFX, UDDI
-6/8/2010-15/8
-16/8/2010-31/8
-1/9-
 lun tt nghip c  
iii

--
--, 
-




Nguy
 24  6  2010
SV t

- 



 lun tt nghip c  
iv

MC LC
LI C i
 T ii
DANH M viii
DANH MNG xi
N xiii
. TNG QUAN 1
1.1 Tng quan v np phn mm hin nay 1
1.2 Gii thiu v king dch v(SOA) 3
1.2.1 m 3
1.2.2 S  nhau gia dch v ng dch v 5
1.2.3 Bnh trong king dch v 6
1.2.4 t ca mt h thc thit k theo king dch
v 7
1.2.5 Lng dch v mang li 10
1.2.6 m ca h thng SOA 11
1.2.7 ng ng dng SOA hin nay 13
1.3 Gii thi n BPEL Designer v
JAVAFX 16
1.3.1 t trin BPEL Designer 16
1.3.2  17
1.3.3 n BPEL-
ngh i hc Khoa H 17
 lun tt nghip c  
v

. P V VI

WS- 19
2.1  19
2.1.1  19
2.1.2  20
2.1.3  22
2.1.4  23
2.1.5  42
2.2  44
2.3 X i (Fault Handling) 44
2.4 Mt s BPEL Designer h tr WS- ng hin nay . 45
2.4.1. Oracle BPEL Process Manager 45
2.4.2. Eclipse BPEL Designer 46
2.5  51
. C TH
NGHIP V  M WEB SERVICE 53
3.1 t v 53
3.2 Gii thiu v Apche ODE 54
3.1.1 Gii thiu 54
3.1.2 Ca Apache ODE 54
3.1.3 t Apche ODE 56
3.1.4 Trin khai m 57
3.3 u v c t ch d liu 60
3.3.1 ng v UDDI 60
 lun tt nghip c  
vi

3.3.2 C liu ca UDDI 61
3.3.3 Gi d liu cho UDDI 66
3.4 Kt lun 67
 U V  JAVAFX 68

4.1 m v JavaFx 68
4.2 JavaFX platform 68
4.3 Javafx script 70
4.4 JavaFX runtime 71
4.5 JavaFx API 72
4.6  n 73
4.7 n khai mt d  75
4.8 Mt s User Interface trong JavaFx 76
4.9 Synchronize Data Models-Binding  Trigger 81
4.10 Kt lun 83
  NGHI BPELFX
DESIGNER 84
5.1 c 84
5.1.1  84
5.1.2  ch thng 84
5.1.3 c tin ca h thng 86
5.2 ng BPELfx Designer 86
5.3  92
5.3.1 Thit k   92
 lun tt nghip c  
vii

5.3.2 Thit k d li 97
5.3.3 Thit k giao din 101
5.4 t lun 114
 KT LUN 115
6.1 t qu c 115
6.2 n c  116
DANH MU THAM KHO 117


 lun tt nghip c  
viii

DANH M
- 3
-Kin phm ca IBM 14
- 20
- Quan h gie. 21
- v ng hp s dng invoke 26
-ng hp s dng ca Reply 28
-ng hp s dng ca Validate 29
-ng hp s dng ca Throw 30
-ng hp s dng ca Rethrow 31
-ng hp s dng ca Exit 32
-ng hp s dng ca Wait 33
-ng hp s dng ca Empty 33
-ng hp s dng ca Compensate Scope 34
-ng hp s dng ca Compensate 35
-ng hp s dng ca Flow 36
-ng hp s dng ca Pick 37
-ng hp s dng ca Foreach 39
-ng hp s dng ca Scope 40
-C 45
-c ca Oracle BPEL Process Manager 46
-To mi Eclipse BPEL Designer 47
-p tin WSDL 48
-Tc cho tp tin WSDL trong Eclipse BPEL Designer 48
-a tp tin WSDL trong BPEL Designer 49
-c trong tp tin WSDL 49
-Tri 51

-Che ODE[ 12 ] 54
-t Apache ODE 56
 lun tt nghip c  
ix

-t Apache ODE 57
-To file deploy.xml 58
-Deploy ti 58
-Test webservice 59
Hinh 3.7-Mi quan h gia doanh nghin 60
-ng v UDDI 61
-  liu trong UDDI 62
-  c 62
- c 64
-  c 65
-  c 66
-    67
-Nn tng ca JavaFx 69
-n runtime ca JavaFx 71
-Mt s  n JavaFx 74
- v Stage 78
-C thng BPELfx Designer 85
- Usecase ca h thng BPELfx Designer 87
- t ch activity 93
- t ch 94
- 94
-c thit k t BPELfx Designer 95
-mu thit k x  96
.8-  d li  97
-Giao di 101

-o mi mt file trong project 102
- ch 103
- ch 103
- ch 104
 lun tt nghip c  
x

-i PartnerLink 104
-nh sa mt invoke activity 106
-nh sa mt assign activity 107
-nh sa mt reply activity 108
-nh sa mt receive activity 108
-nh sa mt if activity 109
-nh sa mt repeat until activity 109
-nh sa mt while activity 110
-nh sa mt foreach activity 110
-nh sa mt wait activity 111
-nh sa mt throw activity 112
- 112
-o file deploy.xml 113
-t ti 113
-m tra dch v sau khi deploy 114

 lun tt nghip c  
xi

DANH MNG
Bng 2.1- v PartnerLink 22
Bng 2.2-C 22
Bng 2.3-c Activity trong BPEL 2.0 25

Bng 2.4-ca receive 26
Bng 2.5-Ca invoke 27
Bng 2.6-Ca Reply 28
Bng 2.7-Ca Validate 29
Bng 2.8-Ca Assign 30
Bng 2.9-Ca Throw 31
Bng 2.10-Ca Rethrow 32
Bng 2.11-Ca Exit 32
Bng 2.12-Ca wait 33
Bng 2.13-Ca Empty 34
Bng 2.14-Ca Compensate Scope 35
Bng 2.15-Ca Compensate 35
Bng 2.16-Ca Flow 36
Bng 2.17-Ca RepeatUntil 36
Bng 2.18-Ca Pick 37
Bng 2.19-Ca If 38
Bng 2.20-Ca Foreach 39
Bng 2.21-Ca While 40
Bng 2.22-Ca Scope 41
Bng 2.23-Ni dung tp tin deploy 50
Bng 4.1- v JavaFx script 70
Bng 4.2- 73
Bng 4.3- v Stage 77
Bng 4.4- v Scene 78
Bng 4.5- v Style sheet 79
 lun tt nghip c  
xii

Bng 4.6- v Scene 80
Bng 5.1-Bng Account. 98

Bng 5.2-Bng Account 98
Bng 5.3-Bng Admin 98
Bng 5.4-Bng Project 99
Bng 5.5-Bng File 99
Bng 5.6-Bng Url 100
Bng 5.7-C file BPEL 100
Bng 5.8-C file deploy.xml 101

 lun tt nghip c  
xiii

N

  nghu trong lum:
 
 
 
 
  
      

 Kt qu c:
 t v king dch vm ca king dch
vng ca king dch v 
ca lu
 Mt s m v BPEL 2.0 bao g p v,
  t s    c
  
 H th t v UDDI bao g   m, c   c t
chc d lit v  

  nghim ng dng BPEL Designer v Java Fx
vng Web, h tr t k 
m v v 
m Web service.
 Nn g6 
ng Quan
  thc trng c  phn
mm hin nay. T nhng thc tr gii thiu t
 lun tt nghip c  
xiv

bn mt trong nhng ging dch
v ng tht mi dung cn.
          ghip v vi BPEL 2.0 
Apache ODE
C2 gii v     

 
       n.     
 gii thiu mt s m v Apache ODE bao gm: c
n khai mp v .
 c gic thp v  
tim ki Webservice
 gii thiu v  tr cho vi 
.
: u v  JavaFx
4 gii thit v g ngh Javafx, mt gi
 ng ng dng c
 nghi BPELfx Designer
 t v  nghi

ng d huyt v 
 
 Kt lun
 t qu n c 



 lun tt nghip c  
1

 TNG QUAN
N  thc trng
c phn mm hin nay. T nhng thc tr
s gii thiu tn mt trong nhng gin
ng dch v ng thc mi dung cn.
1.1 Tng quan v np phn mm hin nay
Th k t th k vi s  ca cu 
t bip phn mm. n ra m
mnh m n mi mt hong kinh t i ca hu kh
gih c ng dng mnh m i sng kinh t 
hhn kinh t
th gii mt lui, nn nhng
thng th o l i vi nhn kinh t
i vi nh
t Nam.
i s n mng 
c gii quyt. Phn m c tng
  t khi tm ki        (chng hn 
c mi t chc phn mm
theo mn n m. Mt thc trt nhiu

h thng phn mc thc hic t
c bit v thng phn mm cao cn
n m gng gii quyt v   phc tp vn tip
t    
truyn tht pht hin nhi mi to
ng nht, mt phu trao 
h thng phn mm vi nhau. Nhu truyn thi vi t chc
CNTT vu mi
phc gi  dn mi
 lun tt nghip c  
2

Hi t chc mu phi mt vi v 
t bi  n ra vi t 
p v  u chc
 p vng th ng. S i phn mm
pht cm d  p.
Hu h chu s hu nhng ng dng vi
nhng ki    thp k   u h 
nghip chn gi  n mm ln vc
p s gng st hi nhau, b
kt h nhit vit kh thi.
n gi
t cao.  g
kt hp nhng ng du nghip v c tng
hp nhc tr v, gi vp phi mt s 
  u nghip v.
 Phc vi nhi i th
cc tp.
 Phc vi nhiu dng d li

 u nghip v i phi tc
cp nhc.
 Vic ci tii phi ph thu
 V bo mt ng lhi php t
nhiu h thi ch  bo m
 c qup v 
hp t nhiu module vi nhiu ki
n nh  s phc tp trong cu
n mm, thit trong vic thit k h th
t ging di.
 lun tt nghip c  
3

           
COM/DCOM (Distributed Common Object Model), CORBA (Common Object
p ng d
t nh. Gi c
ng c  m nhn trc k vng to
ng trong kin mm.
1.2 Gii thiu v king dch v(SOA)
1.2.1 m
SOA - Service Oriented Architecture (Ki   ng Dch v nh
km v h thi ng dc xem
t ngun cung cp dch v'[ 7 ].
     gin    ng dch v (Service-oriented
ng tip cn vi vic thit k n mm,
ch   thng theo d          
ng mng. H tht tp hch v c chung
i vi nhau trong ng cnh mt tip v. S cn
 


-
  p (Service provider) dch v cn cung c    dch v ca
t dch v  i s dng
 lun tt nghip c  
4

  v dch
v cp vp.
SOA cung cp gi gii quy tn ti c thng hin nay
c tnh. Mt h thng tri
  m rt t n tng cho
vi dng li nh
Dch v u t then ch hiu dch v 
-n mm) thc hip v 
tp hch v kt ni 'mm do' vt ng d 
chuyn' vi mt ng dn bit k thu
 gch vc lp vi nn
tng h th    d       n ng
dp v p chu 
phc tp k thui.
Thit k n thc hin dch v (phn mm) vi giao tip gi dch
vt giao tip nhng d dng
dch v bt ch thc hin dch vng d
l  sn s ch v tinh g th tri
s d    p v     dng phn
mm t linh ho ci tin dch v 
n ng dng client s dng dch v.
m quan trng nht c t ni 'mm do' (nh s chu
giao tiLoose Coupling[ 31 ]  dch v 

c s dng vn tng bt k c vit v
bt k, ng d t vi dch v c li).
SOA dc thit k quan trng:
 - lu v nh
  li-gic trong t-dun (hay 'hi vi truy
cp t .
 lun tt nghip c  
5

1.2.2 S a dch v ng dch v
     i phn giao tip vi phn thc hin dch v.
 n m  cp nhiu g
Dch v web. Dch v c--
giao tich v  gi
mt[ 8 ].
V n mt t  
d ng dp, hin thc giao ti
c gi giao tip. Giao ti tri
thi 'king giao tip hch v 
module phn mm nghip v c truy c
thu - . Ngay c vu dch v 1 chiu
trc ti  mt phn mn mt phn m
 ng dch v    t c   n cung cp dch v 
 dng dch v.
n ca dch v web dt nn tp h
ngh WSDL (Webservices Description Language), SOAP (Simple Object Access
         
 p ng dp.
Theo th          c thay bng
 u qu n t

c tu qu).
ch v c t  
thit k phn mm. Dch v  thu thc hin S
 thc hin v thui dch v web
i tt c dch v ch v
i quan h : s ph bin ca dch v y s 
trin ct ca SOA s ch v 

 lun tt nghip c  
6

1.2.3 Bng dch v
 S  ranh gii gich v
ch v thc hi yn giao tip.
n giao ti nh v nhnh dp s dng trong
 c chp nh 
c x [ 6 ] 
truy ca dch v. Ta ch cn g
nh dn ph 
ca dch v  ng th lt
c do s t gin giao tin x 
ca dch v.
 ch v t hong
ch v cn phc tring thc th c l
 thut dch v ch v ph n v
  s  c thc hich v cy
 n thing c  tip tc hong
ng hp mt dch v c h c t
p li, hay gp  t) b d
k thut v o mt [ 6 ]

 cp trong

 ch v chia s c 
ch v n giao tip c
h tr chia s c d li d
liu (schema) chuc lgc lp h n h thng ca ta s
  m rng.
 ch v
t dch v khi mui mt dch v i
thu (requirements) ca dch v 
 lun tt nghip c  
7

o m thc hii dch v cn phi cung c

1.2.4 t ca mt h thc thit k theo king dch
v
 t ni mm do
 cp  t trong nht quan trng nht ca ki
 t ni mm d trong
phn mc lp vi nhau. S c li mt
  nh hng nht t n
mi mt s tit kim ln v thc
i hay b sung mt chi cho phn mm. M k
 trong phn mm ng trc tin kh  i ca h thng.
 ln nht ct Loose Coupling mang lc
 theo thi gian ca phn mm.
  dng dch v
V   phn mm vi nhau,
m 

v phn mm:
  ca dch v phc lp vu ca dch v. B
th i thua dch v  c hiu qu cao
u.
 M  dng dch v n bit nhi
tin ng nh c   p dch v  s dng dch v c cung cp.
 dng dch v bit v nh dng d liu c
cung cp dch v  git.
 S dng dch v bng b
c triu gi dch v bng bi gi mp vi
  cnh tn x  kt qu v
ng qua mi ch p

×