微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Lotus domino 8.5 WebService 二 (LotusScript消费WebService)

开发工具:

MyEclipse 8

Lotus Domino 8.5

平台:

Windows

XFire1.2 (WebService)

 

1. 新建web工程

2. 用MyEclipse自动导入XFire包

3. 创建测试类

接口:IUserInfo.java

实现类:UserInfoImpl.java

4.代码

-------------------------------

IUserInfo.java:

public interface IUserInfo {
 
 public String getUserInfoXml(int iID);

 
}

-------------------------------

UserInfoImpl.java:

 

public class UserInfoImpl implements IUserInfo {
 
 public String getUserInfoXml(int iUserID) {
  StringBuffer infoBuffer = new StringBuffer("<?xml version=/"1.0/" encoding=/"UTF-8/"?>");
  if(iUserID>0){
   infoBuffer.append("user id is").append(iUserID);
  }else{
   infoBuffer.append("no user id");
  }
  return infoBuffer.toString();
 }

}

5. 让MyEclipse自动创建WebService Client

生成后类如图:

 

6. 测试WebService服务http://localhost:8080/XFireDemo91/services/UserInfo?wsdl,并另存为UserInfo.wsdl文件以备用。

7. domino中新建代理WebService使用者UserInfoLotusService:

新建使用者,输入http://localhost:8080/XFireDemo91/services/UserInfo?wsdl,会自动创建service代码

 

%INCLUDE "lsxsd.lss"
Const n0 = "http://service.sxwd.com"
Class UserInfoPortType_n0 As PortTypeBase
 
 Sub NEW
  Call Service.Initialize ("HttpServiceSxwdComUserInfo",_
  "UserInfo.UserInfoHttpPort","http://localhost:8080/XFireDemo91/services/UserInfo",_
  "UserInfoPortType_n0")
  
 End Sub
 

'注意这个地方返回的是XSD_STRING类型,在java中返回的是String类型
 Function getUserInfoXml(in0 As Long) As XSD_STRING
  Set getUserInfoXml = Service.Invoke("getUserInfoXml",in0)
 End Function
 
End Class

8. 新建代理,调用WebService使用者:

'--------------------

Option Public
Option Declare
Use "UserInfoLotusService"

'--------------------

Sub Initialize
 Dim session As New NotesSession
 
 Dim service As UserInfoPortType_n0
 Set service = New UserInfoPortType_n0
 
 '定义为Xsd_string,在ls中式自定义类型
 Dim result As Xsd_string
 
 
 Set result = service.getUserInfoXml(3)
 '将Xsd_string类型的结果转为String类型,输出
 MsgBox result.Getvalueasstring()
 
End Sub

 

9. 执行此代理,输出user id is 3成功!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