海關(guān)開(kāi)發(fā)平臺(tái)二次開(kāi)發(fā)手冊(cè)_第1頁(yè)
海關(guān)開(kāi)發(fā)平臺(tái)二次開(kāi)發(fā)手冊(cè)_第2頁(yè)
海關(guān)開(kāi)發(fā)平臺(tái)二次開(kāi)發(fā)手冊(cè)_第3頁(yè)
海關(guān)開(kāi)發(fā)平臺(tái)二次開(kāi)發(fā)手冊(cè)_第4頁(yè)
海關(guān)開(kāi)發(fā)平臺(tái)二次開(kāi)發(fā)手冊(cè)_第5頁(yè)
已閱讀5頁(yè),還剩148頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

金關(guān)工程二期

開(kāi)發(fā)平臺(tái)二次開(kāi)發(fā)手冊(cè)

目錄

1引言1

1.1編寫(xiě)目的1

1.2文檔范圍1

2平臺(tái)擴(kuò)展分類(lèi)1

3構(gòu)件擴(kuò)展開(kāi)發(fā)2

3.1運(yùn)算邏輯類(lèi)構(gòu)件開(kāi)發(fā)2

3.1.1創(chuàng)建運(yùn)算邏輯2

3.1.2導(dǎo)出JAR文件8

3.1.3導(dǎo)出構(gòu)件源代碼13

3.1.4導(dǎo)出Javadoc文件16

3.1.5導(dǎo)出CADP項(xiàng)目開(kāi)發(fā)文檔19

3.2服務(wù)類(lèi)構(gòu)件開(kāi)發(fā)24

3.2.1啟動(dòng)Studio25

3.2.2創(chuàng)建項(xiàng)目25

3.2.3添加外部jar27

3.2.4添加CADP運(yùn)行時(shí)需要的jar28

3.2.5創(chuàng)建構(gòu)件包28

3.2.6根據(jù)WSDL生成客戶(hù)端代碼30

3.2.7封裝調(diào)用客戶(hù)端的接口類(lèi)和實(shí)現(xiàn)類(lèi)30

3.2.8定義Java構(gòu)件服務(wù)31

3.2.9導(dǎo)出服務(wù)引用庫(kù)37

3210導(dǎo)出構(gòu)件源代碼40

3.2.11導(dǎo)出Javadoc文件43

3.2.12導(dǎo)出CADP項(xiàng)目開(kāi)發(fā)文檔46

3.3SDK構(gòu)件開(kāi)發(fā)51

3.4組合類(lèi)構(gòu)件開(kāi)發(fā)52

3.4.1創(chuàng)建構(gòu)件包52

3.4.2導(dǎo)出ECD53

3.4.3導(dǎo)出源代碼56

3.4.4導(dǎo)出項(xiàng)目開(kāi)發(fā)文檔59

3.4.5管理構(gòu)件依賴(lài)64

4開(kāi)發(fā)工具擴(kuò)展開(kāi)發(fā)65

4.1模板和向?qū)ч_(kāi)發(fā)65

4.1.1向?qū)г烷_(kāi)發(fā)66

4.1.2新建功能向?qū)?6

4.1.3定義功能向?qū)ы?yè)68

4.1.4定義頁(yè)面流模板70

4.1.5定義邏輯流模板78

4.1.6定義錄入頁(yè)面模板87

4.1.7定義返回頁(yè)面模板89

4.1.8定義初始化模板91

4.1.9配置模板信息92

-II-

4.1.10部署運(yùn)行93

4.1.11導(dǎo)出功能向?qū)?6

5NU1控件擴(kuò)展開(kāi)發(fā)98

5.1JS控件擴(kuò)展98

5.2JSP選用板擴(kuò)展104

5.3JSP代碼提示擴(kuò)展104

6框架擴(kuò)展開(kāi)發(fā)107

6.1配置類(lèi)擴(kuò)展107

6.1.1客戶(hù)端接入攔截?cái)U(kuò)展107

6.1.2頁(yè)面流攔截?cái)U(kuò)展110

6.1.3邏輯流攔截?cái)U(kuò)展115

6.1.4實(shí)體攔截?cái)U(kuò)展120

6.1.5命名SQL攔截?cái)U(kuò)展124

6.1.6構(gòu)件包加載/卸載擴(kuò)展128

6.1.7Web請(qǐng)求過(guò)濾擴(kuò)展131

6.1.8Processor配置擴(kuò)展134

6.1.9應(yīng)用啟動(dòng)擴(kuò)展137

6.1.10系統(tǒng)服務(wù)擴(kuò)展140

6.2API擴(kuò)展142

6.2.1數(shù)據(jù)庫(kù)連接擴(kuò)展142

6.2.2事務(wù)同步擴(kuò)展148

-Hi-

1引言

1.1編寫(xiě)目的

本手冊(cè)主要說(shuō)明金關(guān)二期應(yīng)用開(kāi)發(fā)平臺(tái)的擴(kuò)展開(kāi)發(fā)相關(guān)操作方法及使用,為用戶(hù)使用海

關(guān)應(yīng)用開(kāi)發(fā)平臺(tái)完成二次開(kāi)發(fā)提供指導(dǎo)和參考。

