私は奇妙な問題に直面しています。
以下のコード スニペットを CF9 サーバーに存在する Web サービスとして使用すると、「値 coldfusion.runtime.Struct を数値に変換できません」というエラーが表示されます。
この呼び出しは、構造体の配列を返します。この構造体の配列からクエリを作成したいと思います。このコードをローカル サーバー (CF10) にスタンドアロン コードとして配置すると、正常に動作します。しかし、リモートサーバーに配置して呼び出すとすぐにエラーが発生します。
変数「tempstruct」をハードコードされた構造に置き換えても同じエラーメッセージが表示されたとき、私はほとんど髪を抜いていました。QueryAddRow を削除するとすぐに、何でも返すことができます。
どんな助けでも大歓迎です。
<cfset myquery=querynew("category,category_id,event_description","varchar,integer,varchar")>
<cfinvoke
webservice="http://199.99.99.999/vod_queries.cfc?wsdl"
method="getAllCategoryByResort"
returnvariable="arrAllSpaEvents"
refreshwsdl="true" >
<cfinvokeargument name="Resort" value="SRB" >
</cfinvoke>
<cfif arraylen(arrAllSpaEvents) GT 0>
<cfloop array="#arrAllSpaEvents#" index="cur_row">
<cfset tempstruct=StructNew()>
<cfset tempstruct.CATEGORY=cur_row.CATEGORY>
<cfset tempstruct.CATEGORY_ID=cur_row.CATEGORY_ID>
<cfset tempstruct.EVENT_DESCRIPTION=cur_row.EVENT_DESCRIPTION>
<cfset QueryAddRow(myquery,#tempstruct#)>
</cfloop>
</cfif>
<cfreturn myquery>