2009-12-22 15 views
6

में CreateObject का उपयोग करके रचनाकारों को तर्क पास करना मैं CreateObject फ़ंक्शन का उपयोग करके कोल्डफ्यूज़न में जावा ऑब्जेक्ट का उपयोग करने का प्रयास कर रहा हूं।कोल्डफ्यूजन

यह ठीक काम करता है जब जावा वर्ग में निर्माता किसी भी तर्क नहीं ले करता है जैसे:

MyObject myObject = new MyObject(); 

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

पर जाता है लेकिन मुझे यकीन है कि कैसे करने के लिए तर्क पारित करने के लिए नहीं कर रहा हूँ इस तरह कोड के लिए निर्माता:

MyObject2 myObject2 = new MyObject2(myArgment); 

मुझे यकीन है कि यह वास्तव में आसान होना चाहिए, लेकिन मैं इस एक नहीं मिल सकता है nywhere।

धन्यवाद,

टॉम

उत्तर

15

आप उन्हें इस तरह init विधि में पारित कर सकते हैं:

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

ध्यान दें कि अगर आप init बिल्कुल तो कॉल नहीं करते आप केवल के साथ काम किया जाएगा वस्तु के स्थिर तरीके और एक उदाहरण नहीं।

+2

बस स्पष्ट करने के लिए, जावा ऑब्जेक्ट पर init() विधि को कॉल करना उस ऑब्जेक्ट के कन्स्ट्रक्टर को आमंत्रित करता है। Init() ऑब्जेक्ट का वास्तविक तरीका नहीं है और केवल कन्स्ट्रक्टर को कॉल करने के लिए उपयोग किया जाता है: http://livedocs.adobe.com/coldfusion/8/htmldocs/Java_7.html – Leigh

संबंधित मुद्दे