1.2文檔范圍

本文檔說(shuō)明如何在開(kāi)發(fā)平臺(tái)進(jìn)行相關(guān)的擴(kuò)展開(kāi)發(fā)。本手冊(cè)主要包含構(gòu)件擴(kuò)展開(kāi)發(fā)、開(kāi)

發(fā)工具擴(kuò)展開(kāi)發(fā)、NUI控件擴(kuò)展開(kāi)發(fā)和框架擴(kuò)展開(kāi)發(fā)等,旨在為客戶(hù)使用海關(guān)應(yīng)用開(kāi)發(fā)平臺(tái)

進(jìn)行二次開(kāi)發(fā)提供幫助。

2平臺(tái)擴(kuò)展分類(lèi)

全面考慮一個(gè)應(yīng)用所需要的可復(fù)用資產(chǎn),根據(jù)海關(guān)應(yīng)用開(kāi)發(fā)平臺(tái)擴(kuò)展的方式,平臺(tái)擴(kuò)展

開(kāi)發(fā)主要包括:構(gòu)件擴(kuò)展開(kāi)發(fā)、開(kāi)發(fā)工具擴(kuò)展開(kāi)發(fā)、NUI控件擴(kuò)展開(kāi)發(fā)和框架擴(kuò)展開(kāi)發(fā)。

構(gòu)件擴(kuò)展的表現(xiàn)形式分為運(yùn)算邏輯類(lèi)構(gòu)件、服務(wù)類(lèi)構(gòu)件、SDK構(gòu)件、組合類(lèi)構(gòu)件。

>運(yùn)算邏輯類(lèi)構(gòu)件:主要指把公用的java方法封裝為可拖拽的運(yùn)算邏輯。例如,將

數(shù)字格式轉(zhuǎn)化為貨幣形式可以封裝為運(yùn)算邏輯類(lèi)構(gòu)件。

>服務(wù)類(lèi)構(gòu)件:主要指與第三方軟件集成,通過(guò)服務(wù)裝配,封裝為服務(wù)引用庫(kù)。

>SDK構(gòu)件:主要指海關(guān)業(yè)務(wù)支撐平臺(tái)和開(kāi)發(fā)平臺(tái)提供的SDK,封裝為SDK構(gòu)件。

>組合類(lèi)構(gòu)件:實(shí)現(xiàn)將上述構(gòu)件如運(yùn)算邏輯類(lèi)構(gòu)件等組合在一起,實(shí)現(xiàn)特定功能的組

合類(lèi)構(gòu)件。

開(kāi)發(fā)工具擴(kuò)展的表現(xiàn)形式為模板和向?qū)А?/p>

>模板和向?qū)В褐饕笇㈨?xiàng)目中可以重復(fù)利用的功能模塊的開(kāi)發(fā)過(guò)程配置成向?qū)?,?/p>

方面提高了現(xiàn)有項(xiàng)目的開(kāi)發(fā)效率,另一方面,也可以利用該向?qū)г谄渌捻?xiàng)目中快

速開(kāi)發(fā)出功能類(lèi)似的模塊。例如,單表維護(hù)向?qū)Э梢宰鳛槟0搴拖驅(qū)А?/p>

-1-

NUI控件擴(kuò)展主要指用戶(hù)使用NUI控件擴(kuò)展的組件。例如,NUI的JS擴(kuò)展、NUI的JSP

選用板擴(kuò)展和JSP代碼提示擴(kuò)展。

框架擴(kuò)展的內(nèi)容包括配置類(lèi)擴(kuò)展和API擴(kuò)展開(kāi)發(fā)。

3構(gòu)件擴(kuò)展開(kāi)發(fā)

構(gòu)件擴(kuò)展的開(kāi)發(fā)主要包括運(yùn)算邏輯類(lèi)構(gòu)件、服務(wù)類(lèi)構(gòu)件、SDK構(gòu)件、組合類(lèi)構(gòu)件的開(kāi)

發(fā)。下面將詳細(xì)介紹如何開(kāi)發(fā)這些構(gòu)件擴(kuò)展。

3.1運(yùn)算邏輯類(lèi)構(gòu)件開(kāi)發(fā)

3.1.1創(chuàng)建運(yùn)算邏輯

在Studio的“資源管理器"選中"bizlet/mon.helloworld/運(yùn)算/運(yùn)算邏輯

/com.mon.helloworld單擊右鍵,在彈出菜單中選擇"創(chuàng)建”,然后選擇“運(yùn)算

邏輯”,如下圖所示:

-2-

文件更)編輯坦)瀏覽?搜索?項(xiàng)目也)運(yùn)行?窗口戲)幫助?

口]回閩他▽???r

囹'abframe

BLbizlet

l-i&com.sdrcc.common,helloworld

QB〔j展現(xiàn)

ffi匠)構(gòu)件

國(guó)s數(shù)據(jù)

日通運(yùn)算

eca運(yùn)算邏輯

ffilcom.sdrcc.common,helloworld

用豺Jav:創(chuàng)建?10運(yùn)篁邏輯

田國(guó)服務(wù)8刷新但)F5

