YOUR FEEDBACK
José D'Andrade wrote: "...it may never be released..." Why? "...if Midori isn’t heir to Windows Mi...
AJAXWorld RIA Conference
$300 Savings Expire August 8
Register Today and SAVE!


2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TOP COLDFUSION LINKS


ColdFusion and Crystal Enterprise Integrations
A primer

Consider Your Licensing
Licensing is, of course, a very serious matter with all software. However, it's especially important when integrating two different pieces of software. In this specific case, we need to consider the licensing aspect of Crystal Enterprise. There are three types of licensing you can use:

  1. Named User
  2. Concurrent User
  3. CPU
If you purchased Crystal Enterprise prior to January 1, 2005, and you own concurrent licenses for it, you can still purchase them. However, if you don't already own concurrent licenses, you can no longer buy them. Concurrent licensing was designed around the fact that two users of the same account are unlikely to be requesting data at the same time. Therefore, the serviceable ratio was approximately one concurrent user per 10 real users.

A named user is just that, one named user. There can only be one user per account and that user can only be logged in from one machine at any one time. CPU licensing licenses the servers per CPU. A CPU license needs to be purchased for every CPU on the machine. When installing a CPU license, you can consider it to be unlimited concurrent licensing. Setting up CPU licenses for performance is a bit of a trick. It can be done, but really needs to be done by someone who not only knows how Crystal Enterprise behaves, but also, after evaluating the reports, what needs to be delivered. Business Objects does have a document that explains all this but they will force you to sign an NDA to get it.

Crystal Enterprise has about 10-14 services that can be installed. The services are considered servers in their own right by Business Objects. The system is designed to be easily scaled outward depending on your growing needs. The trick is that if you purchase CPU licenses, you need to ensure you have enough to manage your scalability; last I checked they were approximately $60,000.00 USD. ColdFusionMX licensing on the other hand is fairly simple. You can purchase CFMX as standard or enterprise packages.

Standard edition gives you the standard CF Server, like you've always used. In its current version, it's a modified version of JRun 4 that drives only the CFMX tag set.

The Enterprise package yields not only the core server, but also a full version of JRun 4, multiple server instances, J2EE application server deployment, event gateways, enterprise server security, sourceless deployment, archive and deployment services, high-performance e-mail delivery, high-performance reporting and document generation, asynchronous processing, and server/instance clustering.

Deployment Strategies
When deploying a CFMX to Crystal Enterprise integration, I recommend seriously evaluating the needs of both environments. A Performance Analysis and Tuning engagement (PA&T) from Macromedia would be a good idea. The reason I recommend this is that integration will appear to stress your server.

The stress that you will see will be in relation to the communication between the two applications. It could be your network, connectivity, virus software, firewalls, a few other items, and or any combination of the previous. A major reason why people have said previously that it could not be done was due to these issues and not that the applications wouldn't talk to each other.

Actually, in its simplest, they don't really talk to each other. Crystal talks to itself. CFMX grabs the Crystal services and shakes it around and tells it what it's going to do... like a bully. The first key is that everything requires authentication. The second key is to know how to quiz Crystal Enterprise to give it what you want, after it's authenticated.

Agave and Seguaro
The results of this are two application prototypes: Agave and Seguaro. I've only mentioned my development of these prototypes to a handful of people, until now.

Agave was the original prototype that integrated ColdFusion 4.0 to a Crystal Enterprise 8.0 implementation. The goal was to re-create Crystal Enterprise's ePortfolio using ColdFusion. With my development of Agave, I can add/edit/delete users, folders, and groups. I can add users to groups and/or folders. I can modify a user's security in any combination thereof. More important, I can authenticate that user to deploy a report through Crystal Enterprise. Crystal Enterprise then gets to do what it does best: render and deliver the report. I stopped there with Agave; I had new aspirations with what I could do with this success. The testing stretched from CF 4.0 through CFMX 7 into Crystal Enterprise versions 8.0 through 11.0.

Seguaro was originally designed utilizing CFMX 6.0 and, later, 6.1. It's been integrated into Crystal Enterprise versions 8.5 through 11.0. My development of Seguaro was built using a homegrown MVC model. I started using CFCs in the testing and, later, in Web services. My intention was to use Flash to rebuild ePortfolio. Using ColdFusionMX I can back-end a Flash UI. Using Flash data grids and XML connectors (I actually put that stuff I learned at MAX2003 to use), I successfully replicated the same features I had developed in Agave.

There are still many features that have not yet been built. However, some of the functionality that have been built thus far are some functions utilizing Crystal Enterprise's RAS server to provide some ad hoc reporting, report scheduling, and report template manipulation. I have even been able to pull a report deployed by Crystal Enterprise and render it in Flash using FlashPaper (it's not exactly a recommended practice but it can be done).

See Figure 1

These two prototypes (Agave and Seguaro) are now the foundation I use when building most integrations. The reason is, as I consulted to provide this type of service, I learned that each integration is unique. As you all know, everyone has their own ideas about how each application should get implemented. It's amplified when you start integrating existing applications. Everyone has built applications differently. Thus each set of tools that needs to be deployed is deployed on an as-needed basis. The result is that I provide Agave and Seguaro licenses as part of the service I provide.

CFDJ LATEST STORIES . . .
SQL Injection attacks are one of the easiest ways to hack into a website. One recent hack, using a script from verynx.cn, involves injecting sql into a web form that then appends some JavaScript code into fields in a database that then gets executed on the client side when a user views...
Mike Neil is general manager for virtualization strategy in the Windows Server Division at Microsoft. Mike is focused on the delivery of the Windows virtualization technology, including Windows Server 2008 Hyper-V, Microsoft Hyper-V Server and Virtual PC 2007. Mike also directs the tec...
Two of the biggest launches in Rich Internet Application history took place in 2007/2008 when Adobe launched AIR 1.0 in February '08 and Microsoft launched Silverlight (September '07). At the 6th International AJAXWorld RIA Conference & Expo in October SYS-CON Events is delighted to be...
Recursion Software released a private beta version of their Voyager mobile platform, with powerful interoperability for Android, Microsoft .NET and Compact Framework (CF), all Java editions (JME CDC, JSE and JEE), and more than 15 embedded operating systems. The Voyager platform is a p...
2008 is going to be an important year for Rich Internet Applications. Most organizations are delivering or planning to deliver Rich Internet Applications; however, at the same time, most IT managers are facing a dilemma: which Rich Internet Application technology and platform to use? T...
CFDynamics, a ColdFusion web host, has renewed an agreement with SmarterTools that will allow them to pass on immediate value to their customers. When a customers signs up for a dedicated hosting account they will now receive $750 worth of features including SmarterMail, SmarterStats a...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS

ADS BY GOOGLE