[cfaussie] REMINDER: CFUG QLD Tuesday 11th November 2008 ( TONIGHT ) - Adobe's Secret AIR Applications
Please RSVP before 12:00PM Hi everyone, its CFUG time again. This month Andrew Spaulding from Adobe will join us via Connect to show us some real life AIR applications, as well as some of the new CS4 work flows. As usual we will have Food, Drinks and time for discussions. I look forward to seeing you at the November 2008 Coldfusion Usergroup Please use the URL below to RSVP http://qld.cfug.org.au/index.cfm?event=showRSVPFormmeetingID=3BB0B4CD-96CE-207E-7023432D5F6C3CF3 For More information please use the URL below http://qld.cfug.org.au/index.cfm?event=showMeetingmeetingID=3BB0B4CD-96CE-207E-7023432D5F6C3CF3 Cheers Gareth Edwards. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: eway integration
Thanks for the offer guys. I'm finally getting somewhere, the documentation lacks, but with a bit of guessing work I think I'll get their. Cheers On Fri, Nov 7, 2008 at 7:42 PM, michael sharman [EMAIL PROTECTED] wrote: There are examples on the site, but not for webservices...only for an XML POST which I've done using cfhttp. http://www.eway.com.au/Support/Developer/PaymentsRealTime.aspx Let me know if you need some specific XML examples Michael On Nov 7, 4:23 pm, Taco Fleur [EMAIL PROTECTED] wrote: Has anyone been able to integrate with the webservices of eway at all? ColdFusion or any other language? There are no demo's available in any language on the eway site for the web services, so I'm guessing the answer is no. I've been able to get the XML recurring billing going (that was a nightmare on its own), now I just need to get the web services going because they don't have any delete or query methods available for the XML service. I've been able to get one web service call going, but the others throw errors saying the method does not exist. Cheers -- Try advertising on the new Australian Business Directorywww.clickfind.com.au http://directorywww.clickfind.com.au/ Online Marketing Platform:www.onlinemarketingplatform.com.au blog:http://australiansearchengine.wordpress.com/ Web Designers http://www.web-designers-australia.com -- Try advertising on the new Australian Business Directory www.clickfind.com.au blog: http://australiansearchengine.wordpress.com/ Web Designers http://www.web-designers-australia.com --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
@Steve, Thanks for the response but I don't think you've understood me correctly. I'll try to explain myself again. Perhaps there is a CF web service guru out there that can help? When building a web service, should the input arguments be a single XML document (which defines the input parameters) or should you just have an argument for each parameter. Or are both options acceptable? It makes more sense to me to have a argument for each parameter otherwise if you have an XML doc as the input you have to write your own XML parser / validator. This is all built right into CF when you choose access=remote. I've been doing a little more reading and noted that you can distribute your web service as an RPC (default in CF) or as document- literal style. I think the RPC system is the way I've been discussing and the document-literal style option is the alternative where you pass in a full XML document. Is RPC easier but compatible with fewer technologies? Cheers Matthew --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
Further to the previous question: when you prepare the return data for a function where access=remote would you build an XML document and return it or would you just return the data in whatever datatype is required e.g. string, numeric, array, struct etc. Then the underlying CF builds it into an XML soap packet to send it back to the caller/ client? It just seems crazy to me to do all the dusiness work of your function and then have to additionally build an XML packet for returning. The whole point of CF is to make life easy so you just return the array or whatever and CF converts it into XML. Are both options correct? NOTE: I'm aware that in some scenarios you would want to return an XML document as part of the return package but lets keep it to returning simple strings, numbers, arrarys for now. Cheers Matthew On Nov 11, 1:41 pm, Matthew [EMAIL PROTECTED] wrote: @Steve, Thanks for the response but I don't think you've understood me correctly. I'll try to explain myself again. Perhaps there is a CF web service guru out there that can help? When building a web service, should the input arguments be a single XML document (which defines the input parameters) or should you just have an argument for each parameter. Or are both options acceptable? It makes more sense to me to have a argument for each parameter otherwise if you have an XML doc as the input you have to write your own XML parser / validator. This is all built right into CF when you choose access=remote. I've been doing a little more reading and noted that you can distribute your web service as an RPC (default in CF) or as document- literal style. I think the RPC system is the way I've been discussing and the document-literal style option is the alternative where you pass in a full XML document. Is RPC easier but compatible with fewer technologies? Cheers Matthew --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
All CF datatypes are converted to SOAP equivalents So it says but i have seen time and time again issues with the soap conversion and datatyping issues, especially with .NET Using XML you know exactly what you are getting. Thats my reason. -Original Message- From: cfaussie@googlegroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Matthew Sent: Tuesday, 11 November 2008 2:04 PM To: cfaussie Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed @Steve, thanks again for replying. CF can handle complex data types no problem. All CF datatypes are converted to SOAP equivalents (http:// livedocs.adobe.com/coldfusion/7/htmldocs/1547.htm#1186403). As per my latest post it just seems crazy to have to write an additional XML parser to deciffer the XML submitted by the client (you'd need a whole lot of validation logic as well). Same goes for sending the data back - why not just let CF covert the objects into their equivalent SOAP datatypes. I can't see any benefit for receiving XML packets and returning XML packets!?!?!? Can anyone comment on reasons to do this? Cheers Matthew On Nov 11, 1:55 pm, Steve Onnis [EMAIL PROTECTED] wrote: Mathews Its either/or. I preferred the XML way so that's the way it was built. I guess what I was trying to say in my last email is there isn't a right/wrong way, just what ever fits better with what you are trying to do. Its easier to search xml than it is to try and parse arguments if some arguments are not required to be passed in. Also I don't know if you will have issues with things like passing in arrays and stuff into the web service because of the data types possibly not being maintained in the request. This is where XML is better as you don't need to worry about it and you can handle it all in your web service. Steve -Original Message- From: cfaussie@googlegroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Matthew Sent: Tuesday, 11 November 2008 1:41 PM To: cfaussie Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed @Steve, Thanks for the response but I don't think you've understood me correctly. I'll try to explain myself again. Perhaps there is a CF web service guru out there that can help? When building a web service, should the input arguments be a single XML document (which defines the input parameters) or should you just have an argument for each parameter. Or are both options acceptable? It makes more sense to me to have a argument for each parameter otherwise if you have an XML doc as the input you have to write your own XML parser / validator. This is all built right into CF when you choose access=remote. I've been doing a little more reading and noted that you can distribute your web service as an RPC (default in CF) or as document- literal style. I think the RPC system is the way I've been discussing and the document-literal style option is the alternative where you pass in a full XML document. Is RPC easier but compatible with fewer technologies? Cheers Matthew --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
Hi Matthew, I second Steve on the point below.. I have pulled out many a hair trying to get complex datatypes to send/parse correctly between different platforms. They work nicely between CF and CF, but try with CF and .NET and the 'fun' begins. Regards, Adam -Original Message- From: Steve Onnis [mailto:[EMAIL PROTECTED] Sent: Tuesday, November 11, 2008 2:07 PM To: cfaussie@googlegroups.com Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed All CF datatypes are converted to SOAP equivalents So it says but i have seen time and time again issues with the soap conversion and datatyping issues, especially with .NET Using XML you know exactly what you are getting. Thats my reason. -Original Message- From: cfaussie@googlegroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Matthew Sent: Tuesday, 11 November 2008 2:04 PM To: cfaussie Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed @Steve, thanks again for replying. CF can handle complex data types no problem. All CF datatypes are converted to SOAP equivalents (http:// livedocs.adobe.com/coldfusion/7/htmldocs/1547.htm#1186403). As per my latest post it just seems crazy to have to write an additional XML parser to deciffer the XML submitted by the client (you'd need a whole lot of validation logic as well). Same goes for sending the data back - why not just let CF covert the objects into their equivalent SOAP datatypes. I can't see any benefit for receiving XML packets and returning XML packets!?!?!? Can anyone comment on reasons to do this? Cheers Matthew On Nov 11, 1:55 pm, Steve Onnis [EMAIL PROTECTED] wrote: Mathews Its either/or. I preferred the XML way so that's the way it was built. I guess what I was trying to say in my last email is there isn't a right/wrong way, just what ever fits better with what you are trying to do. Its easier to search xml than it is to try and parse arguments if some arguments are not required to be passed in. Also I don't know if you will have issues with things like passing in arrays and stuff into the web service because of the data types possibly not being maintained in the request. This is where XML is better as you don't need to worry about it and you can handle it all in your web service. Steve -Original Message- From: cfaussie@googlegroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Matthew Sent: Tuesday, 11 November 2008 1:41 PM To: cfaussie Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed @Steve, Thanks for the response but I don't think you've understood me correctly. I'll try to explain myself again. Perhaps there is a CF web service guru out there that can help? When building a web service, should the input arguments be a single XML document (which defines the input parameters) or should you just have an argument for each parameter. Or are both options acceptable? It makes more sense to me to have a argument for each parameter otherwise if you have an XML doc as the input you have to write your own XML parser / validator. This is all built right into CF when you choose access=remote. I've been doing a little more reading and noted that you can distribute your web service as an RPC (default in CF) or as document- literal style. I think the RPC system is the way I've been discussing and the document-literal style option is the alternative where you pass in a full XML document. Is RPC easier but compatible with fewer technologies? Cheers Matthew --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
@steve + @adam; thanks for that advice. I'm glad I asked before I went and refactored all the code. Thanks a million. I'll be interested to see what others have to say. On Nov 11, 2:32 pm, Adam Chapman [EMAIL PROTECTED] wrote: Hi Matthew, I second Steve on the point below.. I have pulled out many a hair trying to get complex datatypes to send/parse correctly between different platforms. They work nicely between CF and CF, but try with CF and .NET and the 'fun' begins. Regards, Adam -Original Message- From: Steve Onnis [mailto:[EMAIL PROTECTED] Sent: Tuesday, November 11, 2008 2:07 PM To: cfaussie@googlegroups.com Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed All CF datatypes are converted to SOAP equivalents So it says but i have seen time and time again issues with the soap conversion and datatyping issues, especially with .NET Using XML you know exactly what you are getting. Thats my reason. -Original Message- From: cfaussie@googlegroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Matthew Sent: Tuesday, 11 November 2008 2:04 PM To: cfaussie Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed @Steve, thanks again for replying. CF can handle complex data types no problem. All CF datatypes are converted to SOAP equivalents (http:// livedocs.adobe.com/coldfusion/7/htmldocs/1547.htm#1186403). As per my latest post it just seems crazy to have to write an additional XML parser to deciffer the XML submitted by the client (you'd need a whole lot of validation logic as well). Same goes for sending the data back - why not just let CF covert the objects into their equivalent SOAP datatypes. I can't see any benefit for receiving XML packets and returning XML packets!?!?!? Can anyone comment on reasons to do this? Cheers Matthew On Nov 11, 1:55 pm, Steve Onnis [EMAIL PROTECTED] wrote: Mathews Its either/or. I preferred the XML way so that's the way it was built. I guess what I was trying to say in my last email is there isn't a right/wrong way, just what ever fits better with what you are trying to do. Its easier to search xml than it is to try and parse arguments if some arguments are not required to be passed in. Also I don't know if you will have issues with things like passing in arrays and stuff into the web service because of the data types possibly not being maintained in the request. This is where XML is better as you don't need to worry about it and you can handle it all in your web service. Steve -Original Message- From: cfaussie@googlegroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Matthew Sent: Tuesday, 11 November 2008 1:41 PM To: cfaussie Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed @Steve, Thanks for the response but I don't think you've understood me correctly. I'll try to explain myself again. Perhaps there is a CF web service guru out there that can help? When building a web service, should the input arguments be a single XML document (which defines the input parameters) or should you just have an argument for each parameter. Or are both options acceptable? It makes more sense to me to have a argument for each parameter otherwise if you have an XML doc as the input you have to write your own XML parser / validator. This is all built right into CF when you choose access=remote. I've been doing a little more reading and noted that you can distribute your web service as an RPC (default in CF) or as document- literal style. I think the RPC system is the way I've been discussing and the document-literal style option is the alternative where you pass in a full XML document. Is RPC easier but compatible with fewer technologies? Cheers Matthew --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
Yeah, Dream on! :-) Well - they are coverted to SOAP equivalents, nothing wrong so far. As Steve has pointed out - there are various complex issues when it comes to complex data types cross-platform interoperability - converting types to .NET is one of the easier tasks. Start about including proper webservice security, authentication etc. and you're totally lost with CF. CF's Axis-integration follows the code-first principle, i.e. you write code and all the magic (WSDL) is done for you. Unfortunately that's one of the worst approaches one could follow when it comes to web services, it should always be contract first and the implementations should be derived from a shared interface in WSDL. CF to CF webservices though are expected to work fine. When it comes to any serious webservice integration with CF though (WS-*, complex types to .NET etc.) I'd not use it or rather go with a custom XML API. Cheer Kai All CF datatypes are converted to SOAP equivalents _ Kai Koenig - Ventego Creative Ltd ph: +64 4 476 6781 - mob: +64 21 928 365 / +61 450 132 117 web: http://www.ventego-creative.co.nz blog: http://www.bloginblack.de _ Kai Koenig - Ventego Creative Ltd ph: +64 4 476 6781 - mob: +64 21 928 365 / +61 450 132 117 web: http://www.ventego-creative.co.nz blog: http://www.bloginblack.de --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
Perhaps the answer is to provide 2 web service interfaces - one for XML consumers and the other for SOAP consumers. If you build the XML version first it shouldn't be that hard to build a SOAP version as well... as long as the web service's have absolutely no business logic in them. The SOAP web service CFC would have inputs parameters and forward everything onto a service object. The XML web service CFC would be a little more complicated because it would have all the XML parsing, validating etc and then forward the request onto the same service object. Cheers Matthew On Nov 11, 3:55 pm, Matthew [EMAIL PROTECTED] wrote: One potential argument against XML in and XML out is that this is more work for the consumer / client. They have to covert build an XML packet to submit to the web service and then they have to parse / validate / pull apart the XML packet which I return to them. Where as if I was to use the scenario where your input and output parameters are strings, numbers, arrays, objects etc (and let CF covert them to their SOAP equivalents - which Kai obviously hates) then surely it would be easier for the consumer. From experience with web services that I've consumed in the past the web service must be returning SOAP data types to CF because I end up with a object which as you unpack it you get objects within objects and eventually you get down to the string, numbers, arrays etc. This makes sense to me because otherwise I'd have to parse the returned XML and then convert it all into CF data types before I could do anything with it (i.e. store some of it in the DB and display some of it to the user). What have other people experienced? Cheers Matthew On Nov 11, 2:41 pm, Kai Koenig [EMAIL PROTECTED] wrote: Yeah, Dream on! :-) Well - they are coverted to SOAP equivalents, nothing wrong so far. As Steve has pointed out - there are various complex issues when it comes to complex data types cross-platform interoperability - converting types to .NET is one of the easier tasks. Start about including proper webservice security, authentication etc. and you're totally lost with CF. CF's Axis-integration follows the code-first principle, i.e. you write code and all the magic (WSDL) is done for you. Unfortunately that's one of the worst approaches one could follow when it comes to web services, it should always be contract first and the implementations should be derived from a shared interface in WSDL. CF to CF webservices though are expected to work fine. When it comes to any serious webservice integration with CF though (WS-*, complex types to .NET etc.) I'd not use it or rather go with a custom XML API. Cheer Kai All CF datatypes are converted to SOAP equivalents _ Kai Koenig - Ventego Creative Ltd ph: +64 4 476 6781 - mob: +64 21 928 365 / +61 450 132 117 web:http://www.ventego-creative.co.nz blog:http://www.bloginblack.de _ Kai Koenig - Ventego Creative Ltd ph: +64 4 476 6781 - mob: +64 21 928 365 / +61 450 132 117 web:http://www.ventego-creative.co.nz blog:http://www.bloginblack.de --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---
[cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed
@Steve, true but if you are trying to minimise work for the consumer / client and they preferred SOAP than all I'm pointing out is that it shouldn't be too hard to accommodate this. Going for the XML method as the main web service interface make sense. Thanks everyone for your help. Cheers Matthew On Nov 11, 5:06 pm, Steve Onnis [EMAIL PROTECTED] wrote: And why would you do that? All you are doing is creating more work for yourself. When it comes down to it, you need to make it as easy to manage and use as possible. With consideration for the level of compatibility with ColdFusion's web service implementation and how it handles soap requests, I and a number of other people have already recommended to avoid using the native soap data types and use an xml method. in the end, xml is xml and that's it. No data type problems or anything. If you need to check the data, check it and throw the error with cf. -Original Message- From: cfaussie@googlegroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Matthew Sent: Tuesday, 11 November 2008 5:02 PM To: cfaussie Subject: [cfaussie] Re: Building a web service - can you pass in XML or should the arguments be data typed Perhaps the answer is to provide 2 web service interfaces - one for XML consumers and the other for SOAP consumers. If you build the XML version first it shouldn't be that hard to build a SOAP version as well... as long as the web service's have absolutely no business logic in them. The SOAP web service CFC would have inputs parameters and forward everything onto a service object. The XML web service CFC would be a little more complicated because it would have all the XML parsing, validating etc and then forward the request onto the same service object. Cheers Matthew On Nov 11, 3:55 pm, Matthew [EMAIL PROTECTED] wrote: One potential argument against XML in and XML out is that this is more work for the consumer / client. They have to covert build an XML packet to submit to the web service and then they have to parse / validate / pull apart the XML packet which I return to them. Where as if I was to use the scenario where your input and output parameters are strings, numbers, arrays, objects etc (and let CF covert them to their SOAP equivalents - which Kai obviously hates) then surely it would be easier for the consumer. From experience with web services that I've consumed in the past the web service must be returning SOAP data types to CF because I end up with a object which as you unpack it you get objects within objects and eventually you get down to the string, numbers, arrays etc. This makes sense to me because otherwise I'd have to parse the returned XML and then convert it all into CF data types before I could do anything with it (i.e. store some of it in the DB and display some of it to the user). What have other people experienced? Cheers Matthew On Nov 11, 2:41 pm, Kai Koenig [EMAIL PROTECTED] wrote: Yeah, Dream on! :-) Well - they are coverted to SOAP equivalents, nothing wrong so far. As Steve has pointed out - there are various complex issues when it comes to complex data types cross-platform interoperability - converting types to .NET is one of the easier tasks. Start about including proper webservice security, authentication etc. and you're totally lost with CF. CF's Axis-integration follows the code-first principle, i.e. you write code and all the magic (WSDL) is done for you. Unfortunately that's one of the worst approaches one could follow when it comes to web services, it should always be contract first and the implementations should be derived from a shared interface in WSDL. CF to CF webservices though are expected to work fine. When it comes to any serious webservice integration with CF though (WS-*, complex types to .NET etc.) I'd not use it or rather go with a custom XML API. Cheer Kai All CF datatypes are converted to SOAP equivalents _ Kai Koenig - Ventego Creative Ltd ph: +64 4 476 6781 - mob: +64 21 928 365 / +61 450 132 117 web:http://www.ventego-creative.co.nz blog:http://www.bloginblack.de _ Kai Koenig - Ventego Creative Ltd ph: +64 4 476 6781 - mob: +64 21 928 365 / +61 450 132 117 web:http://www.ventego-creative.co.nz blog:http://www.bloginblack.de --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups cfaussie group. To post to this group, send email to cfaussie@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cfaussie?hl=en -~--~~~~--~~--~--~---