國(guó)Ijwl流程用包

由昌配置腦復(fù)制Ctrl+C

u文件

由0WEB的復(fù)制全名

ffi晶Jav推C3文件夾

:粘貼Ctrl+V

品system,sd^

箕刪除Delete「土其他(Q)..

+—wizardConfigS

「,項(xiàng)目(£)..

國(guó)&XXXServiceLib電?導(dǎo)入9…

M導(dǎo)出@...

曰)打開(kāi)WindowsExplorer...

刖數(shù)據(jù)庫(kù)資源管理器驗(yàn)證

小妲也)?

比較對(duì)象0)?

+4連接

從本地歷史記錄復(fù)原(X)..,「雇性問(wèn)題調(diào)試

h示的控制臺(tái).

Al?+Fr??qy

圖3-1選中創(chuàng)建運(yùn)算邏輯

單擊“運(yùn)算邏輯”彈出創(chuàng)建運(yùn)算邏輯窗口,如下圖所示:

-3-

圖3-2倉(cāng)1J建Java類(lèi)

輸入名稱(chēng)(類(lèi)名),單擊【下一步】按鈕,打開(kāi)如下界面:

-4-

圖3-3創(chuàng)建運(yùn)算邏輯

輸入運(yùn)算邏輯顯示名稱(chēng),單擊。按鈕,彈出如下窗口:

圖3-4修改運(yùn)算邏輯的Annotation信息

輸入“運(yùn)算邏輯顯示名稱(chēng)”,單擊。按鈕,增加運(yùn)算邏輯方法,輸入方法名,設(shè)置是

否靜態(tài)方法,選擇返回值類(lèi)型。然后單擊參數(shù)列表列的口按鈕彈出,參數(shù)設(shè)置窗口,如

下圖所示:

-5-

N參數(shù)設(shè)置

設(shè)置運(yùn)尊邏輯的參數(shù)

參數(shù)設(shè)置件全0鉗。陽(yáng)X

參數(shù)名參數(shù)別名參數(shù)類(lèi)型數(shù)組缺省值坡省值..參數(shù)描述

print要打卬輸出的對(duì)象String□變量

二一IUT-J之

?[確定][取消]

圖3-5設(shè)置運(yùn)算邏輯的參數(shù)

輸入?yún)?shù)名,參數(shù)別名,選擇參數(shù)類(lèi)型,單擊【確定】按鈕,返回運(yùn)算邏輯方法設(shè)置頁(yè)

面,如下圖所示:

-6-

圖3-6運(yùn)算邏輯方法設(shè)置

單擊【下一步】按鈕,打開(kāi)“預(yù)覽運(yùn)算邏輯信息”窗口,如下圖所示:

圖3-7預(yù)覽生成運(yùn)算邏輯的效果

單擊【完成】按鈕后,會(huì)生成下面的Java文件。

packagecom.sdrcc.helloworld;

import.customs.cadp.system.annotation.Bizlet;

import.customs.cadp.system.annotation.BizletParam;

@Bizlet("輸出打印")

publicclassPrinter{

/**

*@paramprint

*@author王杰飛

*/

-7-

@Bizlet(params={@BizletParam(index=0,paramAlias="要打印輸出的對(duì)象”)})

publicstaticvoidprint(Stringprint){

)

在print(Objectprint)方法中加入方法體代碼,完成創(chuàng)建運(yùn)算邏輯。

System.out.println(print);

3.1.2導(dǎo)出JAR文件

在Studio的“資源管理器”選中“bizlet/mon.helloworld/運(yùn)算

/Java/mon.helloworld單擊右鍵,在彈出菜單選擇“導(dǎo)出”,打開(kāi)如下窗

□:

-8-

圖3-8導(dǎo)出JAR文件

選擇“Java/JAR文件”,單擊【下一步】按鈕,打開(kāi)如下界面:

-9-

圖3-9定義導(dǎo)出到JAR中的資源

單擊【瀏覽】按鈕指定JAR文件的位置及名稱(chēng),如下圖所示:

-10-

另存為

保存在d):lOprimeton6nx

apache-tomcaL5.5.20

eosserver

lOide

Ir^lxminstall

lOXXXServiceLibDoc

亡)XXXServiceLibJavaD。c

里面

文件名國(guó)):helloworldljar保存⑤)

保存類(lèi)型復(fù)):取消]

圖3-10指定JAR文件的位置及名稱(chēng)

指定導(dǎo)出源代碼的路徑及名稱(chēng),單擊【保存】按鈕,單擊【下一步】按鈕,打開(kāi)“JAR

打包選項(xiàng)”窗口,如下圖所示:

-11-

圖3-11JAR打包選項(xiàng)

單擊【下一步】按鈕,打開(kāi)“JAR清單規(guī)范”窗口,如下圖所示:

圖3-12JAR清單規(guī)范

單擊【完成】按鈕,完成導(dǎo)出。

3.1.3導(dǎo)出構(gòu)件源代碼

在Studio的“資源管理器”選中“bizlet/mon.helloworld/運(yùn)算邏輯

/Java/mon.helloworld單擊右鍵,在彈出菜單選擇“導(dǎo)出”,打開(kāi)如下窗

