现在位置:首页 > 机器接口 >  WebService

WebService开放接口设计


 1、概述

1.1、开发环境:

     采用开源框架Apache XFire提供WebService的功能。XFire是codeHaus组织提供的一个开源框架,它构建了POJO和SOA之间的桥

     梁,主要特性就是支持将POJO通过非常简单的方式发布成Web服务,这种处理方式不仅充分发挥了POJO的作用,简化了Java应用

     转化为Web服务的步骤和过程,也直接降低了SOA的实现难度,为企业转向SOA架构提供了一种简单可行的方式。

1.2、服务地址:

     IRSR使用标准的WebService/SOAP协议,您可以在任何平台使用任何开发语言来开发客户端程序。

     IRSR提供的WebService地址如下:

     http://irsr.llas.ac.cn:80/webservice/services/IRSRService

     由于所有WebService都在WSDL中定义,因此您需要先获得描述服务的WSDL文件:

     http://irsr.llas.ac.cn:80/webservice/services/IRSRService?wsdl

1.3、开通服务:

     如果需要使用本系统提供的服务,需要您首先在IRSR系统注册机器用户,并填写您的系统的相关信息,在IRSR系统的管理员通过

     审核后,会为您开通服务并根据您留下的联系方式通知您。通过这个机器账户,第三方系统就可以使用IRSR系统提供的服务了。

     每次访问服务时,需要提供您的用户名和密码来进行权限认证,并将其附加到Soap头之前。

元素名 涵义 是否必须
name 机器账户名称
password 机器账户密码
 2、IRSR接口参考

2.1、数据类型:

     IRSR系统提供9种数据类型,详细定义请参考wsdl描述。

数据类型 涵义
Collection 资源集合的详细描述。
ColType 资源集合类型的注解。
Org 机构的详细描述。
OrgType 机构类型的注解。
Relation 关系结果的描述。
ResultInfo 检索结果的描述。
Service 服务的详细描述。
Subject 学科分类的注解。
SvcType 服务类型的注解。

2.2、Web服务状态接口描述

方法名 涵义 参数 返回值
isRunning 测试Web服务是否运行。 永远为 1
getVersion 获得Web服务的当前版本号。 float

2.3、浏览与检索接口描述

方法名 涵义 参数 返回值
listColType 返回所有资源集合类型。 List<ColType>
listOrgType 返回所有机构类型。 List<OrgType>
listSubject 返回所有学科分类。 List<Subject>
listSubject0 返回所有一级学科。 List<Subject>
listSubject1 返回指定学科的子学科。 int parentid List<Subject>
listSvcType 返回所有服务类型。 List<SvcType>
getColByTypes 返回按类型(支持多选)浏览资源集合的结果描述。 int[] typeids ResultInfo
listColByTypes 返回按类型(支持多选)浏览资源集合的结果列表。从第start条开始,取pageSize条(一次最多50条)。可与getColByTypes方法结合使用以实现分页显示。 int[] typeids
int start
int pageSize
List<Collection>
getColBySubjects 返回按学科(支持多选)浏览资源集合的结果描述。 int[] subjectids ResultInfo
listColBySubjects 返回按学科(支持多选)浏览资源集合的结果列表。从第start条开始,取pageSize条(一次最多50条)。可与getColBySubjects方法结合使用以实现分页显示。 int[] subjectids
int start
int pageSize
List<Collection>
getOrgByTypes 返回按类型(支持多选)浏览机构的结果描述。 int[] typeids ResultInfo
listOrgByTypes 返回按类型(支持多选)浏览机构的结果列表。从第start条开始,取pageSize条(一次最多50条)。可与getOrgByTypes方法结合使用以实现分页显示。 int[] typeids
int start
int pageSize
List<Org>
getOrgBySubjects 返回按学科(支持多选)浏览机构的结果描述。 int[] subjectids ResultInfo
listOrgBySubjects 返回按学科(支持多选)浏览机构的结果列表。从第start条开始,取pageSize条(一次最多50条)。可与getOrgBySubjects方法结合使用以实现分页显示。 int[] subjectids
int start
int pageSize
List<Org>
getSvcByTypes 返回按类型(支持多选)浏览服务的结果描述。 int[] typeids ResultInfo
listSvcByTypes 返回按类型(支持多选)浏览服务的结果列表。从第start条开始,取pageSize条(一次最多50条)。可与getSvcByTypes方法结合使用以实现分页显示。 int[] typeids
int start
int pageSize
List<Service>
getColById 通过ID获取指定资源集合的详细信息。 String dc_identifier Collection
getOrgById 通过ID获取指定机构的详细信息。 String dc_identifier Org
getSvcById 通过ID获取指定服务的详细信息。 String dc_identifier Service
getRelationById 通过ID获取指定资源/机构/服务的关联关系。 String dc_identifier List<Relation>
prepareSearch 返回在资源/机构/服务中按关键词检索的结果描述。
检索词形如:title=K1;K2;...&subject=S1;S2;...&type=T1;T2;...
关键字title、subject、type之间用 & 连接,没有顺序要求。
关键字title、subject、type至少有一个出现。
String keywords
int restype
注restype取值范围:
1:资源集合
2:机构
3:服务
ResultInfo
searchCol 在资源集合中按关键词keywords检索资源。从第start条开始,取pageSize条(一次最多50条)。可与prepareSearch方法结合使用以实现分页显示。 String keywords
int start
int pageSize
List<Collection>
searchOrg 在机构中按关键词keywords检索机构。从第start条开始,取pageSize条(一次最多50条)。可与prepareSearch方法结合使用以实现分页显示。 String keywords
int start
int pageSize
List<Org>
searchSvc 在服务中按关键词keywords检索服务。从第start条开始,取pageSize条(一次最多50条)。可与prepareSearch方法结合使用以实现分页显示。 String keywords
int start
int pageSize
List<Service>



  如果您还有其他问题,请联系我们!

  • 技术负责人:张秀秀
  • 电话:0931-8270026
版权所有 © 2010-2014 中国科学院兰州文献情报中心
地址:甘肃省兰州市天水中路8号  邮政编码:730000