Andrew Powell

Into The Mind of A Solutions Architect

Andrew Powell

Entries Tagged as MOM

ColdFusion: The Original ESB

December 10, 2009 · 1 Comment

A few months ago, I started a project to make a framework for ColdFusion to enable its functionality as an Enterprise Service Bus (ESB).  I kept running into roadblocks in my mind as how to structure things, but I realized something.  Everything I was trying to do to make ColdFusion an ESB was simply hindering tasks that were already easy to do.  ColdFusion, out of the box, can function as an ESB.  

It wasn't always this way, but over the years, with the addition of things like JMS gateways, .NET integration, HTTP, and FTP integration; it's easy to create workflows that receive data from an input, processes it, and sends it to another destination.  ColdFusion 9 enables this even more so with the addition of Sharepoint integration. 

Why worry about installing something like Mule?  ColdFusion already does everything you need it to do out of the box.  ESBs are the next generation in integration.  ColdFusion just makes it easier and faster than traditional Java or .NET based solutions. 

1 CommentTags: Adobe · ColdFusion · Flex · FlexServerLib · Java · LiveCycle ES · MOM · Universal Mind · WebNext · XML

360Flex - Say Hello To FlexServerLib Slides

May 20, 2009 · No Comments

Here are the slides from my presentation this week at 360Flex.  I should have the updated samples into the SVN repository later this week.

http://static.infoaccelerator.net/files/FlexServerLib.pdf

No CommentsTags: FlexServerLib · Java · Flex · BlazeDS · Spring · Adobe · Universal Mind · Hibernate · MOM

What Is BlazeDS?

May 05, 2009 · 2 Comments

A lot of people think that BlazeDS (and LCDS, for that matter) is a server.  They think it's something that you can deploy, like ColdFusion, and write apps on it.  Not quite, the case, but not too far off either.

BlazeDS is not a server.

Let's say that again, so you understand it.  BlazeDS is not a server.

BlazeDS is a set of servlets and listeners that you can add to your J2EE web application to access your service layer via the AMF protocol.  You don't deploy BlazeDS on its own unless you want to do purely messaging.  90% of deployments are done as part of a larger web project.  BlazeDS is simply another tool that you can use to expose your services to AMF clients (not just Flex).  

Further proof that BlazeDS exists as part of the J2EE ecosystem came late last year when SpringSource announced Spring/BlazeDS Integration.  This virtually removed the MessageBrokerServlet from the equation, routing messages through Spring's MVC architecture instead.  BlazeDS, the guts of it at least, was still responsible for the leg work in processing the AMF requests, but the easy integration into the Spring Framework really made it apparent that BlazeDS is not a server.

Lastly, BlazeDS is easy to incorporate into ColdFusion.  ColdFusion is, at it's roots, a J2EE web app.  BlazeDS is just another piece you can integrate into the web app to enable access to Java and CFC services via AMF.

Any questions?

2 CommentsTags: LiveCycle ES · Java · ColdFusion · Flex · BlazeDS · Silverlight · JMS · Spring · Adobe · Universal Mind · JSP · Hibernate · AIR · MOM

Want To Learn More About FlexServerLib?

January 21, 2009 · No Comments

FlexServerLib , the extension project for BlazeDS, is a powerful library that allows you to access functionality on the server, in Flex, as easily as ColdFusion allows developers to access complex server functionality in CFML.  Imagine if sending an email was as easy as sending a message into a destination and receiving an email was as simple as subscribing to the same destination.  This is just some of the functionality FlexServerLib aims to implement.

A topic has been submitted on FlexServerLib for 360|Flex Indianapolis, but if you want to learn more, we need your vote.

Follow this link to vote

No CommentsTags: Adobe · BlazeDS · ColdFusion · Conferences · Flex · Hessian · Hibernate · Java · JMS · MOM · Speaking · Spring · Universal Mind · WebNext · XML

My 360|Flex Session Is Online

October 23, 2008 · 1 Comment

Thanks to Ted for getting these posted up.  I had almost forgotten about these:

1 CommentTags: Adobe · BlazeDS · Conferences · Flex · Hibernate · Java · LiveCycle ES · MOM · Speaking · Spring · Universal Mind · WebNext

Speaking At FlexCamp Boston

October 22, 2008 · No Comments

I just got word yesterday that I will be speaking at Flex Camp Boston on December 12th.  Brian Rinaldi does a great job putting this show on and deserves all the credit for the success it has become.  The agenda looks like it's going to be yet another good show.  A lot of quality speakers from Adobe and various other consulting firms, as well as Brightcove.  Come for the day, it's the best deal on a Flex show you can get.  

