理论教育 接口服务设计:从模型转换为Java类,配置服务级别并部署发布

接口服务设计:从模型转换为Java类,配置服务级别并部署发布

时间:2023-05-19 理论教育 版权反馈
【摘要】:不论使用哪种方式,Web Dynpro中的模型最终都以接口的形式将各种接口服务转化为了WD4J可以识别的Java类。图5-11 输入包名12)右击“com.bean”包,选择创建一个类,如图5-12所示。图5-18 配置服务级别21)再次进入DI透视图,创建一个EAR工程,用于依赖EJB工程并部署至服务器端。图5-22 选择依赖工程图5-23 创建后项目目录26)接着编译并部署EAR工程,将创建的WebService发布到服务器。图5-24 部署的菜单选择27)验证Web服务是否部署成功。

接口服务设计:从模型转换为Java类,配置服务级别并部署发布

接口服务的方式有多种,在之前模型的章节中介绍过RFC、EJB以及Web服务等类型,当然对于某些外部数据源也可以直接访问数据库层DAO类并调用对应方法。不论使用哪种方式,Web Dynpro中的模型最终都以接口的形式将各种接口服务转化为了WD4J可以识别的Java类。

本章将以Web服务(Web Service)作为接口,模拟Web Dynpro程序与后台数据的交互,包含采购申请查询以及采购申请行项目的明细查询。

开发实例:

1)首先创建一个测试用的Web服务,在NWDS中单击右上角的透视图切换按钮,切换到“Development Infratructure perspective”,如图5-1所示。

978-7-111-58177-2-Chapter05-1.jpg

图5-1切换到DI透视图

2)右击自定义的SC目录“MyComponents”,选择创建一个“Development Component”,如图5-2所示。

3)在弹出的窗口中选择对应的EJB类型,单击“Next”按钮,如图5-3所示。

4)输入自定义DC的名称,单击“Next”按钮,如图5-4所示。

978-7-111-58177-2-Chapter05-2.jpg

图5-2 创建开发组件的菜单选择

978-7-111-58177-2-Chapter05-3.jpg

图5-3 选择项目类型

978-7-111-58177-2-Chapter05-4.jpg

图5-4 输入项目名称

5)选择对应的编译版本,如图5-5所示。

978-7-111-58177-2-Chapter05-5.jpg

图5-5 选择编译版本

6)创建完成后,进入Java EE透视图,并右击EJB工程,选择创建一个“Session Bean”,如图5-6所示。

978-7-111-58177-2-Chapter05-6.jpg

图5-6 选择创建SessionBean菜单

7)按照命名规范输入自定义的包名和类名,单击“Finish”按钮,完成EJB创建,如图5-7所示。

8)创建完毕后,可以看到开发工具自动为EJB工程生成了一个空的类并同时实现了一个接口类。随后在“PurReqWs”类中添加一个方法,实例代码如图5-8所示。

978-7-111-58177-2-Chapter05-7.jpg

图5-7 输入信息

978-7-111-58177-2-Chapter05-8.jpg

978-7-111-58177-2-Chapter05-9.jpg

图5-8 添加代码

9)保存后在接口类中添加获取采购申请方法的声明(见图5-9):

public PurReq getPurReqs(String purReqNo,String purReqType);

978-7-111-58177-2-Chapter05-10.jpg

图5-9 添加代码

10)由于还未定义采购申请类,因此暂时会有编译错误。下面需要根据需求(数据库定义)创建采购申请和采购申请条目的对象类。右击工程,选择创建一个程序包,如图5-10所示。

978-7-111-58177-2-Chapter05-11.jpg

图5-10 创建包的菜单选择

11)在随后弹出的对话框中输入需要创建的包名“com.bean”,并单击“Finish”按钮,如图5-11所示。

978-7-111-58177-2-Chapter05-12.jpg

图5-11 输入包名

12)右击“com.bean”包,选择创建一个类,如图5-12所示。

978-7-111-58177-2-Chapter05-13.jpg

图5-12 创建类的菜单选择

13)在弹出的对话框中输入需要创建的类名“PurReq”,并单击“Finish”按钮,如图5-13所示。

978-7-111-58177-2-Chapter05-14.jpg

图5-13 创建类

14)创建完成后,补充各个字段定义(暂时不需要添加get和set方法):

978-7-111-58177-2-Chapter05-15.jpg

15)定义字段后,在空白处右击,在弹出的快捷菜单中选择“Source”→“Generate

