Marc Garrett has posted an excellent article about leveraging the ColdFusion Event Gateways in a custom application to add real time notification using Google Talk and iChat.
Read it in his posting: ColdFusion Event Gateways: Building an eCommerce Bot for iChat and Google Talk
This is one of the use cases that we had in mind when working on the IM Gateways for ColdFusion MX 7. It's nice to see how smoothly this worked for Marc.
Thursday, March 23, 2006
Tuesday, March 21, 2006
Mystic public Beta 2 now available
The public Beta 2 of the ColdFusion/Flex Connectivity kit is now available over on the Adobe (f.k.a Macromedia) Labs site. Flex 2.0 Beta 2 is has also been released.
This beta has some great stuff in it. First, if you have seen any information about Flex 2 you have probably heard about the Data Services feature (not to be confused with the product name, which has been changed to Flex Data Services). This provides you with some really slick help in managing data on the client and server. For instance, if one client updates a data table all of the other active clients are notified (using the Flex Messaging feature) about the change and can update real time. I encourage you to read about this in the Flex materials available on the labs site.
New in Mystic Beta 2 is that you can now write the back end of this stuff with ColdFusion Components instead of Java. This allows you to use the RAD environment of CFML along with your Flex applications.
We have also updated the Flash Remoting (formerly the ColdFusion Adapter) to allow you to invoke CFCs from Flex/ActionScript3 applications. And the Flex messaging Gateway, which supports publishing and subscribing to Flex destinations from ColdFusion, has been refreshed.
Also new in Beta 2 are some really sweet Flex Builder/Eclipse wizards that make it trivial to create either Active Record or Bean/DAO CFCs from an existing database table, or even generate an entire set of CFCs to act as the back end to a Data Service application (these are called Assembler CFCs). To compliment these wizards, this is the first public beta release of RDS support for Eclipse. This includes both file and database table browsing. Combined with CFEclipse, these additions to Flex Builder make it a really nice IDE for creating CF and Flex rich internet applications.
Check it out!
This beta has some great stuff in it. First, if you have seen any information about Flex 2 you have probably heard about the Data Services feature (not to be confused with the product name, which has been changed to Flex Data Services). This provides you with some really slick help in managing data on the client and server. For instance, if one client updates a data table all of the other active clients are notified (using the Flex Messaging feature) about the change and can update real time. I encourage you to read about this in the Flex materials available on the labs site.
New in Mystic Beta 2 is that you can now write the back end of this stuff with ColdFusion Components instead of Java. This allows you to use the RAD environment of CFML along with your Flex applications.
We have also updated the Flash Remoting (formerly the ColdFusion Adapter) to allow you to invoke CFCs from Flex/ActionScript3 applications. And the Flex messaging Gateway, which supports publishing and subscribing to Flex destinations from ColdFusion, has been refreshed.
Also new in Beta 2 are some really sweet Flex Builder/Eclipse wizards that make it trivial to create either Active Record or Bean/DAO CFCs from an existing database table, or even generate an entire set of CFCs to act as the back end to a Data Service application (these are called Assembler CFCs). To compliment these wizards, this is the first public beta release of RDS support for Eclipse. This includes both file and database table browsing. Combined with CFEclipse, these additions to Flex Builder make it a really nice IDE for creating CF and Flex rich internet applications.
Check it out!
Wednesday, March 08, 2006
ColdFusion MX 7.0.1 Cumulative Hot Fix # 2
ColdFusion MX 7.0.1 Cumulative Hot Fix 2 has been made available on the ColdFusion support site. This fixes a handful of stuff that you may care about. It includes some Verity fixes, a cfdocument issue, and some CFC/web service issues. See the tech note for details.
Wednesday, February 22, 2006
Mike Nimer takes his licks
Mike Nimer takes his lumps like a man over on his Blog. I would hate to have a whole magazine devoted to some of the CF 3.1 C++ code I wrote!
Compiling Custom Event Gateways For Dummies
This is old news in the blogsphere (and you probably read about it on Sean Corfields blog ages ago) but Rick Root has a very useful article on Compiling Custom Event Gateways from a non-Java developers point of view.
Speaking at cf.Objective() - March 11 & 12, 2006, Minneapolis, MN
I have just booked my travel and wanted to post the fact that I will be presenting at
cf.Objective() - March 11 & 12, 2006 in Minneapolis, MN. I believe I will be doing a general session giving a preview of Mystic, the latest update to ColdFusion MX 7 now in Beta that will give CF developers some really great stuff to take advantage of Flex 2.
I am stepping in for Tim Buntel, who has (sadly) left Adobe to move on to other opportunities.
I have also agreed to whip up a session on Web Services and Java. I will go in to some detail on how CFMX uses the Apache Axis WSDL2Java tool to create code to consume Web Services and hopefully give people insight on how to construct CFML data structures that can be used as argument to services that require complex types as inputs.
So check out the conference detail on the web site. The list of speakers and session topics look really good and this event is sure to be great for hard core CFML developers.
cf.Objective() - March 11 & 12, 2006 in Minneapolis, MN. I believe I will be doing a general session giving a preview of Mystic, the latest update to ColdFusion MX 7 now in Beta that will give CF developers some really great stuff to take advantage of Flex 2.
I am stepping in for Tim Buntel, who has (sadly) left Adobe to move on to other opportunities.
I have also agreed to whip up a session on Web Services and Java. I will go in to some detail on how CFMX uses the Apache Axis WSDL2Java tool to create code to consume Web Services and hopefully give people insight on how to construct CFML data structures that can be used as argument to services that require complex types as inputs.
So check out the conference detail on the web site. The list of speakers and session topics look really good and this event is sure to be great for hard core CFML developers.
Wednesday, February 01, 2006
Adobe releases Flex 2.0 Beta 1 on Adobe labs
Flex 2.0 released a public Beta on Adobe Labs yesteraday. In addition to refreshing Flex Builder 2.0 and the Flex framework, this Beta also includes the Flex Enterprise Services (FES), which is the service piece of Flex 2.
Along with this is the "ColdFusion/Flex Connectivity" beta, which includes two interesting pieces for ColdFusion developers
1. The Flash Remoting Update. This is an update to the Alpha released last year (formerly called "the CF Adapter") that allows you to use the new Flash Remoting functionality with Flex Builder 2.0 and CFMX. The sweet thing here is that you can map CFC objects on the server to ActionScript objects on the client seemlessly. These are called "Value Objects".
2. The Flex Messaging Gateway. This is the piece that I wrote that uses the Flex 2.0 Messaging system to allow ColdFusion MX 7 to Publish/Subscribe messages to/from a flex application. I think this is pretty cool - you can use SendGatewayMessage() to send a message that multiple Flex clients will receive. And vise-versa.
Anyway, check it out up on Labs and let me know whay you think!
Along with this is the "ColdFusion/Flex Connectivity" beta, which includes two interesting pieces for ColdFusion developers
1. The Flash Remoting Update. This is an update to the Alpha released last year (formerly called "the CF Adapter") that allows you to use the new Flash Remoting functionality with Flex Builder 2.0 and CFMX. The sweet thing here is that you can map CFC objects on the server to ActionScript objects on the client seemlessly. These are called "Value Objects".
2. The Flex Messaging Gateway. This is the piece that I wrote that uses the Flex 2.0 Messaging system to allow ColdFusion MX 7 to Publish/Subscribe messages to/from a flex application. I think this is pretty cool - you can use SendGatewayMessage() to send a message that multiple Flex clients will receive. And vise-versa.
Anyway, check it out up on Labs and let me know whay you think!
Thursday, January 19, 2006
Adobe and CFUnited
CFUnited is coming up (OK it's at the end of June) but Adobe is now the platinum sponsor of this ColdFusion focused conference.
The ColdFusion team showed up last year in force and while we haven't set plans yets, you can probably count on us being there again since we are a sponsor. Perhaps we will be sporting some new Adobe branding clothing. :-)
See you there!
The ColdFusion team showed up last year in force and while we haven't set plans yets, you can probably count on us being there again since we are a sponsor. Perhaps we will be sporting some new Adobe branding clothing. :-)
See you there!
Sunday, December 25, 2005
Merry Christmas
Just a quick note to wish all those who celebrate the holiday - Merry Christmas!
I am spending time in Portland Oregon with my family - eating and opening presents. Coolest present I gave this year was a Palm Tx to my wife with built-in Bluetooth and WiFi. She is still trying to get used to it as I am 'force' upgrading her from a Palm M5 - I can't seem to convince her that having WiFi on her Palm will be cool. :-)
Best present I got this year was a neato atomic travel clock from my sister that can set it self in North America (which most can) but can also read the clock signals in Europe, Japan and other places. I also received lots of good stuff from my Amazon wish list.
Happy New Year too, as my bloging frequency is low enough that I should be proactive!
I am spending time in Portland Oregon with my family - eating and opening presents. Coolest present I gave this year was a Palm Tx to my wife with built-in Bluetooth and WiFi. She is still trying to get used to it as I am 'force' upgrading her from a Palm M5 - I can't seem to convince her that having WiFi on her Palm will be cool. :-)
Best present I got this year was a neato atomic travel clock from my sister that can set it self in North America (which most can) but can also read the clock signals in Europe, Japan and other places. I also received lots of good stuff from my Amazon wish list.
Happy New Year too, as my bloging frequency is low enough that I should be proactive!
Monday, December 05, 2005
Macromedia is now Adobe

More info at http://www.adobe.com/aboutadobe/acquisition.html
I am not to "attempt to act as a company spokesperson" about it, but I will say that we are all excited on the CF team for the opportunities that being part Adobe will offer us.
Adobe sells servers too you know.
Friday, December 02, 2005
Changing the target endpoint on a web service object
Just answered a question for a customer that I should probably get out into the googlesphere for others to know.
When you create a web service object in ColdFusion MX, what you are really creating is a Java object that acts as a proxy to the web service. This object derives from an Apache Axis type, org.apache.axis.client.Stub, which in turn implements the standard JAX-RPC type javax.xml.rpc.Stub. Why is this important? Well, these object have an API that you can use to affect the operation of the proxy.
Specifically, you can change the endpoint that the stub will send the HTTP POST that contains the SOAP request. Here is a code snippet that invokes a CFC web service named service.cfc that has an operation "echo" which takes a string and returns it.
Now lets say we want to watch the request with tcpmon, the TCP/HTTP sniffer that is bundled in with Axis, JRun and ColdFusion. First we start up tcpmon (called 'sniffer' by JRun), on Windows you run c:/CFusionMX7/runtime/bin/sniffer.exe.
Fill in a listener port (try 8501) and then a target hostname (localhost) and port (8500 if CF is running its internal webserver, or port 80 if you are running a standard web server). Click the "Add" button and then switch to the "Port 8501" tab. Just to make the output look nice, check the "XML Format" check box at the bottom so tcpmon will make the SOAP more readable.
Now we can run this CFML cfscript snippet:
You will see the SOAP request in the to pane, and the response in the bottom pane.
How does this work? Well JAX-RPC defines a standard property name, "javax.xml.rpc.service.endpoint.address", that will change the URL the stub will send to request to.
Note that we do NOT use "?WSDL" on this URL as this is the endpoint that gets the request, not the URL of the WSDL document.
What else can you do to the Stub? Well, you can read the Javadocs for Stub class in Axis at http://ws.apache.org/axis/java/apiDocs/org/apache/axis/client/Stub.html
and you will see a few interesting APIs. With the addition of the get/set SOAP Header functions in CFMX7 however, ColdFusion already provides access to almost everything via those functions or tag attributes to cfobject or cfinvoke.
When you create a web service object in ColdFusion MX, what you are really creating is a Java object that acts as a proxy to the web service. This object derives from an Apache Axis type, org.apache.axis.client.Stub, which in turn implements the standard JAX-RPC type javax.xml.rpc.Stub. Why is this important? Well, these object have an API that you can use to affect the operation of the proxy.
Specifically, you can change the endpoint that the stub will send the HTTP POST that contains the SOAP request. Here is a code snippet that invokes a CFC web service named service.cfc that has an operation "echo" which takes a string and returns it.
ws = CreateObject("webservice", "http://localhost:8500/service.cfc?WSDL");
ret = ws.echo("hello world");
Now lets say we want to watch the request with tcpmon, the TCP/HTTP sniffer that is bundled in with Axis, JRun and ColdFusion. First we start up tcpmon (called 'sniffer' by JRun), on Windows you run c:/CFusionMX7/runtime/bin/sniffer.exe.
Fill in a listener port (try 8501) and then a target hostname (localhost) and port (8500 if CF is running its internal webserver, or port 80 if you are running a standard web server). Click the "Add" button and then switch to the "Port 8501" tab. Just to make the output look nice, check the "XML Format" check box at the bottom so tcpmon will make the SOAP more readable.
Now we can run this CFML cfscript snippet:
ws._setProperty("javax.xml.rpc.service.endpoint.address", "http://localhost:8501/service.cfc");
ret = ws.echo("Through the tunnel");
You will see the SOAP request in the to pane, and the response in the bottom pane.
How does this work? Well JAX-RPC defines a standard property name, "javax.xml.rpc.service.endpoint.address", that will change the URL the stub will send to request to.
Note that we do NOT use "?WSDL" on this URL as this is the endpoint that gets the request, not the URL of the WSDL document.
What else can you do to the Stub? Well, you can read the Javadocs for Stub class in Axis at http://ws.apache.org/axis/java/apiDocs/org/apache/axis/client/Stub.html
and you will see a few interesting APIs. With the addition of the get/set SOAP Header functions in CFMX7 however, ColdFusion already provides access to almost everything via those functions or tag attributes to cfobject or cfinvoke.
Thursday, November 17, 2005
ColdFusion MX 7.0.1 Hotfix
Hotfix 1 for ColdFusion MX 7.0.1 is now available. We spent some time on this making sure it corrected any issues introduced by the updater, so it is worth pretty much everyone running. I know that Macromedia officially says you only need a hotfix if you encounter an issue, but better to have this install so you wont encounter any of the 14 issues we fixed.
This is really old news as it was posted around November 4th, but I figured I needed to update my blog with something so that my 3 readers out there know that I am alive. :-)
This is really old news as it was posted around November 4th, but I figured I needed to update my blog with something so that my 3 readers out there know that I am alive. :-)
Tuesday, October 04, 2005
ColdFusion cffile hotfix
We just released an updater for ColdFusion MX 7 last week and this week brings our first hotfix for it. :-)
If you use cffile action="upload" in any of your applications, you will want this hotfix which fixes a change in behavior that snuck out in the updater. Starting with ColdFusion MX, the documentation omitted the fact that you could specify a filename in the DESTINATION attribute when uploading a file. We fixed the code to match the docs, which was bad. This hotfix fixes that fix.
If you use cffile action="upload" in any of your applications, you will want this hotfix which fixes a change in behavior that snuck out in the updater. Starting with ColdFusion MX, the documentation omitted the fact that you could specify a filename in the DESTINATION attribute when uploading a file. We fixed the code to match the docs, which was bad. This hotfix fixes that fix.
Wednesday, September 28, 2005
ColdFusion MX 7 updater is available
We've been working hard on Merrimack, the updater for ColdFusion MX 7, for a while and it is now available for download from Macromedia.com.
The updater has much goodness in it, including lots of bug fixes, an update to Axis 1.2.1 for web services, an updated Verity (patch level 22) and a full Mac OS X installer. Read the FAQ tech note and download the full kit from the CF downloads page. You can also find out detailed info from the release notes.
Also read "Welcome to Merrimack: An Even Better ColdFusion MX 7", a devnet article written by Damon Cooper about Merrimack.
It is free for all ColdFusion MX 7 customers, and really adds some good polish to what has proven to be an enourmously successful release.
The updater has much goodness in it, including lots of bug fixes, an update to Axis 1.2.1 for web services, an updated Verity (patch level 22) and a full Mac OS X installer. Read the FAQ tech note and download the full kit from the CF downloads page. You can also find out detailed info from the release notes.
Also read "Welcome to Merrimack: An Even Better ColdFusion MX 7", a devnet article written by Damon Cooper about Merrimack.
It is free for all ColdFusion MX 7 customers, and really adds some good polish to what has proven to be an enourmously successful release.
Subscribe to:
Posts (Atom)
