2009-12-22 17 views
6

J'essaie d'utiliser un objet Java dans Coldfusion en utilisant la fonction CreateObject.Passer des arguments aux constructeurs utilisant CreateObject dans Coldfusion

Cela fonctionne bien lorsque le constructeur de la classe Java ne prend pas d'argument par exemple:

MyObject myObject = new MyObject(); 

Goes to

myObject = CreateObject("java", "com.something.MyObject"); 

Mais je ne suis pas sûr de savoir comment passer des arguments à la constructeur pour le code comme ceci:

MyObject2 myObject2 = new MyObject2(myArgment); 

Je suis sûr que cela devrait être très simple, mais je ne peux pas le trouver un nywhere.

Merci,

Tom

Répondre

15

Vous pouvez les passer dans la méthode init comme ceci:

myObject = CreateObject("java", "com.something.MyObject").init(constructorArg1, constructorarg2); 

Notez que si vous n'appeler init pas du tout, alors vous allez travailler avec seulement méthodes statiques de l'objet et non une instance.

+2

Juste pour clarifier, appeler la méthode init() sur un objet java appelle le constructeur de cet objet. Init() n'est pas une méthode réelle de l'objet et n'est utilisée que pour appeler le constructeur: http://livedocs.adobe.com/coldfusion/8/htmldocs/Java_7.html – Leigh