Getters and Setters”,自动创建字段的get和set方法,如图5-14所示。

978-7-111-58177-2-Chapter05-16.jpg

图5-14 自动生成方法

16)在弹出的对话框中选中所有字段,随后单击“OK”按钮完成创建,如图5-15所示。

978-7-111-58177-2-Chapter05-17.jpg(www.daowen.com)

图5-15 选择对应变量

17)此时暂时会有编译错误,因为还没有定义行项目的对象类。再创建一个类,命名为“PurReqItem”,并补充各个字段定义,并用同样的方法创建对应的get和set方法。字段定义如下:

978-7-111-58177-2-Chapter05-18.jpg

18)创建完成后,保存所有修改即可,如图5-16所示。

19)下面基于当前EJB创建对应的Web服务。右击“PurReqWs”类,在菜单中选择“Web Services”→“Create Web service”,创建一个Web服务,如图5-17所示。

978-7-111-58177-2-Chapter05-19.jpg

图5-16 创建后项目清单

978-7-111-58177-2-Chapter05-20.jpg

图5-17 创建Web服务的菜单选择

20)在弹出的对话框中,将配置级别的滑块选择“Develop Service”,并单击“Next”按钮,之后的步骤均使用默认选项直至创建完毕,如图5-18所示。

978-7-111-58177-2-Chapter05-21.jpg

图5-18 配置服务级别

21)再次进入DI透视图,创建一个EAR工程,用于依赖EJB工程并部署至服务器端。选择新建类型为“Enterprise Application”,并单击“Next”按钮,如图5-19所示。

978-7-111-58177-2-Chapter05-22.jpg

图5-19 选择项目类型

22)根据实际的命名规范,输入自定义ear名称,并单击“Next”按 钮,如图5-20所示。

23)根据实际需求,选择对应的Java EE版本,并单击“Next”按钮,如图5-21所示。

978-7-111-58177-2-Chapter05-23.jpg

图5-20 输入项目名称

978-7-111-58177-2-Chapter05-24.jpg

图5-21 选择编译版本

24)选中需要进行依赖的EJB工程,单击“Finish”按钮,如图5-22所示。

25)保存所有修改,完成两个工程的创建,如图5-23所示。

978-7-111-58177-2-Chapter05-25.jpg

图5-22 选择依赖工程

978-7-111-58177-2-Chapter05-26.jpg

图5-23 创建后项目目录

26)接着编译并部署EAR工程,将创建的WebService发布到服务器。右击“myear_pr”工程,选择“Development Component”→“Build”进行编译,编译完成后在同一菜单中选择“Deploy”进行部署,如图5-24所示。

978-7-111-58177-2-Chapter05-27.jpg

图5-24 部署的菜单选择

27)验证Web服务是否部署成功。用管理员账号登录服务器NWA管理者平台,并进入“Configuration-Connectivity”→“Single Service Administration”,如图5-25所示。

28)在搜索条件中输入“∗purreq∗”并按<Enter>键,搜索创建的Web服务。在成功搜索到对应的服务后,找到下方的“WSDLs”页签,并单击“Test”按钮进行测试,如图5-26所示。

29)单击“Text”按钮会弹出一个新窗口,默认选中的就是定义的接口方法,单击“Next”按钮,如图5-27所示。

978-7-111-58177-2-Chapter05-28.jpg

图5-25 NWA平台页面

978-7-111-58177-2-Chapter05-29.jpg

图5-26 搜索对应的服务

978-7-111-58177-2-Chapter05-30.jpg

图5-27 选择对应方法进行测试

30)在下一步中填写方法的输入参数,单击“Next”按钮,如图5-28所示。

31)得到了服务执行成功的消息提醒,暂时还没有返回值,如图5-29所示。

978-7-111-58177-2-Chapter05-31.jpg

图5-28 输入对应参数值

978-7-111-58177-2-Chapter05-32.jpg

图5-29 查看运行结果

32)回到Web服务中,修改之前的“getPurReqs”方法,导入必要的类文件。方法的实例代码如下:

978-7-111-58177-2-Chapter05-33.jpg

978-7-111-58177-2-Chapter05-34.jpg

33)再次编译并部署至服务器,进行Web服务的测试,即可得到硬编码的采购申请返回值,如图5-30所示。

978-7-111-58177-2-Chapter05-35.jpg

图5-30 运行效果

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