首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

Domino中施用Java访问Webservice(一)

2012-11-14 
Domino中使用Java访问Webservice(一)在Lotus Designer开发工具中可以使用Java编写Webservice以及访问Webse

Domino中使用Java访问Webservice(一)
   在Lotus Designer开发工具中可以使用Java编写Webservice以及访问Webservice。这里只介绍一下如何访问Websercice。

    所用到的java知识就是URL、URLConnection、HttpURLConnection三个对象,本站很多博客中有详细介绍它们的使用,我这里就不多说了。下面介绍如何访问Webservice:

    首先在Domino中发布一简单的Webservice,可以从IBM官网文章中找到学习的例子,如下在Designer中使用Java编写简单Webservice(这里不详细介绍如何创建/发布Websercive):DatabaseInfo 提供一接口getUserRolesArray,通过NotesID返回其拥有的所有角色名称。

import lotus.domino.*;import lotus.domino.types.*;import java.util.Vector;public class DatabaseInfo {    private Session session;    private AgentContext agentContext;    private Database db;      public DatabaseInfo () throws Exception {        session = WebServiceBase.getCurrentSession();        agentContext = session.getAgentContext();        db = agentContext.getCurrentDatabase();    }    public String[] getUserRolesArray (String userName) throws Exception {        Document doc = agentContext.getDocumentContext();        Vector v = getRoles(userName);return (String[])v.toArray(new String[1]);    }    //获取账号拥有的角色名称     private Vector getRoles (String userName) throws Exception {ACL acl = db.getACL();ACLEntry entry = acl.getEntry(userName);if (entry == null) {return new Vector();} else {return entry.getRoles();}     }}

   其次在Designer中创建一java脚本库,用于连接、发送Soap请求、返回结果的类:WebServiceClient 提供连接方法openWSDLURL,发送Soap请求并返回结果的方法sendSOAPRequest等
    最后在Designer中创建一代理,可以使用java编写代理,也可以使用Lotusscript编写代理,下面以Lotusscript编写代理,调用上面编写java类访问Websercive(用java编写代理也可以直接调用)。
    详细代码设计无法直接贴在上面,以附件方式上传,请见附件。
    调试过程中可以通过SoapUI(最新版SoapUI3.6)测试Webservice接口,查看其调用Webserivce时发送的Soap请求(包括header、body等信息)。
    无法上传附件...

热点排行