CFArgument заставляет функцию возвращать ОШИБКУ 415

Я пытаюсь создать веб-службу REST в CF11, и я получаю сообщение об ошибке, не совсем понимаю, откуда оно взялось.

Шаг 1
Я создал функцию, которая возвращает результаты запроса. Работает нормально
Шаг 2
Добавил несколько CFArguments и функция возвращает 415 Unsupported Media Type
Шаг 3
Удалил cfarguments и функция снова работает.....

Кто-нибудь с рекомендацией, пожалуйста?

Это компонент

<cfcomponent restpath="student" rest="true">
    <cffunction name="dbTest" access="remote" output="false" returntype="query"  httpmethod="get" restpath="dbTest">

        <cfargument name="addSFSurveys" type="numeric" required="No" default="0">
        <cfargument name="showRatings" type="numeric" required="No" default="5">
        <cfargument name="siteID" type="numeric" required="No" default="0">
        <cfargument name="pageID" type="numeric" required="No" default="0">
        <cfargument name="includeDoctor" type="numeric" required="No" default="1">
        <cfargument name="topReviews" type="string" required="No" default="">
        <cfargument name="testimonialID" type="string" required="No" default="">
        <cfargument name="procedureID" type="string" required="No" default="">
        <cfargument name="detailedScore" type="string" required="No" default="">
        <cfargument name="minScore" type="string" required="No" default="">
        <cfargument name="maxScore" type="string" required="No" default="">



        <cfquery name="testimonials" datasource="dpsigweb2">
                select distinct top 10 cast(t.testimonial as varchar(max)) as testimonial, t.contactid, t.doctorid,
                c.first as first, left(c.last,1) as last, c.city, c.state, d.practiceNameDisplay, t.featured, t.owneridfk , cd.city as docCity, cd.state as docState, cd.zip as docZip,
                '' as sorter, t.testimonialID , cast(t.title as varchar(max)) as title ,cast(st.finalscore as  decimal(10,1)) as finalscore, CAST(se.procedureID AS varchar(25)) COLLATE Latin1_General_BIN as procedureID,
                st.dateComplete as surveyDate, se.revenue as cost, se.locationName, consultloc = (select top 1 se2.locationname from survey.dbo.survey_events se2 join survey.dbo.surveys s on se2.surveytypeidfk = s.id
                where c.contactid = se2.contactidfk and se2.locationname is not null and isnull(s.surveytypecatidfk,0) <> 1 order by se.eventdate desc)
                from testimonials t
                join contact c on t.contactid = c.contactid
                join doctor d on t.doctorid = d.doctorID
                join contact cd on cd.contactID = d.contactID
                left join testimonial_sites ts on ts.testimonialID = t.TestimonialID
                left join survey_tracking st on st.owneridfk= t.owneridfk
                left join survey.dbo.survey_events se on se.id= st.surveyEventID
                where t.owneridfk != ''
                and ts.siteID= '9'
                order by surveyDate desc
          </cfquery>

        <cfreturn testimonials>
    </cffunction>
</cfcomponent>

Результат введите здесь описание изображения


person Geo    schedule 22.01.2015    source источник
comment
Добавляйте аргументы один за другим, пока не появится проблема. Тогда вы узнаете, какой из них вызывает проблему.   -  person Dan Bracuk    schedule 22.01.2015


Ответы (1)


Вы должны добавить restArgSource к <cfargument>, чтобы он мог понять, откуда брать переменные.

см. https://wikidocs.adobe.com/wiki/display/coldfusionen/cfargument.

Надеюсь, что это дает вам немного руководства

person Mark D    schedule 22.01.2015