2024年2月3日发(作者:)
使用SAP NetWeaver Developer Studio发布WebService到NetWeaver
1 概述
本文档描述了使用SAP NetWeaver Developer Studio(以下简称NWDS)发布WebService到NetWeaver的操作流程。
2 准备工作
2.1 目标服务器主机名配置
如果操作系统中还没有对发布Web Service的目标服务器的主机名进行配置,则需要进行如下配置。
1. 在%windir%system32driversetc路径下找到名为hosts的文件,用记事本打开,以如下格式添入记录:
目标主机IP 目标主机名
如:127.0.0.1 localhost
2. 如果有多个目标服务器主机,则每个主机对应添入一行记录。全部填写完毕后保存退出。
2.2 nwds中目标服务器配置
如果NWDS中还没有添加发布Web Service的目标服务器,则需要进行如下配置。
1. 在NWDS中选中菜单项Window->Preferences,打开参数配置对话框。
2. 选择SAP AS Java项,在Instance host中填入目标服务器主机名或IP,在Instance number中填入系统编号。点击Register SAP Instance按钮系统将自动在网络中寻找相应服务器实例并自动载入服务器相关信息。
3. 如果系统中还未配置过任何服务器,则配置完成的服务器将被系统设为默认SAP系统。在服务器配置中必须要有一个服务器为默认SAP系统。NWDS中可以注册多个服务器实例并修改默认服务器配置,也可以点击Remove SAP
System来移除已注册的服务器。注册完所有要注册的服务器以后,点击OK退出配置。
2.3 打开Servers窗口
Servers窗口可用来察看配置好的服务器,并且可在该窗口进行WebService的发布。在当前视图下如果看不到该窗口,可以通过以下步骤打开。
1. 选择菜单项Window->Show View->Other,打开显示窗口对话框。
2. 在显示窗口对话框上方的搜索框中输入Servers,找到Servers窗口,选中并点击OK按钮。Servers窗口将会出现于NWDS界面中。同时Servers窗口中将会显示配置好的服务器及其状态。
3 创建工程并发布成WebService
3.1 创建工程并编写源码
1. 由于向NetWeaver发布WebService需要将项目打包成SAP EAR格式的包,所以创建项目时选择创建动态Web项目,同时在创建向导中勾选Add Project to
an EAR,让NWDS自动将我们创建的工程打成SAP EAR包。其他设置选择默认,点Finish按钮完成工程创建。如果此时NWDS不是处在Java EE视图会有对话框弹出询问是否转至Java EE视图。建议选择Yes。
2. 在创建好的Web项目中创建待发布成WebService的类,编写要用于发布的方法。待发布的方法一定要定义成公有的,并且参数中不能存在无法通过SAP检测的参数(如一个有内部类的对象)。本列中以一个简单的sayHello方法为例。
3.2 将待发布的类创建成Web Service
1. 在要发布的类上点右键,在弹出菜单中选择Web Services->Create Web service菜单项,打开Web Service创建向导。
2. 在创建向导的第一步中,可以选择Web Service类型、将哪个类生成为Web
Service、生成等级以及发布的服务器、运行时、待发布工程等配置。这一步可以将发布等级改为最低一级(Develop service)。然后在Web Service创建好后我们再手动将其发布到服务器上(默认设置将会在创建Web Service以后自动将其发布到Server项所选的服务器上)。点击Next进入下一步。
3. 在第二步中可以添加发布类的接口。通常EJB项目中的发布Web Service时需要在此步将待发布类的远程调用接口添加进来,本例中无须做设置,直接点Next到下一步。
4. 在第三步中可以进行客户化定制,可以使用默认设置直接进入下一步。
5. 在第四步中,向导将会列出待发布类中的所有公有方法,可以选择将些方法发布出来供别人调用。如果待发布类存在父类,还可以显示父类的方法。
6. 在第五步中可以选择是否将Web service在创建的同时发布到UDDI上。本文档不讨论UDDI相关的部分,这一步选择默认设置,点击Finish按钮完成向导。
7. 完成以后,待发布类的源代码将会发生变化,代码中添入了符合JSR181规范的Web Service注释。
@WebService(targetNamespace="/ws/", name="WsTest",
portName="WsTestPort", serviceName="WsTestService")
public class WsTest {
}
@WebMethod(operationName="sayHello", exclude=false)
public String sayHello(@WebParam(name="name")
String name) {
}
return "Hello " + name;
3.3 将创建好的Web Service发布到NetWeaver上
1. 在Servers窗口找到用于发布Web Service的目标服务器,在服务器的右键菜单上选择菜单项Add and Remove Projects,打开添加/移除工程对话框。
2. 在添加/移除工程对话框中,在左边会列出工作区中所有未发布的EAR工程,右边则会列出服务器上已发布的工程。可以通过中间的按钮对服务器上的工程进行添加或移除。选中WsTestEAR,点击Add按钮将工程发布到服务器上。点击Finish按钮完成发布。发布的过程中会要求输入可登陆目标服务器的用户名和密码。
3. 发布中会有信息在Deploy View Console窗口显示出来,在Infrastructure
Console窗口会显示发布的结果。本例显示发布成功。
4 测试已发布的Web Service
1. 发布好的Web Service可以用IE登陆服务器进行察看和测试,登陆主页后点击Web Services Navigator,进入Web Services导航页面。
2. 输入正确的用户名和密码之后,进入到Web Services导航页面,在这里可以察看和测试已发布的Web Service。在下图所示的位置输入Web Service的关键字回车可以搜索到相关的记录。在列出的记录中点击要察看的Web Service进入选择操作界面。
3. 在选择操作界面,会列出Web Service的WSDL文件地址已经对外发布的方法,点击要进行测试的方法,进入测试页面。
4. 在测试页面中,可以进行访问端点的配置,选用默认值即可,在参数区填写好参数,点击页面左下角的执行按钮,参数便发往服务器执行了。如果不想
输入某参数,需要将参数后面的Is Null选中。执行完毕将会跳入结果页面。
5. 执行如果成功,结果页面将会显示返回的值。同时还会显示发送和返回的SOAP报文和HTTP日志。
本文发布于:2024-02-03 15:12:56,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170694437650728.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |