0

コールドフュージョン9でwsdlを使用しようとしていますが、関数を呼び出そうとするたびに、AxisFault内部サーバーエラーが発生します。エラーは、wsdlがデータ型を望んでいることと常温核融合がそれらを適切にキャストしていないことによるものだと思います。

<xs:element name="MaximumNumberOfMatches" minOccurs="0">
    <xs:simpleType>
        <xs:restriction base="xs:positiveInteger">
            <xs:maxInclusive value="10"/>
        </xs:restriction>
    </xs:simpleType>
</xs:element>

javaCastを使用しても仕事がうまくいかないように見えるので、これを回避するためのハックはありますか?

dateTimeを渡すために、このコードが機能することがわかりました

myJavaDate = CreateObject("java", "java.util.GregorianCalendar").getInstance();
myJavaDate.setTimeInMillis(0);
4

2 に答える 2

3

CF8に戻ったPositiveIntegerで問題が発生したことを覚えています。CF9では状況が変わった可能性がありますが、当時は、そのクラスのインスタンスを作成することが、トリックを実行しているように見える唯一のことでした。

 num = createObject("java", "org.apache.axis.types.PositiveInteger").init(123); 
于 2012-11-26T21:35:34.963 に答える
-1

私が最初にすることはあなたのxmlのトリムです。多くの場合、先頭のスペースが問題を引き起こす可能性があります。

<cfhttp method = "get"...>
<cfset myXML = trim(cfhttp.FileContent)>

あなたはこのサービスの所有者ですか、それともあなたのコントロールの外にありますか?このエラーが発生したのは、wsdl出力の作成で問題が発生したときだけでした。サーバー構成が変更され、cfcが爆撃されました。

HTH

PS実際のエラーは助けになります。

于 2012-11-26T21:29:46.527 に答える