Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsGeneralPHPASPPerlColdFusionFlashHTML, CSS, ScriptsBrowsers

Webmaster Forum / ColdFusion / Advanced Techniques / March 2008



Tip: Looking for answers? Try searching our database.

web service

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
mikey999 - 25 Mar 2008 22:08 GMT
so i have never created a web service and find my self wanting to learn how. So
I found this page with examples

http://www.quackit.com/coldfusion/tutorial/coldfusion_web_services.cfm

i followed the example and built my own script just changing out my database
info so it would use my data.

here is my data

<cfcomponent>
  <cffunction name="listBooks"
    access="remote"
    returntype="string"
    output="no">

    <cfargument name="category"
      type="string"
      required="yes">

    <cfset Var BookList = "">
    <cfset Var getBooks = "">
    <cfquery name="getBooks" datasource="datasource">
        SELECT FileToolID,FileTitle, UrlLink, FileDescription, File3
        FROM FileTool
        AND FileTool.StatusID = 'Approved'
        AND FileTool.FileCONFIGID = 24
    </cfquery>

    <cfsavecontent variable="BookList">
      <books>
        <cfoutput query="getBooks">
          <book id="#FileToolID#">
            <booktitle>#XMLFormat(FileTitle)#</booktitle>
            <teaser>#XMLFormat(UrlLink)#</teaser>
            <price>#XMLFormat(FileDescription)#</price>
          </book>
        </cfoutput>
      </books>
    </cfsavecontent>

    <cfreturn BookList>
  </cffunction>
</cfcomponent>

i tried to then run this script

<cfinvoke
   method="listBooks"
   returnvariable="rawXMLBookList"
   webservice="http://yourdomain.com/web_services/book.cfc?wsdl">

   <cfinvokeargument name="category" value="123">
</cfinvoke>

<cfset computerBooks = XmlParse(rawXMLBookList)>

<cfdump var="#computerBooks#">

and i get nothing but an error. the part i do not get is my first file is
called test.cfm do i need to cal lit test.cfc? or does it create a file called
test.cfm

this part confuses me.

thanks much
mikey999 - 25 Mar 2008 22:18 GMT
ps this part webservice="http://yourdomain.com/web_services/book.cfc?wsdl"> i did put in the link to my file test.cfc
Ian Skinner - 25 Mar 2008 22:35 GMT
> so i have never created a web service and find my self wanting to learn how. So
> I found this page with examples
[quoted text clipped - 62 lines]
>
>  thanks much

The <cfcomponent...>...</cfcomponent> code should be in a file with a
.cfc extension, this is not required, but it is the default expectation.

The <cfinvoke...> tag should be in an .cfm file.  It could also be in a
higer level cfc, but let's not get ahead of ourselves here.  The
"webservice" parameter of the <cfinvoke...> tag should reference the cfc
file created above.

Before running your cfc as a web service run it as a component.  Just
add a component version of <cfinvoke...> before your web service
version.  This makes sure that errors in the cfc itself is not stopping
you dead in your tracks.  A web service can not always report the same
level of detail about an error as a component called locally can.
mikey999 - 26 Mar 2008 14:27 GMT
well i am getting this error maybe this will help some

===================================================================

Could not perform web service invocation "listBooks".  
Here is the fault returned when invoking the web service operation:

AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode:
 faultString: coldfusion.xml.rpc.CFCInvocationException:
    [coldfusion.tagext.sql.QueryTag$DatabaseQueryException : Error Executing
Database Query.][java.sql.SQLException : [Macromedia][SQLServer JDBC
Driver][SQLServer]Incorrect syntax near the keyword 'AND'.]
 faultActor:
 faultNode:
 faultDetail:

    {http://xml.apache.org/axis/}stackTrace:coldfusion.xml.rpc.CFCInvocationExcepti
on: [coldfusion.tagext.sql.QueryTag$DatabaseQueryException : Error Executing
Database Query.][java.sql.SQLException : [Macromedia][SQLServer JDBC
Driver][SQLServer]Incorrect syntax near the keyword 'AND'.]
    at
coldfusion.xml.rpc.CFComponentSkeleton.__createCFCInvocationException(CFComponen
tSkeleton.java:714)
    at
coldfusion.xml.rpc.CFComponentSkeleton.__invoke(CFComponentSkeleton.java:660)
    at login.test.listBooks(D:\login\test.cfc)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAcce...
 
 
The error occurred in D:\login\test2.cfm: line 6
 
4 :    webservice="http://www.resourcesaver.com/login/test.cfc?wsdl">
5 :
6 :    <cfinvokeargument name="category" value="123">
7 : </cfinvoke>
8 :
Azadi - 26 Mar 2008 15:07 GMT
SELECT FileToolID,FileTitle, UrlLink, FileDescription, File3
        FROM FileTool
        AND FileTool.StatusID = 'Approved'
        AND FileTool.FileCONFIGID = 24

that is a very wrong sql statement, which is what your webservice is
trying to tell you with the error...

see what and WHERE you are missing in your sql?

Azadi Saryev
Sabai-dee.com
http://www.sabai-dee.com/
mikey999 - 26 Mar 2008 22:10 GMT
i fixed that error in my query you are right i missed out a where but still
getthis this error

i also noticed in side the cfm admin there is a place for web service but this
example does not talk about this at all. Do i need to do anything in that cfm
admin on this for this to work?

===============================================

Could not perform web service invocation "listBooks".  
Here is the fault returned when invoking the web service operation:

AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode:
 faultString: coldfusion.xml.rpc.CFCInvocationException:
    [coldfusion.tagext.sql.QueryTag$DatabaseQueryException : Error Executing
Database Query.][java.sql.SQLException : [Macromedia][SQLServer JDBC
Driver][SQLServer]Invalid column name 'UrlLink'.]
 faultActor:
 faultNode:
 faultDetail:

    {http://xml.apache.org/axis/}stackTrace:coldfusion.xml.rpc.CFCInvocationExcepti
on: [coldfusion.tagext.sql.QueryTag$DatabaseQueryException : Error Executing
Database Query.][java.sql.SQLException : [Macromedia][SQLServer JDBC
Driver][SQLServer]Invalid column name 'UrlLink'.]
    at
coldfusion.xml.rpc.CFComponentSkeleton.__createCFCInvocationException(CFComponen
tSkeleton.java:714)
    at
coldfusion.xml.rpc.CFComponentSkeleton.__invoke(CFComponentSkeleton.java:660)
    at login.test.listBooks(D:\login\test.cfc)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Nati...
 
 
The error occurred in D:\web\getfsites\getf\test2.cfm: line 6
 
4 :    webservice="http://www.resourcesaver.com/login/test.cfc?wsdl">
5 :
6 :    <cfinvokeargument name="category" value="123">
7 : </cfinvoke>
8 :

 


--------------------------------------------------------------------------------
 
Resources:
Check the ColdFusion documentation to verify that you are using the correct
syntax.
Search the Knowledge Base to find a solution to your problem.

 
Browser   Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)
Remote Address   64.243.182.132
Referrer    
Date/Time   26-Mar-08 03:41 PM
Azadi - 27 Mar 2008 02:55 GMT
just READ the error you get:

faultString: coldfusion.xml.rpc.CFCInvocationException:
    [coldfusion.tagext.sql.QueryTag$DatabaseQueryException : Error Executing
Database Query.][java.sql.SQLException : [Macromedia][SQLServer JDBC
Driver][SQLServer]Invalid column name 'UrlLink'.]

*Invalid column name 'UrlLink'*

you apparently still have your query wrong...

Azadi Saryev
Sabai-dee.com
http://www.sabai-dee.com/
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.