2012-01-18 6 views
2

私はColdFusion 9.1.0を使用していますCFSCRIPTでJavaオブジェクトを作成するには?

私はCFSCRIPTを使用してJavaオブジェクトを作成しようとしていますが、私はちょうど働くことの適切な組み合わせを得ることができません。

これは完璧に動作します:私はこれを行うと

<cfobject action="create" type="Java" class="CyberSource" name="auth"> 
<cfset VARIABLES.ResponseString = auth.runTransaction(LOCAL.PropsFile,LOCAL.MyXML)> 

、私はエラーを取得する:

LOCAL.MyObject = createObject("java", "CyberSource.auth"); 
LOCAL.ResponseString = auth.runTransaction(LOCAL.PropsFile,LOCAL.MyXML); 

これは私が取得エラーです:

Object Instantiation Exception. 
Class not found: CyberSource.auth 

オブジェクトですColdFusionで利用可能な外部コード。私は問題が何であるかはわかりません。あなたは?

答えて

6

クラス名はCyber​​Sourceで、インスタンスを割り当てる変数はタグベースのアプローチでは「auth」です。あなたはそれを "MyObject"と混在させました。

LOCAL.auth = createObject("java", "CyberSource"); 
LOCAL.ResponseString = LOCAL.auth.runTransaction(LOCAL.PropsFile,LOCAL.MyXML); 

これは動作するはずです。

+0

これは完璧に機能しました。説明ありがとう! –

2

注意してください。

Javaクラス名では大文字と小文字が区別されます。

// Fail 
myFile = createObject('java', 'java.io.file'); 

// Win! 
myFile = createObject('java', 'java.io.File'); 

コンストラクタを呼び出すには、.init()などを使用します。

myFile = createObject('java', 'java.io.File').init('/Users/Mike/Dev/Test'); 
関連する問題