I will speaking on, and demonstrating, the Merapi framework.  I promise, I'll bring all my nifty samples like GPS, RFID, and maybe something new....

 

No CommentsTags: Adobe · BlazeDS · Conferences · Flex · FlexCamp · Java · Merapi · MOM · Speaking · Spring · Universal Mind · WebNext

Remoting From Java To ColdFusion By Example

October 14, 2008 · 2 Comments

This week, I've gotten the chance to work on a pretty slick proof-of-concept for a client. It's always cool to have a little bit of R&D time to play with some ideas. One of the requirements was that we send data as compactly as possible in order to minimize the bandwidth used from client to server over a low-bandwidth connection. Well, if we're trying to be efficient, the most efficient protocol I know is AMF. A few months ago (July 2008), Adobe announced the Java AMF Client as a part of BlazeDS. What this nifty client does is allow you to make AMF remoting calls from Java to any AMF endpoint including, but not limited to: BlazeDS, LCDS, and ColdFusion. Since we were working with a Java client talking to ColdFusion, this seemed, to me, to be the best and most efficient solution for moving data over low-bandwidth connections. Tom Jordahl has blogged about this a little bit, but has not, as yet, posted a complete sample for talking to ColdFusion over AMF from Java. Here is such an implementation for your digestion:

package com.universalmind.util;
   import flex.messaging.io.amf.client.AMFConnection;
   import flex.messaging.io.amf.client.exceptions.ClientStatusException;
   import flex.messaging.io.amf.client.exceptions.ServerStatusException;
   import flex.messaging.messages.RemotingMessage;
   /**
    * @author Andrew Powell
    */
   public class ColdFusionAMFSender {
    /**
    *
    * @param args the arguments, in order required, to pass into the CFC method
    * @return the value returned from the CFC
    * @throws ClientStatusException
    * @throws ServerStatusException
    */
    public Object sendAMFMessage(Object[] args) throws ClientStatusException, ServerStatusException {
    // Create the AMF connection.
    AMFConnection amfConnection = new AMFConnection();
    // Connect to the remote url.
    String url = "http://{yourservername}:{yourport}/{yourcontextroot}/flex2gateway";
    try
    {
    amfConnection.connect(url);
    }
    catch (ClientStatusException cse)
    {
    System.out.println(cse);
    return null;
    }
    String sourceName = "full.path.to.your.CFC";
    RemotingMessage message = new RemotingMessage();
    message.setMessageId(flex.messaging.util.UUIDUtils.createUUID());
    message.setOperation("remoteMethodName");
    message.setBody(args);
    message.setSource(sourceName);
    message.setDestination("ColdFusion");
    return amfConnection.call(null, message);
    }

   }

2 CommentsTags: Adobe · BlazeDS · ColdFusion · Java · MOM · Universal Mind

360|Flex San Jose 2008: My Speaker Reviews For You To Read

September 17, 2008 · 7 Comments

I did this last time around, so here it is again, my session survey results.  Did people love me?  Did they hate me?  Did they care?  Well, the ones who cared enough to fill out the session survey did enough to fill out the survey.  Either way, enough rambling, here's the link:

Survey Results

7 CommentsTags: Adobe · AIR · BlazeDS · Conferences · Flex · Hibernate · Java · JMS · LiveCycle ES · MOM · Spring · Universal Mind · WebNext · XML

Bookshelf Updated

August 07, 2008 · 2 Comments

I updated my bookshelf page the other day.  I added 10 more books which, as an RIA developer and consultant, I find very useful.  Click through and take a look, then buy from Amazon, or your favorite book store.

 

My Bookshelf

2 CommentsTags: Adobe · AIR · AJAX · ANT · Apache · ColdFusion · Eclipse · Flex · General · Hibernate · Java · LiveCycle ES · MOM · Ruby on Rails · Spring · WebNext · XML

360|Flex: Don't Be Dumb, Get You Some

August 06, 2008 · 2 Comments

There are less than 50 360|Flex tickets for the Aug. 17th-20th Conference.  It is, by far, the best value for your money.  Go, register now.  You can come see me and all my UM colleagues, plus the best of the best from the Flex community.  Consider it the Top Gun of Flex.

2 CommentsTags: Adobe · BlazeDS · ColdFusion · Conferences · Flex · General · Java · LiveCycle ES · MOM · Speaking · WebNext