Steven Webster: LiveCycle ES - the SOA for your RIA

« LiveCycle ES for Software Architects and RIA Developers | Main | Innovative User Experience for Video Scrubbing »

May 24, 2008

LiveCycle ES - the SOA for your RIA

In my previous post, I introduced LiveCycle ES to architects and developers as a Service Oriented Architecture. For those architects and developers who are delivering Rich Internet Applications - and specifically what I used to call "Enterprise Rich Internet Applications", I also positioned LiveCycle ES as an SOA upon which you can build RIA, as back-end for Rich Internet Application front-ends. In the previous post, I broadly introduced the concept of LiveCycle ES services; in this post, I'd like to talk in a little more detail about the architecture for those services, and how this architecture exposes these services to your Rich Internet Application.

 

LiveCycle ES - An SOA deployed within your J2EE infrastructure

 

LiveCycle ES deploys into a J2EE application server, offering a Service Oriented Architecture upon which you can build applications, including (but definitely not limited to) Rich Internet Applications.  I don't want to get into the details and technicalities of SOA, or SOA versus ESB, I want to keep this discussion abstract.  If you really want to understand how "SOA compliant" LiveCycle ES, Duane Nickull has covered this in the past, as has Marcel Boucher.

 

Every service in the LiveCycle ES Service Oriented Architecture is exposed through a number of different "end-points" which allow you to invoke those services.  These endpoints are:

 

  • RemoteObject endpoints for invocation by RemoteObject tag in Flex
  • WebService endpoints for invocation by WebService tag in Flex, or by another Web Service client
  • Java endpoints for invocation by Java applications running in a J2EE container
  • Email endpoints, that allow you to invoke a service on receipt of an email
  • Watched Folder endpoints, that allow you to invoke a service on a file as it appears in a particular folder or directory

 

Immediately, you probably have a sense of just how easy it is for a Rich Internet Application built with Flex or AIR to invoke and consume the services that LiveCycle ES offers; natively with a RemoteObject call, or with a WebService call. 

 

Immediately, you probably have a sense of just how easy it is for a Rich Internet Application built with Flex or AIR to invoke LiveCycle services alongside your existing J2EE infrastructure.   Though you could easily bring your own Java services into LiveCycle ES (more on that later), you can just as easily invoke LiveCycle ES services from your own Java middleware, and allow your Rich Internet Application to continue to sit upon your Java tier. In future posts, I'll consider the trade-offs of some of these different archtiectures.

 

In future posts (and perhaps at MAX :) ) I'll talk about just how easy, and how few lines of code you need, to bring powerful LiveCycle ES services to bear, to be seamlesly choreographed and orchestrated by your Rich Internet Application.

 

Hopefully you can see however, that with RemoteObject and WebService endpoints on all LiveCycle ES services, with the LiveCycle ES container deployed, it's a no-brainer to invoke those services from your Rich Internet Applications.

 

In the meantime, how do I get started ?

 

First of all, go and grab a developer copy of LiveCycle ES, which we offer as a turnkey installation with JBoss. You can go and download it here.

 

There is extensive livedocs around LiveCycle ES - if the above has caught your interest, I'd suggest jumping into the "Introducting Invocation" section of the Programmer SDK docs.



Posted by swebster at May 24, 2008 10:46 PM

Comments

Post a comment




Remember Me?