Coldfusion 10 вызывает ошибку cfc
У кого-нибудь есть идеи, как это исправить?
"Unable to invoke CFC - The value returned from the getAllContacts function is not of type Contacts[].
Если имя компонента указано в качестве возвращаемого типа, возможно, что файл определения компонента не найден или недоступен ".
Благодарю вас.
[ОБНОВИТЬ]
Конечно, вот код в ContactsService.cfc:
<cfcomponent output="false">
<!--- [irrelevant code removed] --->
<cffunction name="getAllContacts" returntype="Contacts[]" access="remote">
<cfreturn entityload("Contacts") />
</cffunction>
<!--- [irrelevant code removed] --->
И код внутри Contacts.cfc:
<cfcomponent persistent="true" table="Contacts" output="false">
<cfproperty name="id" column="id" type="numeric" ormtype="int" fieldtype="id" />
<cfproperty name="company" column="company" type="string" ormtype="string" />
<cfproperty name="Sub_Heading" column="Sub_Heading" type="string" ormtype="string"/>
<cfproperty name="Department" column="Department" type="numeric" ormtype="int" />
<cfproperty name="boss" column="boss" type="string" ormtype="string" />
<cfproperty name="Room" column="Room" type="string" ormtype="string" />
<cfproperty name="Phone" column="Phone" type="string" ormtype="string" />
</cfcomponent>
1 ответ
Вы не даете нам много для продолжения! Примерно столько, сколько можно сказать, что "сообщение об ошибке очень четко объясняет, что, вероятно, не так". Если вы разместите некоторый код, то мы можем дать вам лучшую идею.
Но в основном ваш метод ожидает возврата массива объектов Contact, но это не то, что вы пытаетесь вернуть.
Если вы расширите свой вопрос, чтобы в нем содержалось достаточно информации, чтобы ответить правильно, я обновлю ответ, чтобы быть более тщательным...
Обновление 1 Я до сих пор не могу ответить на ваш вопрос, но я могу немного развить этот ответ.
Мне кажется, что ваш entityLoad() на самом деле ничего не находит. Есть ли у вас контакты сохранены?
Можете ли вы изменить свой метод так:
<cffunction name="getAllContacts" returntype="ANY" access="remote">
<cfset var allContacts = entityload("Contacts")>
<cfdump var="#allContacts#">
<cfreturn allContacts>
</cffunction>
А затем вызовите метод и посмотрите, что он выводит. Это должно дать вам подсказку.
[ПРОДОЛЖЕНИЕ... если вы полицейский из Stackru, пожалуйста, оставьте это. Я знаю, что это еще не полный ответ, но к тому времени, когда мы дойдем до сути, это будет. Я знаю, что я делаю]