Steven Erat's Blog Steven Erat Photography
 
 
Viewing By Category : ColdFusion
 
 

TalkingTree  ColdFusion 9.01 Server Monitoring Enhancements

 

I began this thought as a comment to Adobe CF QA engineer Sagar Ganatra's blog entry describing the new Server Monitor enhancements in ColdFusion 9.01 updater, however, as it grew lengthy I decided my own blog post would be a more appropriate venue.


I'll add that the main reason for why one would want to run the ColdFusion Server Monitor on its own port via the Jetty implementation is that until now requests from the Server Monitor would go through the JRPP request pool, thereby adding additional traffic to the JRun active request pool, but more importantly if the JRun active request pool was queuing then the data refreshes in the Server Monitor would also queue and the Server Monitor may appear to hang as well. By establishing a separate request pool and port for Server Monitor requests in ColdFusion 9.01, the Server Monitor will not encounter a blocking situation as it would do previously.

Any general discussion of the Server Monitor should include the caveat that the use of Profiling, Monitoring, and Memory Tracking are not intended for production use (blanket statement: see comments for more on that). Moreover, if Memory Tracking is enabled in production, perhaps to help diagnose a prod performance problem, that it will only further decrease server performance. On 3 occasions in the last year alone I've helped ColdFusion shops that shot themselves in the foot by doing this. The impact to performance was substantially worse when enabled, and having them disable it immediately alleviated most of the problems, albeit not the problem that initially prompted them to enable the tracking.

