1

在进行 CF Web 服务调用时,必须创建一个 SOAP 标头。在 CF9 中,我们能够使用该setHeader()方法。这适用于我的生产服务器(运行 CF9)。但是,我已将本地系统升级到 CF10(出于开发目的),发现此方法不再有效。它抛出以下错误:

找不到带有参数 {...} 的 Web 服务操作 setHeader。

当我转储对象时,我看到它org.apache.axis2.client.Stub被用来代替org.apache.axis.client.Stub. 所以我的问题有两个:

  1. setHeaderAxis2中的方法在哪里?
  2. 如果该方法不再可访问,我如何指定我的对象调用使用 Axis1.x NOT Axis2 ?

我希望这是有道理的。

4

1 回答 1

0

如何为我的对象调用指定使用 Axis1.x NOT Axis2

您可以随时切换回 Axis1,如此此处所述。总之:

...ColdFusion 10 允许您指定应在其中发布或使用 Web 服务的 Axis 版本。[它]在三个级别上进行了控制:

  1. 服务器级别
    • wsversion在 CF WebServices 管理屏幕中命名的新设置
  2. 应用程序级别(通过 Application.cfc)
    • this.wssettings.version.publish = 1
    • this.wssettings.version.consume = 1
  3. 组件级别
    • 用于出版<cfcomponent wsversion="1">
    • 消费用createObject("webservice", theURL, {wsversion="1"})
于 2012-11-07T08:38:54.860 回答