coldfusion (cfml) 开发 WebService 简单示例

①开发 Web Services,编写cfcdemo.cfc组件,代码如下:
 
<cfcomponent>
         <cffunction name = "getEname" access = "remote" returntype = "string">
                <cfargument name = "empno" type = "string" required = "true">
                <cfquery name = "rs" datasource = "scott">
                      
select ename from emp where empno=#arguments.empno#
                </cfquery>
                <cfset sEname = rs.ename>
                <cfreturn sEname>
         </cffunction>
 </cfcomponent>

 <!---
  ColdFusion开发 Web Services,只需要在ColdFusion组件(.cfc文件)中,
  把需要作为 Web Services 的method的access类型定义为remote就可以了(access="remote")。
 --->

 

②测试一下,访问这个cfc组件,注意URL路径后边要加上 ?wsdl 。
  例如:
http://localhost/mysys/cfcdemo.cfc?wsdl
  显示界面如下:

 


③开发测试页面,编写webservice.cfm程序调用①开发的 Web service ,代码如下:
 <cfset sWebServiceUrl = "http://localhost/mysys/cfcdemo.cfc?wsdl">

 <cfinvoke webservice="#sWebServiceUrl#" component = "cfcdemo"  method = "getEname" timeout = "3" returnVariable = "sEname">
        <cfinvokeargument name = "empno" value="7788"/>
 </cfinvoke>
 <cfoutput>#sEname#</cfoutput>

 

④说明:
 调用 Web Service 时,各部分和①对应如下:
   webservice -- 其实就是①开发的cfc组件的访问地址加上?wsdl,实际开发中就是别人定义好的 Web Service 地址
      component -- 这个就是对应①cfc组件名称,也可省略不写
           method -- 对应cfc组件中的方法,既是①中<cffunction>标签内name属性的值
           timeout -- 设置请求超时秒数
   returnVariable -- 自定义的变量,里边存放的是①的 Web Service 返回的值
 <!---传递参数--->                                                             <!---接收参数--->
 <cfinvokeargument name="empno" value="7788"/> -- 对应①<cfargument name="empno" type="string" required="true">
 <cfoutput>#sEname#</cfoutput> -- 输出 Web Service 返回结果:SCOTT

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值