Nice enhancements to Server Monitor in the future might include:

  • Persistant Metrics: The ability to persist the Server Monitor data to a database. A restart of CF will clear data as of now. A use case would be for load testing scenarios where the a a variety of metrics need to be quantitatively analyzed, which cannot presently done easily. Ideally, you'd want to know performance metrics at different points into a load test such as during the ramp up, after X minute intervals, and during cool down.

    A second use case would be the ability to produce reports to monitor server health over time, perhaps by providing the ability to generate weekly reports of key data, possibly with green and red arrow indicator to visually identify metrics that have improved or worsened.

  • CF Request Pool Ratios: Add the ability to analyze incoming requests to determine the real time ratio of CF request types such as CF Templates, CFCs, Flash Remoting, and Web Services. When expressed as a percentage, it could used to correctly determine the values to use in the Request Tuning part of the ColdFusion Administrator. Throughout much of my experience I have found that CF shops rarely set the Request Tuning values to an appropriate range, either letting them remain unchanged at the default, or increasing them way out of range (into the hundreds even).
  • Request Tuning Calculator: Provide a real suggested starting point for all Request tuning parameters including the JRun active and queued sizes based on the number of CPUs/cores and processing speeds. Presently, even in CF 901, a server will install with a default set of values that will the same on a small box as it would on a beefy production box. To do this correctly, the total number of instances used to process production load would also have to be incorporated for proper per-instance tuning. Having a Server Monitor Request Tuning Calculator would be a big plus towards helping server admins find the right starting range for their particular hardware.
  • Out of Process Memory Tracking: Since Memory Tracking is known to consume significant resources while tracking (a Heisenberg conundrum?), perhaps Memory Tracking could be done out of process over RMI or similar, akin to the JRockit Mission Control memory analyzer (which I've used for ColdFusion, but interpreting the data is not very intuitive).

 


TalkingTree  Issue with stopping ColdFusion after starting from Builder

 

With the release of ColdFusion Builder there is an option available that provides the ability to start and stop one or more ColdFusion servers from ColdFusion Builder. In fact, you can configure CF Builder to automatically start a CF server when Builder opens, and stop the CF server when Builder closes. The autostart/autostop is convenient for a Development box where you want to minimize resource usage on the system. You can read more about this feature here.

Server Panel in ColdFusion Builder
Server Panel in ColdFusion Builder

Server Settings Panel in ColdFusion Builder showing Auto start/stop for CF Servers
Server Settings Panel in ColdFusion Builder showing Auto start/stop for CF Server

However, if you don't enable the automatic stop/start option, if you ever start ColdFusion server from Builder then close Builder without stopping ColdFusion there, then later you will not be able to stop the ColdFusion server using the standard ColdFusion stop script. I've encountered this on Mac OS X, but since its possible to configure CF Builder to start/stop remote CF servers, it's likely that the problem might occur when using ColdFusion server on Linux or Solaris as well, even though Builder doesn't run on those platforms.

Normally, to stop / start the ColdFusion server from the command line, you would the control script located (typically) at /opt/coldfusion9/bin/coldfusion, such as with ./coldfusion stop. That control script in turn invokes /opt/coldfusion9/runtime/bin/coldfusion9. When calling stop, the control script works by first grepping for any running ColdFusion processes with fgrep, like this: ps -axc | fgrep coldfusion9. If it finds a process listing that matches for the string "coldfusion9" then it stops that process.

Here's what you might see if you try to restart ColdFusion from the command line after it was started but not stopped from Builder:

$ /opt/ColdFusion9/bin/coldfusion restart
Restarting ColdFusion 9...
ColdFusion 9 does not seem to be currently running
Starting ColdFusion 9...
The ColdFusion 9 server is starting up and will be available shortly.
There has been an error starting ColdFusion 9, please check the logs.

The problem of not being able to use that control script to stop ColdFusion server after having started it from Builder arises because of how Builder starts the CF server. Rather than invoking /opt/coldfusion9/runtime/bin/coldfusion9, Builder instead invokes /opt/coldfusion9/runtime/bin/jrun. When the control script tries to grep for the process with a "coldfusion9" string, the control script doesn't find it because Builder invoked runtime/jrun instead of runtime/coldfusion9.

Why the need for runtime/jrun AND runtime/coldfusion9? I have no idea, especially since the files are identical and not symlinked.

$ pwd
/opt/ColdFusion9/runtime/bin
$ diff jrun coldfusion9
$


I logged ColdFusion server bug 82573 for this where I proposed a change to the bin/coldfusion control script. My suggested change was only shown for Mac OS X, but you can easily change it yourself for the Linux or Solaris blocks in a similar way.

If you want to use my suggested fix on your local Mac OS X dev box, then you can refer to the full example control script containing the fix here: http://pastebin.com/Y7r6sDGu.

For brevity, I won't show the whole script in this blog entry. Instead, here's the diff between the backed up original coldfusion control script which I renamed to 'orig.coldfusion' compared to the fixed version 'coldfusion'.

1.   $ diff orig.coldfusion coldfusion
   2.   13a14
   3.   > JRUN_BIN="${CF_DIR}/runtime/bin"
   4.   34c35
   5.   <         $PSCMD | fgrep coldfusion9  > /dev/null 2>&1
   6.   ---
   7.   >         $PSCMD | grep -i $JRUN_BIN | grep -v 'grep' > /dev/null 2>&1
   8.   117c118,119
   9.   <             $PSCMD | fgrep coldfusion9 | awk '{print $1}' | xargs kill -9 > /dev/null 2>&1
   10.   ---
   11.   >           $PSCMD | grep -i $JRUN_BIN  | grep -v 'grep' | awk '{print $1}' | xargs kill -9 > /dev/null 2>&1
   12.   >          
   13.   130,131c132,133
   14.   <               $PSCMD | fgrep coldfusion9 | awk '{print $1}'
   15.   <         fi
   16.   ---
   17.   >                 $PSCMD | grep -i $JRUN_BIN  | grep -v 'grep' | awk '{print $1}'
   18.   >                       fi
   19.   152c154
   20.   <               PSCMD="ps -axc"
   21.   ---
   22.   >               PSCMD="ps -ef"

 


TalkingTree  A ColdFusion Trick for Lost Datasource Password

 

Here's a quick trick if you don't have a datasource password when creating a new datasource but you do have another ColdFusion server with the same datasource.

Imagine you have two production servers running ColdFusion, each one with different datasources running different applications. What if you have a datasource on one server and you need to create that datasource on the second one but can't find (or don't have) the database password?

All recent ColdFusion versions use the same encryption algorithm for encrypting and decrypting passwords for datasources registered in the CF Administrator. This is why you can copy the ColdFusionX/lib/neo-datasources.xml from one ColdFusion 8 server to another ColdFuson 8 server, and the second server will have all the same datasources as the first. This is a quick way to mirror datasources across different ColdFusion servers.

But now, back to the problem where you have different datasources on each CF server, and you cannot copy over the whole datasource config file. If you don't have the database password, you can create a new datasource on the second server but without supplying a password. The datasource will then fail to verify. However, if you examine the datasource config file from the first server you can find the encrypted version of the password. A snippet from the ColdFusion8/lib/neo-datasource.xml file is shown below. Notice the encrypted version of the password in this xml sections:

<var name="timeout">
<number>1200.0</number>
</var>
<var name="password">
<string>RgmrmRQhiQM=</string>
</var>
<var name="update">
<boolean value="true"/>
</var>
<var name="drop">
<boolean value="true"/>
</var>
<var name="pooling">
<boolean value="true"/>
</var>
<var name="url">
<string>
jdbc:seefusion:{jdbc:mysql://localhost:3306/cfcontact?};driver=com.mysql.jdbc.Driver;dsn=cfcontact;
</string>
</var>


In this case the particular datasource has an encrypted version of the password shown as RgmrmRQhiQM=. You could find the datasource of interest in the config file, then find the encrypted version of the password, and copy it to the other neo-datasource.xml config file on the other server. Find the XML node for the failed datasource. It should have no value for the contents of the password field:

<var name="password">
<string></string>
</var>


Then paste the encrypted version of the password in between:

<var name="password">
<string>RgmrmRQhiQM=</string>
</var>


For this to work, the ColdFusion server for where you are pasting the password should be stopped to avoid having ColdFusion overwrite your changes with a copy it already has in memory. Then start ColdFusion after pasting and the datasource will verify.

This can also work between ColdFusion versions. For example, ColdFusion MX 7 used neo-query.xml, and ColdFusion 8 restructured the file into neo-drivers.xml and neo-datasource.xml, but the encryption remained the same. You can copy the encrypted form of the password from a CF7 server and paste it into a CF8 or CF9 datasource config file.

This is a bit of a hack, but it does work.

 


TalkingTree  Starting ColdFusion9 Solr: Using cfsolr in same directory

 

The cfsolr script for Mac, Linux, and Unix is written such that you must be in the ColdFusion9/solr/ directory when running the script. The script refers to the start.jar file without providing the full path.

The problem is that if you are not in the solr/ directory under the ColdFusion root directory, the cfsolr script echos that Solr has been started or stopped, even though it has not.

Since the standard error is redirected to the standard out with "2>&1" the problem is swallowed and the person performing the operation is led to believe that the operation has been carried out as expected.

Here's a snippet from the ColdFusion9/solr/cfsolr script showing that start.jar is referenced without a full path:

SOLRSTART='nohup java $JVMARGS -jar start.jar > $SOLR/logs/start.log 2>&1 &'
SOLRSTOP='nohup java $JVMARGS -jar start.jar --stop > $SOLR/logs/start.log 2>&1'


Looking at the logs, I see that the problem was quietly recorded in a solr log file:

QAs-iMac:logs QA$ pwd
/opt/ColdFusion901/solr/logs
QAs-iMac:logs QA$ cat start.log
Unable to access jarfile start.jar


The script already has a variable defining the Solr directory path:

SOLR="/opt/ColdFusion9/solr"


To fix the bug, prefix the reference to start.jar with ${SOLR}/start.jar like this:

SOLRSTART='nohup java $JVMARGS -jar ${SOLR}/start.jar > $SOLR/logs/start.log 2>&1 &'
SOLRSTOP='nohup java $JVMARGS -jar ${SOLR}/start.jar --stop > $SOLR/logs/start.log 2>&1'


With that fix, the cfsolr script can be called from any directory outside the solr directory.

Here is an examle of how the script falsely echos that the solr server has stopped or started when it has not (determined by grepping for the process):

QAs-iMac:opt QA$ pwd
/opt
QAs-iMac:opt QA$ ./ColdFusion9/bin/coldfusion stop
Stopping ColdFusion 9, please wait
Stopping coldfusion server.stopped
ColdFusion 9 has been stopped
QAs-iMac:opt QA$ ps -ef | grep solr
501 73310 1 0 0:00.25 ?? 0:02.64 /usr/bin/java -XX:+AggressiveOpts -XX:+ScavengeBeforeFullGC -XX:-UseParallelGC -Xmx256m -Dsolr.solr.home=multicore -DSTOP.PORT=8079 -DSTOP.KEY=cfsolrstop -jar start.jar


QAs-iMac:opt QA$ ./ColdFusion9/solr/cfsolr start
Starting ColdFusion Solr Server...
ColdFusion Solr Server is starting up and will be available shortly.
QAs-iMac:opt QA$ ps -ef | grep solr
501 78371 62961 0 0:00.00 ttys000 0:00.00 grep solr
QAs-iMac:opt QA$ ps -ef | grep solr
501 78373 62961 0 0:00.00 ttys000 0:00.00 grep solr
QAs-iMac:opt QA$ ps -ef | grep solr

 


TalkingTree  Adobe LiveCycle DataServices for ColdFusion at CFObjective

 

Allaire's CEO, David OrfaoAfter a decade of working intensely with the ColdFusion server, I'm finally getting the courage to start presenting about it on the conference circuit. As a blogger, tweeter, and contributor to mailing lists I'm very confident helping others solve ColdFusion related problems because I can do that from the quiet comfort of my own desk. However, one of my greatest fears has always been public speaking. I'm the kind of person that feels like I need to know the subject matter cold, so that I can speak from the hip without relying on looking at the slides.


Blackstone Test CDsOver the years, I had some opportunities to present to small groups, and I recall each time feeling the adrenalin surge and my heart pounding. That started with presenting ColdFusion for Unix and Linux as an internal training class at Macromedia. Later, while taking classes at the Harvard Extension School, I was honored to be asked to present to CSCI-253 Developing Web-Based Database Applications. Even more so, I presented twice there in one year. The first time on Building ColdFusion Web Applications with CFEclipse and Dreamweaver, and later on ColdFusion Server Administration


MAX in ActionI've been attending ColdFusion conferences since the days of Allaire DevCon, but had never presented at any of them including MAX. My long time friend in the local ColdFusion Community, Brian Rinaldi, continued to encourage me to present at the local Boston CFUG as a starting point, as well as the new conference that he was organizing, RIA Unleashed, held in Bentley College this past November. The members of the CFUG were kind enough to let me present a draft of a presentation that I was to later give at RIA Unleashed. My presentation topic was Adobe LiveCycle DataServices Data Management for Mere Mortals


ColdFusion 1.5 on Floppy DisksFortunately at RIA Unleashed I was among the very first sessions after the keynote, so there was no time to build up butterflies that morning. If beforehand you would have told me that among the audience front row would be Ben Nadel, Simon Free, and Ray Camden with Tom Jordahl tucked way in the back then I surely would have freaked out. But they were both kind enough to chat with me before hand and even lend some technical assistance getting setup with the A/V, so that really put me at ease. With a firm limit of 50 minutes, I pushed all the way through what should have been a 90 minute talk, all the while trying to remember to speak clearly and loudly. The talk went off pretty much without a hitch as I found myself completely focused on the technical content and not at all worrying about the large room filled with people in front of me. I was delighted at the end when Tom complemented me on talk, which to me was the ultimate satisfaction.


First Unix machine to run ColdFusionI chose LCDS for ColdFusion as a topic because while I was a QA Engineer on the ColdFusion team at Adobe, I was paired with Tom, a Computer Scientist at Adobe who architected the integration between the products. Heck, Tom architected much of ColdFusion itself, and was in fact the original engineer to have ported ColdFusion to run on Unix and Linux back in the day. Tom is a font of information, and I cut my teeth on the feature under his guidance, which was then known as Flex Data Services and later renamed under the LiveCycle brand. I spent many days last summer and fall revisiting all the LCDS documentation again to ensure the quality of my presentation and to mentally prepare me for the upcoming conference.


ColdFusion Team, BangaloreWIth my first conference under my belt, I decided to throw my hat into the ring for the ultimate ColdFusion experience, CFObjective, which is promoted as The Only Enterprise ColdFusion Conference. I'm excited to announce that I have been selected to be a speaker at the conference, which runs from April 22-24th in Minneapolis, Minnesota. The conference is divided into three tracks for technologies related to ColdFusion. I'll be speaking the last day in the Flex track, once again on the topic of LiveCycle DataServices for ColdFusion Developers. Specifically I'll be talking about the prime feature of LCDS, the Data Management capabilities. With any luck I'll be updating my presentation to consider the benefits of working with the latest versions of Adobe software. Here's the brief description and the PDF:


Discussions of Adobe's LiveCycle Data Services are often entered with the same trepidation as those of Organic Chemistry or Quantum Mechanics, but with ColdFusion, building Web applications that manage complex data sets doesn't have to be that scary. Data Management is a pillar of LCDS that offers scalable, real-time data synchronization across very large numbers of connected clients with the benefits of conflict resolution and data pagination.  Come learn how to quickly get up to speed with Data Management by letting ColdFusion do the hard work for you.

If you're seriously interested in ColdFusion, then CFObjective is the conference for you. I hope to see you there.


ColdFusion Screams

 


TalkingTree  Is Your ColdFusion Support a Real Turkey?

 

Are you getting half baked help solving complex server problems? Is your global service provider a little off? Sure, maybe its a lot off.

Webapper wants your  feedbag  feedback about what's important to you. Take this survey to let us know what you really want from ColdFusion support, and the first 100 respondents win a copy of SeeFusion Enterprise, a ColdFusion bottleneck analysis tool with all the trimmings.

Webapper's consulting practice is a one-stop shop for all of your ColdFusion support needs. Our service offerings have been developed and honed over many years, and through hundreds upon hundreds of successful engagements, and they deliver a full spectrum of expertise that covers the entire "Web application stack".

Webapper's consulting services practice is a world leader in ColdFusion support expertise—our engineers are all former employees from the consulting, support and engineering teams at Allaire/Macromedia/Adobe.

 


TalkingTree  100th ColdFusion Meetup Today - SeeFusion Giveaway, Too

 

Today is the 100th episode of the Online ColdFusion Meetup Group, a.k.a. CFMeetup, with Adobe speaker Josh Adams on the topic of ColdFusion as the ideal server-side data provider for iPhone applications. The meeting starts online at 12p ET; find out more here.

This special anniversary of the CFMeetup is made possible by Charlie Arehart, a tireless champion of the ColdFusion Community, who has worked very hard for several years now to improve the organization and execution of meetings and has strived to provide a consistent speaker lineup that give contemporary, meaningful presentations on ColdFusion related topics.

As the founder of ColdFusion Meetup, I'm honored to attend today's anniversary event. In 2004, Macromedia provided employees with unlimited Breeze Meeting accounts (now Adobe Connect) after it acquired Presidia, the original makers of the Flash based meeting software. As Breeze became widely used in Macromedia for internal company meetings, it occurred to me that I could make good use of my unlimited account by starting an online presentation series for the ColdFusion community of developers, and so I formed the Online ColdFusion Meetup Group. The first meeting was February 2005 where I convinced several members of the ColdFusion engineering team to take questions about the release of ColdFusion MX 7 from online guests. Participation grew as I attracted speakers on a monthly basis, and it became a consistent series that ran throughout the year. Later, as I moved from ColdFusion Support to the ColdFusion Engineering team working on Scorpio (CF8), Charlie happily took over the reigns to keep the momentum going... and how has he!

Prizes
Now that I'm a software engineer at Webapper Services providing enterprise level ColdFusion consulting, among the special prize giveaways at today's CFMeetup, Webapper will be giving away a 2-server Enterprise license for SeeFusion - retail value of $600!

SeeFusion is a utility for monitoring and troubleshooting ColdFusion application servers. SeeFusion gives you the ability to "see" how your ColdFusion servers are processing requests in real time.

See you today at CFMeetup!

 


TalkingTree  ColdFusion Request Tuning Settings in Depth

 

Undoubtedly, the ColdFusion Administrator settings for Request Tuning are critical to performance of Web applications running in the server. While reading the recent Adobe article on Performance Tuning for ColdFusion Applications I was surprised to find the content on this topic to be a little light. With that in mind, I set out to expand on the topic of the Request Tuning settings.

Foundations of ColdFusion Request Settings

To begin, let’s look at how the ColdFusion settings were configured in earlier versions of application server. With the release of ColdFusion MX 6.0 through versions 6.1 and 7, all editions of the ColdFusion server had one setting for Request Limits. This was referred to as the “Simultaneous Requests” setting. This single setting throttled the number of running requests to be processed concurrently. Should the running pool be fully occupied by requests that are processing but haven’t yet completed, the J2EE server underlying ColdFusion will hold requests in a queued request thread pool that are to be fed to the running request pool.

» Read More » »

 


TalkingTree  Realtime ColdFusion Blog Notifications with Adobe Wave

 

Receive real time notifications for updates on the blog aggregator ColdFusionBloggers.org with Adobe Wave. Just navigate to the ColdFusionBloggers website and click the badge in the lower right for Get alerts with Adobe Wave. Built on Adobe AIR, you can now use Adobe Wave as a single application to receive all your notifications in one place. Adobe Wave runs as a desktop application that sits in a corner of your screen.

The ColdFusion Bloggers website is created and maintained by the ubiquitous, prolific, and super nice guy Ray Camden, ColdFusion Jedi Master. Ray was among the very first to utilize Adobe Wave for the benefit of the ColdFusion community of developers.

» Read More » »

 


TalkingTree  Flex Builder 3: Serial Number is Invalid

 

Last week I applied for the Free Flex Builder 3 For Unemployed Developers so that I could build Flex applications on my new Mac Book Pro, and in two short days I received an email with my new Professional edition license key.

I had been using the trial version of Flex Builder 3, which had been installed from my Mac administrative account. Upon entering the new serial number I was greeted with a contradictory message in the Flex Builder 3 Activation dialog:

Current License: Professional Edition - Educational
Serial Number is Invalid

Flex Builder determined that it was a Professional Edition license key, but then indicated that the number was invalid, complete with a green check mark indicating it was valid. That doesn't make any sense at all.

I suspected that problem was somehow with permissions so I did a bit of Googling to find this recent post on the official Adobe Flex Team Blog which indicated at least that the Flex Builder license should be stored at:

/Library/Application Support/Adobe/Flex/license.properties

However, when I examined my file system I discovered that the Adobe directory did not contain a Flex subdirectory, and therefore no license.properties file.

To test permissions, I then launched Flex Builder with the sudo command to permit Flex Builder to run with root privileges. My assumption was that when I ran Flex Builder with my regular administrative account it was not able to write the license file to disk, and starting FB with sudo should allow it to do so. You can see that when run as sudo, Flex Builder wrote the license file to disk with the user and group of root / admin.

sudo /Applications/Adobe\ Flex\ Builder\ 3/Flex\ Builder.app/Contents/MacOS/FlexBuilder
ls -l /Library/Application\ Support/Adobe/Flex
-rw-r--r-- 1 root admin 114 Apr 8 17:06 license.properties


I was pleased to find out that this was in fact the problem, and Flex Builder now accepted my license and indicated that it was Professional Edition and valid.

 


TalkingTree  Perspective on ColdFusion's Big Question (TM)

 

Just wanted to share a reply I made on GetSatisfaction to provide a historical perspective to the question "What really is the future of ColdFusion?". Before you ask what the future holds, its good to look back to see where ColdFusion has been since its inception in 1995.

CFMX 7 (released Feb 2005) was the release where product adoption saw the first major boost since the "MX" overhaul. Since CFMX 6 (released June 2002, in a down economy) was a re-architecture in Java/J2EE from the earlier CF5 (released May 2001) written in C++, there were few new features introduced and there was an associated learning curve now that the product had a Java foundation.

Problems in the re-architecture surfaced, slowing new adoption of CFMX6, leading to the point release 6.1 (released July 2003) which for the most part corrected all the issues and restored the waning product reputation.

ColdFusion MX 7 was a feature rich release, which attracted many new developers, most of whom had begun to grok CFCs and Java integration. The post 9/11 economy had generally recovered as well, adding to an increase in technology spending.

With most product release cycles, there's a decline in sales or tail at the end, and ColdFusion 8 (released August 2007) saw another major boost in adoption over the tail as it too was a feature rich release that provided solutions to many contemporary problems in Web Dev.

Frankly, IMO, nearly all negative connotations (i.e. "Legacy Software") about the ColdFusion Web Application Server are due to anachronistic experiences with earlier versions of the product in the mid/late 90's. Those opinions seem to be expressed from developers that are less familiar with the revisions and enhancements found in recent ColdFusion versions. (Case in point)

[Added note: The easy learning curve, weak typing, and case-insensitivity in the product are among some factors that may have been conducive to poor programming practices... i.e. give them enough rope to hang themselves, so to speak. Does anyone remember memory corruption from not locking shared scope variables? That whole conundrum went away with CFMX]

Personally, I think ColdFusion is a fantastic product and I love using it. It has an extensive, contemporary tag library on a stable Java base and Web application development time can be short and sweet due to its perpetual focus on RAD.

ColdFusion 9 is well known to be underway and will further address solutions to where technology is going. Furthermore, risk due to proprietary software is mitigated by the release of third party CFML engines which can provide a core of language features if not the full, rich diversity of language found in Adobe's product.

To throw in a plug for myself, I'm currently seeking full time, permanent employment in the greater Boston area. See: Adobe Expert Seeking ColdFusion / Flex Dev or QA

View Steven Erat's profile on LinkedIn

 


TalkingTree  To Flex Camp, and Beyond!

 

A week from today will be the 2nd annual Flex Camp Boston at Bentley University. At a very modest cost, this is a full day event packed with sessions at the intermediate to advanced level given by industry experts. Register for Flex Camp Boston.

For the last year I've been on the Flex SDK team as a Quality Assurance Engineer, and before that I had excellent run of more than 7 years testing and supporting ColdFusion. I know most of the speakers that will be presenting at Flex Camp and can attest to their passion for building the next wave of Rich Internet Applications, so I fully encourage you to attend if you haven't signed up yet to share in the excitement and mingle with your peers.

This will be an unexpected reunion of sorts for me as I suddenly find myself as a customer rather than employee. With the extra time as I seek new employment I'll immerse myself in training with Flex and AIR, and try to produce an application as an online reference to demonstrate as an example. The odd thing about QA'ing a software product is that you are exposed to narrow facets in which you dive very deeply, and don't often get the chance to practice the breadth of the product. My success in ColdFusion QA was largely dependent on the many preceding years where I provided "gold" level support for the product, something which required me to constantly explore and exercise every nook and cranny of the CF app server and language.

My first inclination for a Flex app is to build my own photography business website in Flex to avoid the cost of purchasing one of the reputable but expensive prebuilt websites from places like LiveBooks, BigFolio, or A Photo Folio.

Finally, I'd like to thank everyone from coworkers to customers to local cfug friends for taking a moment to contact me and express their thoughts and show their concern. People have been writing and chatting intensely while offering job tips and advice. As I mentioned on Facebook, I've never before felt the online community to be as tangible and real as I do now. Thank you all, and I hope to see those of you in the area at Flex Camp!

 


TalkingTree  Problems with configuring CF801 on Mac for System Startup

 

Two problems with configuring ColdFusion 8.01 on Mac OS X for startup on system boot when using the the utility {cf_root}/bin/cf-init.sh. The first issue is that cf-init.sh cannot be used again to configure CF for startup on boot after the cf-init.sh script is used to unconfigure the service. The second issue is that for Multiserver configuration the script cf-init.sh cannot be used to unconfigure CF as a startup service and the items under /Library/StartupItems/ColdFusion8Multi must be removed manually. The ColdFusion Engineering team is actively seeking to correct these issues, but I'm posting for your convenience in case you run into this beforehand.

Issue 1 logged as ColdFusion bug 73548
On Mac, running cf-init.sh to install system startup script cannot be done a second time after running cf-init.sh uninstall.

The cf-init.sh function install_mac() permanently moves the file {cf_root}/bin/cf-standalone-startup to /Library/StartupItems/ under the new name ColdFusion8 as shown here:

mv -f $CF_DIR/bin/cf-standalone-startup /Library/StartupItems/ColdFusion8/ColdFusion8

Then the uninstall_mac() function in cf-init.sh permanently removes that file ColdFusion8 as shown here:

rm -rf /Library/StartupItems/ColdFusion8

There are no longer any copies of {cf_root}/bin/cf-standalone-startup under any name on the system, so another attempt to configure ColdFusion to start on System Boot cannot be performed.

More details:

» Read More » »

 


TalkingTree  2008 Codie Awards: Adobe ColdFusion 8, Captivate, & Connect

 

Earlier this year the Software & Information Industry Association (SIIA) announced finalists in the 2008 Codie awards. The SIIA describes itself as "the principal trade association for the software and digital content industry."

Yesterday the winners were announced. As a contributing member of the Adobe ColdFusion 8 QA team, I'm especially proud that ColdFusion 8 won for Best Web Services Solution, a category described as:

Best Web Services Solution
Awards the solution that best connects disparate applications and data across an enterprise or between enterprises using web services standards such as SOAP, XML and WDSL. Includes Web services enabling technologies, infrastructure, middleware, system integration tools, etc.

In addition to comprehensive, across the board regression testing, the specific CF8 features I worked on include testing support for all new RDBMS versions, integrating new JDBC driver versions, LiveCycle Data Services Integration, and CFReport HTML support. I also performed installation testing across J2EE servers such as WebLogic, WebSphere, and JBoss while emphasizing the Linux OS. Currently I'm working on SOAP-based Web Service testing in Flex. Speaking of Linux, Red Hat Enterprise Linux 5 won the Codie award for the Best Open Source Solution.

More information about the SIIA 2008 Codie Awards can be found at InfoWorld

 


TalkingTree  ColdFusion 8.01 64-bit and Supported Linux Distros

 

The ColdFusion 8.01 System Requirements as shown in the detailed platform support matrix [PDF] indicates that support for 64-bit Linux distributions is limited to Red Hat Enterprise Linux 5 and SuSe Linux Enterprise Server 10.1. This fine print appears to often go overlooked, so I just want to broadcast it a little louder here.

I was contacted today by someone reporting installation problems and mentioned glibc and floating point errors. A bit of Googling turned up this Google Group thread and this blog entry. Apparently, glibc 2.5 is required for the 64-bit binaries used in the ColdFusion 8.01 64-bit server, so RHEL4's glibc 2.4 just won't do.

On a related note, the ColdFusion Installation Support page currently has a broken link to receive free installation support by email. I notified the web team about the broken link, and I found that the new way to enter this type of installation support request is by registering your product and completing a form here.

 



» See More Entries in This Category » »



 

 

Calendar

 
Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

Search This Site

 
This is an exact search only

About This Site

 
Adobe Alumni & Community Professional. Expert in ColdFusion, Flex, LCDS, Photoshop, Lightroom. Linux RHCE. Follow Me!. For my photography check out Boston Portrait Photographer.
More about me

Recent Entries

 
ColdFusion 9.01 Server Monito..

Recent Comments

 
Posted By Swagat:
Ben Forta, best-selling ColdFusion author is coming to India this August at India's largest Adobe Flash Platform Conference. Ben Forta will conduct a ...

Posted By Steve:
The updated presentation I gave at CF.Objective() 2010 is available here: [link] At the end of the preso I gave a brief, pre-recorded demo of wri ...

Posted By Brad Munz:
I've come across a OOM problem in HotSpot which looks alot like this: java.lang.OutOfMemoryError: requested 4096000 bytes for GrET in /BUILD_AREA/jdk6 ...

recently played

 

no song is playing

now playing, a plug-in for itunes

Categories

 
RSS Adobe (34)
RSS Bicycling (9)
RSS Blogging (39)
RSS Books (13)
RSS Breeze (13)
RSS CFMX Podcasts (10)
RSS ColdFusion (429)
RSS Computer Technology (51)
RSS Events (26)
RSS Flex (20)
RSS Gadgets (10)
RSS HiTech Industry (16)
RSS Java (25)
RSS Learning (57)
RSS Linux (70)
RSS Mac OS X (22)
RSS Macromedia (27)
RSS Meetup (35)
RSS New England (62)
RSS Odds & Ends (25)
RSS Outdoors (32)
RSS Personal (29)
RSS Photos (111)
RSS Photoshop (29)
RSS Podcasts (18)
RSS Rants (19)
RSS Restaurants (8)
RSS Science (34)
RSS Spain (16)
RSS Travel (42)
RSS Twitter (10)
RSS Video (20)
RSS Webcam (3)
RSS Writing (10)

Blogs I Read

 
Terrence Ryan
Ben Forta
Ray Camden
Kinky Solutions
Dan Vega
Gary Gilbert
Simeon Bateman
Red Hat Blogs
O'Reilly Digital Media
O'Reilly Radar
John Nack
The Strobist
Scott Kelby
Matt Kloskowski
Joe McNally
Digital Photography School
Engadget
Science Blog

RSS

 


Add to Google
Add to My Yahoo!

Aggregated By

 


Aggregated by ColdFusionBlogger.org

Credits and Stuff

 
BlogCFC - Free ColdFusion Powered Blog Software
CJM Group - ColdFusion Website Hosting


 
 
blog | photos | flickr | referers | webcam | stats | about | contact
 
Copyright © 2010 Steven Erat. All rights reserved.
This is a personal weblog. The opinions expressed here represent my own and not those of my employer