口:

-13-

圖3-13導(dǎo)出源代碼

選中CADP/導(dǎo)出源代碼,單擊【下一步】按鈕,打開(kāi)如下窗口:

-14-

圖3-14選擇要導(dǎo)出的內(nèi)容

選擇要導(dǎo)出的源代碼所在的構(gòu)件包,單擊【瀏覽】按鈕指定導(dǎo)出源代碼的位置及名稱(chēng),

如下圖所示:

-15-

保存位置:0區(qū)]

保存在Q):primetonBnxvJ夕"因,

pacc3

he-t

i1ocm

zetDDOw

tJa?

z1ewoc

我最近的文檔r

ossve

al

devi

sWtl

-vl

m1nWIn

里面XXsLi

Mvice

XXsWcpeLi

&

我基int

sce

XXLi

我的電腦

網(wǎng)上鄰居

文件名國(guó)):helloworld保存⑤

保存類(lèi)型復(fù)):*.zip取消

圖3-15指定導(dǎo)出源代碼的位置及名稱(chēng)

指定導(dǎo)出源代碼的路徑及名稱(chēng),單擊【保存】按鈕,單擊【完成】按鈕,提示導(dǎo)出成功,

單擊【確定】按鈕,完成源代碼的導(dǎo)出。

3.1.4導(dǎo)出Javadoc文件

在Studio的"資源管理器"、選中"bizlet/mon.helloworld/運(yùn)算邏輯

/Java/mon.helloworld單擊右鍵,在彈出菜單選擇"導(dǎo)出",打開(kāi)如下窗

□:

圖3-16導(dǎo)出Javadoc

選中Java/Javadoc,單擊【下一步】按鈕,打開(kāi)如下窗口:

-17-

圖3-17選擇要導(dǎo)出的Javadoc所在的項(xiàng)目

選擇要導(dǎo)出的Javadoc所在的項(xiàng)目,單擊【瀏覽】按鈕指定導(dǎo)出Javadoc的位置,如

下圖所示:

18

選擇目標(biāo)0B

選擇Javadoc目標(biāo)文件夾?

I口eos6

IOE0S6學(xué)習(xí)

1neossetup

I口primeton

primeton6nx

田百japache-tomcat-5.5.20

1bizletDoc

bzletJavaDoc

文件夾:bzletJavaDoc

新建文件夾血)

圖3-18指定導(dǎo)出Javadoc的位置

指定導(dǎo)出Javadoc的路徑,單擊【確定】按鈕,單擊【完成】按鈕,完成Javadoc的

導(dǎo)出。

3.1.5導(dǎo)出CADP項(xiàng)目開(kāi)發(fā)文檔

在Studio的“資源管理器"選中"bizlet/mon.helloworld/運(yùn)算邏輯

/Java/mon.helloworld",單擊右鍵,在彈出菜單選擇"導(dǎo)出",打開(kāi)如下窗

口:

-19-

圖3-19導(dǎo)出項(xiàng)目開(kāi)發(fā)文檔

選中CADP/導(dǎo)出CADP項(xiàng)目開(kāi)發(fā)文檔,單擊【下一步】按鈕,打開(kāi)如下窗口:

-20-

導(dǎo)導(dǎo)出B

請(qǐng)選擇要導(dǎo)出的文者內(nèi)容

話指定輸出目錄.

話選擇項(xiàng)目:bizlet

選擇要導(dǎo)出的內(nèi)容:

?回搦com.sdrcc.common,helloworld

回&WEB

E…全割選中"j|全部不選]

保存位置:v|[瀏覽⑥)…

|導(dǎo)入配置信息.|

?[一步.][取消

圖3-20選擇要導(dǎo)出的文檔內(nèi)容

單擊【全部選中】選擇要導(dǎo)出的內(nèi)容,單擊【瀏覽】按鈕指定導(dǎo)出文檔的位置,如下圖

所示:

-21-

圖3-21指定導(dǎo)出文檔的位置

指定導(dǎo)出項(xiàng)目開(kāi)發(fā)文檔的路徑,單擊【確定】按鈕,單擊【下一步】按鈕打開(kāi)如下窗口:

-22-

導(dǎo)導(dǎo)出B

樣式配置

樣式配置

選擇生成文檔的格式

?HTML

PDF

選擇生成文檔的樣式

G系統(tǒng)默認(rèn)

O其他系統(tǒng)樣式

O自定義樣式

I編輯而:|

?[<1一步也):卞二步?S…j[完成但)][取消

圖3-22樣式配置

單擊【下一步】按鈕打開(kāi)如下窗口:

-23-

圖3-23總結(jié)報(bào)告

填寫(xiě)“文檔標(biāo)題”和“總結(jié)報(bào)告”內(nèi)容,單擊【完成】按鈕,完成項(xiàng)目開(kāi)發(fā)文檔導(dǎo)出。

3.2服務(wù)類(lèi)構(gòu)件開(kāi)發(fā)

CADP平臺(tái)和第三方軟件或系統(tǒng)進(jìn)行集成時(shí)可使用的協(xié)議有多種,例如SOAP、HTTP、

EJB、JMS等。其中基于SOAP標(biāo)準(zhǔn)的WebService方式是最常用的集成方式,因?yàn)閃eb

