如何在ColdFusion中将整数指定为属性或参数类型?

时间:2011-11-07 16:23:32

标签: web-services soap types coldfusion wsdl

我正在使用带有远程方法的CFC在ColdFusion 8中构建WebService。我需要在WSDL中指定复杂的数据类型,因此我为每种类型创建CFC。例如,假设我有一个“人”类型。它包括一个“年龄”属性。此属性必须始终为整数。但是,ColdFusion没有“integer”作为有效类型 - 只有Numeric,它在WSDL中转换为“xsd:double”。如何指定属性 - 或者参数 - 具有“整数”类型?

仅供参考,亨利的答案非常有用,但我正在尝试从函数中返回一个Object - 而不仅仅是一个整数。我需要将一个属性作为整数返回。

1 个答案:

答案 0 :(得分:1)

  
      
  1. 编写自己的WSDL。保存CFC并通过将浏览器指向http://mysite/mypath/myCFC.cfc?WSDL来捕获RPC生成的WSDL   抓取源代码,或清理浏览器添加的所有内容。使   确保<?xml版本标记之前没有空格。   在“回复”消息中找到xsd:double,并将其更改为xsd:int

  2.   
  3. 在组件中指定WSDL。添加带有文件名的wsdlfile="mywsdl.wsdl"属性并添加属性style="document"   这是用户定义的WSDL所必需的。

  4.   
  5. 将Web服务绑定到WSDL ColdFusion自动执行此操作 - 但它会缓存它们。当WSDL发生更改时,您需要重新启动该服务或转到CF中的“数据与服务 - > Web服务”   管理并刷新服务。

  6.   
  7. 更改您的功能以返回"Any"而不是"Numeric"

  8.   
  9. 在您的cfreturn中,实例化Java Integer <cfreturn createObject("java","java.lang.Integer").init(JavaCast("int",myvalue))   /&GT;

  10.   

http://www.threesources.com/archives/009007.html

相关问题