ColdFusion 11 - 消耗1轴Web服务

时间:2014-05-01 16:53:02

标签: web-services coldfusion coldfusion-11

我们正在从CF9转向CF11。有一点已经改变,CF11现在发布并使用axis-2 Web服务,而CF9则使用axis-1 Web服务。

因此,我们有一堆第1轴的Web服务,我们宁愿不回去重新考虑因素。我们已经看到有一些设置可以添加到代码中以指定版本,但是如果可能的话我们希望避免这种情况。 Web服务屏幕上的CF11管理员中有一个设置,即在轴2和轴1之间切换(默认为轴-2)。

切换的作用是什么?

我们希望它可以用来将服务器设置为默认发布和使用axis-1 Web服务,但是对该理论的快速测试似乎不起作用。

没有重新分解还有其他选择吗?

由于

1 个答案:

答案 0 :(得分:2)

您可以在多个级别指定轴版本。

请参阅Axis-2 and Axis-1 compatibility issues

基本上除了你指定的服务器级别,但听起来你想要一个更精细的控制。

您可以在application.cfc中的应用程序级别执行此操作:

<cfset this.wssettings.version.consume = "2">

甚至可以通过以下方式逐个打电话:

ws = createObject("webservice"
                   , "http://localhost:8500/mycfc.cfc?wsdl"
                   , {wsversion="2"}
                 )

或者

<cfinvoke webservice = "http://localhost:8500/mycfc.cfc?wsdl" 
        method="echo" 
        wsversion="2" 
        returnVariable="foo" >

我不确定,但您可能必须使用refreshWSDL来确保为Axis-2重新生成代理类(如果是这样,这将是一次性的事情,因此您在测试时会这样做然后删除refreshWSDL

<cfinvoke webservice = "http://localhost:8500/mycfc.cfc?wsdl" 
          method="echo" 
          wsversion="2" 
          returnVariable="foo" 
          refreshWSDL="yes">