Service方式有以下三個(gè)特點(diǎn):

1、松耦合,具有非侵入性。

2、跨平臺(tái),可以讓異構(gòu)的程序相互訪問(wèn)。

-24-

3、開(kāi)放性,基于國(guó)際標(biāo)準(zhǔn)協(xié)議。

通過(guò)WebService方式集成常用的做法是由被調(diào)用方提供標(biāo)準(zhǔn)的WSDL文件,調(diào)用方

基于此文件生成客戶(hù)端代碼,從而實(shí)現(xiàn)松耦合、非侵入性的調(diào)用,在CADP中最終發(fā)布為

可部署服務(wù)包供構(gòu)件使用者使用,下面對(duì)這種集成方式的開(kāi)發(fā)步驟進(jìn)行說(shuō)明。

3.2.1啟動(dòng)Studio

在CADP安裝成功后,即可啟動(dòng)CADPStudio。

在操作系統(tǒng)中,單擊【開(kāi)始/所有程序£人口「£人口「$1必0】菜單項(xiàng),進(jìn)入CADPStudio

系統(tǒng),系統(tǒng)默認(rèn)顯示CADP開(kāi)發(fā)視圖,如下圖所示。

圖3-24CADP開(kāi)發(fā)視圖

3.2.2創(chuàng)建項(xiàng)目

1、選擇【文件/新建/CADP項(xiàng)目】菜單,系統(tǒng)彈出“新建CADP項(xiàng)目”向?qū)В?/p>

2、選擇創(chuàng)建“空項(xiàng)目”,單擊【下一步】按鈕,彈出“新建CADP項(xiàng)目”界面,如下

圖所示;

-25-

圖3-25新建CADP項(xiàng)目

3、配置項(xiàng)目信息。

將“項(xiàng)目名稱(chēng)”修改為“XXXServiceLib”,其他的參數(shù)不需要修改。其中XXX為

集成軟件或系統(tǒng)的縮寫(xiě)。

4、單擊【完成】按鈕。

系統(tǒng)返回CADP開(kāi)發(fā)透視圖,創(chuàng)建的項(xiàng)目顯示在“資源管理器”視圖中,如下圖所

/J\o

-26-

目包%D

國(guó)旬a(chǎn)bframe

s

田,0WEB

田晶Java^

品system,sdvx

圖3-26資源管理器

3.2.3添加外部jar

在Studio的“資源管理器”選中“XXXServiceLib”項(xiàng)目,單擊鼠標(biāo)右鍵,選擇“屬性”,

在彈出窗口的左側(cè)選項(xiàng)中選擇“Java構(gòu)建路徑”,然后在右側(cè)窗口中選擇“庫(kù)”標(biāo)簽,如下

圖所示:

-27-

圖3-27java構(gòu)件路徑

單擊【添加外部JAR】按鈕,選擇要添加的JAR包,然后單擊【確定】按鈕。

3.2.4添加CADP運(yùn)行時(shí)需要的jar

在CADP開(kāi)發(fā)環(huán)境tomcat的commonMib下添加以下jar包,供CADP運(yùn)行時(shí)使用。

3.2.5創(chuàng)建構(gòu)件包

1、打開(kāi)“創(chuàng)建構(gòu)件包”向?qū)А?/p>

在Studio的“資源管理器”選中“XXXServiceLib”項(xiàng)目,單擊鼠標(biāo)右鍵,選擇【創(chuàng)

建/構(gòu)件包】快捷菜單項(xiàng)。

系統(tǒng)彈出“新建構(gòu)件包”界面,如下圖所示:

-28-

圖3-28新建構(gòu)件包

2、修改配置信息。

將“構(gòu)件包名"修改為"mon.xxx",此時(shí)“顯示名稱(chēng)”將和"構(gòu)件

包名”保持一致。其中XXX為集成軟件或系統(tǒng)的縮寫(xiě)。

3、單擊【完成】按鈕。

系統(tǒng)返回CADP開(kāi)發(fā)透視圖,創(chuàng)建的構(gòu)件包列在“資源管理器”視圖中,如下圖所

示:

-29-

圖3-29資源管理器

3.2.6根據(jù)WSDL生成客戶(hù)端代碼

利用ApacheAxis提供的工具(WSDL2JAVA),根據(jù)第三方軟件或系統(tǒng)提供的WSDL

和Schema,產(chǎn)生調(diào)用服務(wù)客戶(hù)端的JAVA類(lèi)。

3.2.7封裝調(diào)用客戶(hù)端的接口類(lèi)和實(shí)現(xiàn)類(lèi)

在CADP中封裝java構(gòu)件服務(wù)構(gòu)件需要兩個(gè)類(lèi),一個(gè)是接口類(lèi)(XXXApi.java),一個(gè)是

實(shí)現(xiàn)類(lèi)(XXXApilmpl.java),其中XXX為集成軟件或系統(tǒng)的縮寫(xiě)。

