




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Web Dynpro访问用NWDS创建的Web Service一、 用NWDS创建Web Service使用NWDS可以为三种来源创建Web Service,它们是: 为EJB创建Web Service 为Java类创建Web Service 为Portal Service创建Web Service在本文中,我们将讨论如何通过Java类创建Web Service。1.1. 步骤(一) 准备好Java类。HelloWebService.javapublic class HelloWebServicepublic String helloWebService(String userName) return userName + , 欢迎你进入Web Service的世界!;(二) 创建Virtual Interface。进入Web Service透视图,在Java Explorer上选择Java类,如HelloWebService.java。然后在上下文菜单里面选择New Virtual Interface。Virtual Interfacee是Web Service对外的可见部分。通过VI,可以定义一个implementation的多个Views并将它们分别发布成Web Service。当你创建一个Virtual Interface时,可以隐藏或者更名operations和parameters。例如,可以将描述名称替代技术名称。可以为parameters定义default values,或者转换parameter types。弹出Virtual Interface向导。给出Virtual Interface名。选择所要暴露的方法。Field:Procedure:New Name给参数一个新的名字New Type Name 选择一个新的数据类型。可以为原始数据类型做一个标准转换。是Java的原始数据类型啊。 Fixed value可以固定初始值完成后得到VI:(三) 在刚生成的VI上选择New Web Service Definition。给出Web Service Definition名。(四) 在项目鼠标右键选择New Web Service Deployment Descriptor,如HelloWebService。我们可以看到打开WS Deployment Descriptor Editor。(五) 选择Web Service Configurations节点,然后点击下面的Add按钮。选择WSD,给出Web Service的名字。完成后生成Web Service。(六) 添加WS Configuration。选择刚才生成的Web Service节点,如HelloWebService,然后点击下面的Add按钮。输入数据就可以了。/HelloWebService/HelloWS是Web Service的路径。(七) 打包成EAR文件。(八) 部署EAR文件。1.2. 在浏览器中查看Web Service在浏览器中输入:50000/HelloWebService/HelloWS。打开下面页面:点击Test链接。打开下面页面:点击helloWebServiceJavaLangString链接。在打开的页面中输入信息,然后点击Send按钮,就可以看到测试结果,如下图所示:可以看到测试结果。二、 Web Dynpro访问Web Service利用Web Dynpro提供的Model来访问Web Service。所访问的Web Service是先前我们创建的HelloWebService。Web Dynpro有两种模型用来访问Web Service,它们是: Adaptive Web Service Model Web Service ModelSAP推荐使用Adaptive Web Service Model,但是现在我还不会,本文使用Web Service Model做Web Dynpro与Web Service的连接。2.1. 步骤(一) 创建Web Dynpro项目。创建名为HelloWebServiceComp的Component。创建相应的View、Windows和Application。(二) 创建Model。在Web Dynpro Models上右键选择Create Model。弹出New Model向导:选择Import Web Service Model。然后下一步:输入Model Name和Model Package,并且选择WSDL的源,在这里我们是通过URL获得的,因此选择Local File System or URL。这里需要注意的是Model Package指定的时候,包中必须为空,很奇怪,不知道为什么。下一步:输入Wsdl,这里输入的值可以在通过浏览器访问Web Service时可以看到。继续下一步:完成。Web Dynpro Models中有变化:(三) 创建组件Context并且将其绑定到Model上。用添加刚才创建的Model到Used Models中,在这里要在弹出的对话框中选择所要添加的Model,我们这里的是HelloWSModel。在组件控制器上右键选择TemplateApply:弹出对话框,选择Service Controller:下一步:选择那么一长串东西,下一步:全选,请注意,这里可以为Context节点改名字,建议改短点,好看。改名的结果为:继续下一步:如果需要执行该Model,就要生成该方法,需要给定方法名,在这里输入方法名。完成,搞定。看,这里有变化:多了个从组件控制器到模型的箭头,这就是绑定关系。双击箭头,查看绑定关系:组件控制器中也有变化,看:多了一些Context,这里的Context与模型中的结构是一样的。组件控制器中代码也有变化,如:wdDoInit方法变化啦: public void wdDoInit() /begin wdDoInit() /$begin Service Controller(-182154393) wdContext.nodeHelloWSRequest().bind(new Request_HelloWebServieViDocument_helloWebServiceJavaLangString(); /$end /end 生成了executeHelloWSRequest方法: /begin javadoc:executeHelloWSRequest() /* Declared method. */ /end public void executeHelloWSRequest( ) /begin executeHelloWSRequest() /$begin Service Controller(-1899710666) IWDMessageManager manager = wdComponentAPI.getMessageManager(); try wdContext.currentHelloWSRequestElement().modelObject().execute(); wdContext.nodeHelloWSResponse().invalidate(); catch(Exception e) manager.reportException(e.getMessage(), false); /$end /end (四) 创建View Context与组件控制器之间的映射创建映射后成这样了:(五) 在View中创建输入框。打开HelloWebServiceView,在Outline中,弹出上下文菜单,选择Apply Template:选择Form:下一步:选择所有的Context,下一步:将userName挪到上面去,Result到下面了。点击完成。成这样了:继续这样的过程添加按钮,不同的是选择Template时,选择的是ActionButton:下一步:定义好Action和Event的名字,请注意,这些定义的名字会在代码中出现。其中onActionExeButton是当点击按钮的动作发生时处理事件的Event Handler。动作为ExeButton。下一步:在选择第三步定义的方法,使点击该按钮后自动执行这个方法。完毕后点击完成。页面成这样了:请注意,这里为Button改了一下文字。HelloWebServiceView中生存了onActionExeButton方法: /begin javadoc:onActionExeButton(ServerEvent) /* Declared validating event handler. */ /end public void onActionExeButton(gmodel.api.IWDCustomEvent wdEvent ) /begin onActionExeButton(ServerEvent) /$begin A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物业承包合同下新增厨师补充协议范文8篇
- 压力真空罐安全培训流程课件
- 2025年区块链行业区块链技术应用前景与金融改革研究报告
- 2025年物联网行业物联网技术应用前景研究报告
- 2025年火箭航天行业商业化前景预测报告
- 2025年环保行业绿色环保产品市场前景研究报告
- 2025年虚拟现实行业VR技术与虚拟现实应用前景研究报告
- 商品车电器使用培训课件
- 商品混凝土安全技术培训课件
- 2025重庆建峰工业集团有限公司招聘77人笔试参考题库附带答案详解
- 股权代持协议(模板)8篇
- 《AI创意课件之设计》课件
- 医院会计笔试题目及答案
- 河南豫信电科所属公司招聘笔试题库2025
- GB/T 45345-2025金属及其他无机覆盖层工程用直流磁控溅射银镀层镀层附着力的测量
- 无人机教员聘用协议书
- 药物非临床研究质量管理规范
- 脑科生理病理图谱解读
- 全国青少年科技辅导员专业水平认证笔试考题
- (行业)常用表面处理工艺详解(行业讲座教学培训课件)
- 配电网安健环设施标准
评论
0/150
提交评论