其中XXXApi.java接口類(lèi)需要加上Javadoc注釋?zhuān)员阍诜?wù)構(gòu)件中進(jìn)行友好的幫助

提示,Javadoc注釋結(jié)構(gòu)如下:

/**

*功能:功能描述

*@paramfolderPath上傳的文檔所放的目的路徑

*@paramdocName文檔名稱(chēng)

*@paramfilename帶絕對(duì)路徑的文件名

-30-

*@return返回信息描述

7

其中功能描述用來(lái)說(shuō)明接口的功能,返回信息描述用來(lái)說(shuō)明返回的信息描述。

3.2.8定義Java構(gòu)件服務(wù)

1、在構(gòu)件“XXXComponent”右擊,在彈出菜單中選擇“添加服務(wù)”。

2、在打開(kāi)的服務(wù)屬性設(shè)置對(duì)話框中設(shè)置服務(wù)的名稱(chēng)為XXXService,如下圖所示,其中

XXX為集成軟件或系統(tǒng)的縮寫(xiě)。

圖3-30服務(wù)屬性設(shè)置

3、為構(gòu)件服務(wù)指定接口描述。

在構(gòu)件裝配圖XXXCompos讓e中,雙擊構(gòu)件的服務(wù)XXXService,在彈出的屬性對(duì)話框

中通過(guò)【瀏覽】按鈕,打開(kāi)如下界面:

-31-

7選擇接口

選擇接口類(lèi)型

話指定接口的類(lèi)型:WSDL^Java

OWSDL

選擇一個(gè)*SDL中的portType作為接口描述

@Java^

選擇一個(gè)Jav或型作為接口描述

?U一步⑥I下一步?>]|完成國(guó))I[取消I

圖3-31選擇接口類(lèi)型

選擇接口類(lèi)型為java,用鼠標(biāo)單擊【下一步】按鈕,打開(kāi)如下窗口。

-32-

S選擇接口B

選擇一個(gè)Ja▼拿型作為接口搽述

輸入或選擇選擇一個(gè)Jav或型

com.sdrcc.common.xxx.XXXAPi

匹配的類(lèi)型⑥):

?[讓一步⑹)下一步直)一[完成9|[取消]

圖3-32選擇接口

輸入接口實(shí)現(xiàn)類(lèi)mon.xxx.XXXApi,選擇接口類(lèi)所在位置,單擊【完成】

按鈕,返回服務(wù)屬性設(shè)置對(duì)話框,如下圖所示:

-33-

圖3-33服務(wù)屬性設(shè)置

單擊【確定】按鈕,完成構(gòu)件服務(wù)指定接口描述。

4、為構(gòu)件指定構(gòu)件實(shí)現(xiàn)。

在裝配圖中,雙擊“XXXComponent”構(gòu)件,在彈出的構(gòu)件屬性設(shè)置對(duì)話框中選擇

“實(shí)現(xiàn)"Tab頁(yè),如下圖所示:

-34-

圖3-33構(gòu)件屬性設(shè)置

單擊【瀏覽】,在彈出框中輸入“mon.xxx.XXXApVmpI”,設(shè)置如下圖所

示:

圖3-35選擇打開(kāi)類(lèi)型

-35-

單擊【確定】按鈕,返回構(gòu)件屬性設(shè)置對(duì)話框,如下圖所示:

圖3-36構(gòu)件屬性設(shè)置

單擊【確定】按鈕,完成為構(gòu)件指定構(gòu)件實(shí)現(xiàn)。

4、對(duì)外暴露服務(wù)。

開(kāi)發(fā)完成的服務(wù)可以很方便的以WebService方式對(duì)外暴露,供其他外部系統(tǒng)調(diào)

用。打開(kāi)"XXXServiceLib\mon.xxx\服務(wù)'構(gòu)件裝配

\mon.xx\XXXComposite",在服務(wù)裝配圖編輯器中,從選用板中選擇提

升.£>?promote,用鼠標(biāo)選擇源為構(gòu)件xxXComponent的服務(wù)XXXService,然后向外

拖動(dòng)形成提升服務(wù)。如下圖所示:

-36-

圖3-37服務(wù)裝配

3.2.9導(dǎo)出服務(wù)引用庫(kù)

在Studio的“資源管理器”選中“XXXServiceLib”項(xiàng)目,單擊鼠標(biāo)右鍵,選擇“導(dǎo)出”

打開(kāi)如下窗口:

-37-

圖3-38導(dǎo)出服務(wù)引用庫(kù)

選中CADP/導(dǎo)出服務(wù)引用庫(kù),單擊【下一步】按鈕,打開(kāi)如下窗口:

-38-

圖3-39選擇需要導(dǎo)出服務(wù)的構(gòu)件包

選擇要導(dǎo)出的服務(wù)所在的構(gòu)件包,單擊【瀏覽】按鈕指定導(dǎo)出服務(wù)引用庫(kù)的位置及名稱(chēng),

如下圖所示:

-39-

圖3-30指定導(dǎo)出服務(wù)引用庫(kù)的位置及名稱(chēng)

指定導(dǎo)出服務(wù)引用庫(kù)的路徑及名稱(chēng),單擊【保存】按鈕,單擊【完成】按鈕,提示導(dǎo)出

成功,單擊【確定】按鈕,完成服務(wù)引用庫(kù)的導(dǎo)出。

3.2.10導(dǎo)出構(gòu)件源代碼

在Studio的“資源管理器”選中“XXXServiceLib”項(xiàng)目,單擊鼠標(biāo)右鍵,選擇“導(dǎo)出”

打開(kāi)如下窗口:

-40-

圖3-41導(dǎo)出源代碼

選中CADP/導(dǎo)出源代碼,單擊【下一步】按鈕,打開(kāi)如下窗口:

-41-

3導(dǎo)出源代碼

導(dǎo)出源代碼

①使用了相對(duì)路徑,對(duì)應(yīng)

[D:/eosapp/primeton6nx/ide/eclipse/workspace/XXXServiceLib/XXXServiceL

ib.zip]

諳選擇項(xiàng)目:XXXServiceLib

選擇要導(dǎo)出的內(nèi)容:

0品

0com.sdrcc.common.XXX

2WEB

0品

system.sdvx

[全部選中]I全部不選]

保存位置:IxXXServiceLibvl瀏覽?.二

取消已選擇的錯(cuò)誤文件]

?[一步?]-T-[取消

圖3-42選擇要導(dǎo)出的內(nèi)容

選擇要導(dǎo)出的源代碼所在的構(gòu)件包,單擊【瀏覽】按鈕指定導(dǎo)出源代碼的位置及名稱(chēng),

如下圖所示:

-42-

圖3-43指定導(dǎo)出源代碼的位置及名稱(chēng)

指定導(dǎo)出源代碼的路徑及名稱(chēng),單擊【保存】按鈕,單擊【完成】按鈕,提示導(dǎo)出成功,

單擊【確定】按鈕,完成源代碼的導(dǎo)出。

3.2.11導(dǎo)出Javadoc文件

在Studio的“資源管理器”選中“XXXServiceLib”項(xiàng)目,單擊鼠標(biāo)右鍵,選擇“導(dǎo)出”

打開(kāi)如下窗口:

-43-

圖3-44導(dǎo)出Javadoc

選中Java/Javadoc,單擊【下一步】按鈕,打開(kāi)如下窗口:

-44-

圖3-45選擇要導(dǎo)出的Javadoc所在的項(xiàng)目

選擇要導(dǎo)出的Javadoc所在的項(xiàng)目,單擊【瀏覽】按鈕指定導(dǎo)出Javadoc的位置,如

下圖所示:

-45-

選擇目標(biāo)0B

選擇Javadoc目標(biāo)文件夾?

田匕japache-tomcat-5.5.20

國(guó)ICeosserver

囹心ide

ffi13uninstall

XXXServiceLibjavaDoc

ffi1」primeton61

田liTprimetonBlab

+1primetonbps

文件夾:XXXServiceLibjavaDoc

新建文件夾述)

圖3-46指定導(dǎo)出Javadoc的路徑

指定導(dǎo)出Javadoc的路徑,單擊【確定】按鈕,單擊【完成】按鈕,完成Javadoc的

導(dǎo)出。

3.2.12導(dǎo)出CADP項(xiàng)目開(kāi)發(fā)文檔

在Studio的“資源管理器”選中“XXXServiceLib”項(xiàng)目,單擊鼠標(biāo)右鍵,選擇“導(dǎo)出”

打開(kāi)如下窗口:

-46-

圖3-47導(dǎo)出CADP項(xiàng)目開(kāi)發(fā)文檔

選中CADP/導(dǎo)出CADP項(xiàng)目開(kāi)發(fā)文檔,單擊【下一步】按鈕,打開(kāi)如下窗口:

-47-

導(dǎo)導(dǎo)出

請(qǐng)選擇要導(dǎo)出的文者內(nèi)容

話指定輸出目錄.

話選擇項(xiàng)目:XXXServiceLib

選擇要導(dǎo)出的內(nèi)容:

國(guó)回盤(pán)com.sdrcc.common.xxx

ffi回向WEB

E,…全割選中”…才|全部不選

保存位置:V[瀏覽回…

導(dǎo)入配置信息.

?[一步.][取消

圖3-48選擇要導(dǎo)出的內(nèi)容

單擊【全部選中】選擇要導(dǎo)出的內(nèi)容,單擊【瀏覽】按鈕指定導(dǎo)出文檔的位置,如下圖

所示:

-48-

圖3-49指定導(dǎo)出文檔的位置

指定導(dǎo)出項(xiàng)目開(kāi)發(fā)文檔的路徑,單擊【確定】按鈕,單擊【下一步】按鈕打開(kāi)如下窗口:

-49-

導(dǎo)導(dǎo)出B

樣式配置

樣式配置

選擇生成文檔的格式

?HTML

PDF

選擇生成文檔的樣式

G系統(tǒng)默認(rèn)

O其他系統(tǒng)樣式

O自定義樣式

I編輯而:|

?[<1一步也):卞二步?S…j[完成但)][取消

圖3-50樣式配置

單擊【下一步】按鈕打開(kāi)如下窗口:

-50-

圖3-51總結(jié)報(bào)告

填寫(xiě)“文檔標(biāo)題”和“總結(jié)報(bào)告”內(nèi)容,單擊【完成】按鈕,完成項(xiàng)目開(kāi)發(fā)文檔導(dǎo)出。

3.3SDK構(gòu)件開(kāi)發(fā)

SDK構(gòu)件主要包括海關(guān)業(yè)務(wù)支撐平臺(tái)的應(yīng)用系統(tǒng)提供和發(fā)布的SDK,CADP平臺(tái)和

SDK進(jìn)行集成,封裝為SDK構(gòu)件。詳見(jiàn)《金關(guān)工程二期項(xiàng)目SDK集成規(guī)范》。

-51-

3.4組合類(lèi)構(gòu)件開(kāi)發(fā)

組合類(lèi)構(gòu)件將運(yùn)算邏輯類(lèi)構(gòu)件,服務(wù)類(lèi)構(gòu)件和SDK構(gòu)件組合在一起,提供特定功能的

構(gòu)件。組合類(lèi)構(gòu)件的開(kāi)發(fā)包括以上所述構(gòu)件擴(kuò)展開(kāi)發(fā)。

3.4.1創(chuàng)建構(gòu)件包

1、打開(kāi)“創(chuàng)建構(gòu)件包”向?qū)А?/p>

在Studio的“資源管理器”選中“XXXServiceLib”項(xiàng)目,單擊鼠標(biāo)右鍵,選擇【創(chuàng)

建/構(gòu)件包】快捷菜單項(xiàng)。

系統(tǒng)彈出“新建構(gòu)件包”界面,如下圖所示:

圖3-52新建構(gòu)件包

2、修改配置信息。

將“構(gòu)件包名”修改為“mon.xxx”,此時(shí)“顯示名稱(chēng)”將和“構(gòu)件

-52-

包名”保持一致。其中XXX為集成軟件或系統(tǒng)的縮寫(xiě)。

3、單擊【完成】按鈕。

系統(tǒng)返回CADP開(kāi)發(fā)透視圖,創(chuàng)建的構(gòu)件包列在“資源管理器”視圖中,如下圖所

示:

圖3-53資源管理器

3.4.2導(dǎo)出ECD

在Studio的“資源管理器"選中"bizlet/mon.helloworld/運(yùn)算邏輯

/Java/mon.helloworld",單擊右鍵,在彈出菜單選擇"導(dǎo)出",打開(kāi)如下窗

口:

-53-

..CADPJf發(fā)-CADPStudi。

文件(F)—(E)瀏覽(N)搜索(A)項(xiàng)目(P)運(yùn)行(R)窗口(W)WBb(H)

圖3-54導(dǎo)出部署包

選中CADP/導(dǎo)出部署包,單擊【下一步】按鈕,直到完成導(dǎo)出操作。

ECD導(dǎo)出一般是一個(gè)項(xiàng)目導(dǎo)出為一個(gè)ECD文件(后綴為.ecd),也可以在一個(gè)項(xiàng)目中

選擇若干個(gè)構(gòu)件包或者選擇多個(gè)項(xiàng)目的構(gòu)件包合并導(dǎo)出為一個(gè)ECD文件。導(dǎo)出后的ECD

部署包可以通過(guò)Governor部署到CADP的應(yīng)用上。

執(zhí)行pom.xml文件時(shí),程序會(huì)依照pom.xml文件中配置的項(xiàng)目順序?qū)⑴渲迷跇?gòu)件包列

表中的所有構(gòu)件包導(dǎo)出到部署包中。例如下圖就是一個(gè)導(dǎo)出生成部署包的pom腳本文件中

的一段:

-54-

<plugin>

<groupld>com.primeton.ptp.build</groupld>

<artifactld>maven-eos-compile-plugin</artifactld>

<executions>

<execution>

<phase>compile</phase>

<goals>

<goal>eoscompile</goal>

〈configuration)

<otherProjects>

<otherProject>

nui-sample^

</otherProject>

</otherProjects>

<contributions>

com.primeton.nuisample,com.primeton.dependence,com.primeton.eos,

</contributions>

〈/configuration)

</execution>

</executions>

</plugin>

圖中參數(shù)說(shuō)明:

節(jié)點(diǎn)名稱(chēng)說(shuō)明

<otherProjects/>該節(jié)點(diǎn)配置除主項(xiàng)目外其他需要導(dǎo)出到部署包中

的項(xiàng)目路徑(絕對(duì)路徑或參照主項(xiàng)目的項(xiàng)目路

徑);當(dāng)存在項(xiàng)目依賴(lài)時(shí),被依賴(lài)的項(xiàng)目的名稱(chēng)需

要寫(xiě)在依賴(lài)它的項(xiàng)目名稱(chēng)之前。

<contributions/>該節(jié)點(diǎn)配置了將要導(dǎo)入到部署包中的構(gòu)件包名稱(chēng)

列表,以','分割;同理有多個(gè)構(gòu)件包且存在構(gòu)

件包依賴(lài)時(shí),被依賴(lài)的構(gòu)件包名稱(chēng)需要寫(xiě)在依賴(lài)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論