Flex Remoting and WebORB Mysterious Error Messages

If you work with Flex remoting and WebORB, you are probably familiar with the following errors:

  • NetConnection.Call.Failed: HTTP: Status 500
  • Channel Disconnected

You may have tried directing your browser to weborb.php only to get this message: “WebORB v3.5.0 Fatal error: Call to a member function getServiceURI()”

The getServiceURI message is actually a red herring error message.  This simply occurs because weborb.php is expecting the raw headers to contain Flash remoting AMF message data.  Your browser is just making a normal HTTP GET and doesn’t know anything about AMF.   So weborb.php winds up with a null object on which it tries to call getServiceURI().  I wouldn’t be surprised to see a future release of WebORB that catches this error, even though it isn’t the purpose of this particular file to run inside a browser.

Read more

Introducing iTunes De-Dupulator for Windows

iTunes De-Dupulator

>> Download iTunes De-Dupulator 1.0 <<

WARNING: Use this software at your own risk. I recommend backing up your iTunes library file before using this app just in case.  You have been warned!

This is a quick app I threw together this afternoon to help us remove duplicates from our iTunes library at the office.  We’ve all added our own music collection to the office machine and over time it’s become loaded with duplicates.

Read more

FlipCard 2.0 With Source Released

Last year I posted a FlipCard component for Flex that allows you to place UI Controls on the front and back of a 3D “card” that can be flipped by the user.  It gives the user the visual effect that there are settings or options on the backside of the page, form, etc.

FlipCard ScreenShot

Read more

Insidious Bugs or: How I Stopped Worrying and Learned to Love Exceptions

“Insidious bug” is a term that I use to refers to software defects that are invisible to the end user, but are quietly causing problems behind the scenes.  These errors often occur when a normal bug was either trapped and ignored, or fixed by treating the symptom and not the root cause.  This is also known as bug masking.  I refer to them as insidious when the masked bug is additionally corrupting data.

In my opinion this the most severe type of software bug – far worse than a fatal crash. Users may put in countless hours, weeks, months of data entry before a problem with the data is discovered.  Discovering the cause of insidious bugs can be extremely difficult because there are no indications that the code is failing.  In some cases data may not be recoverable because it was never saved correctly.  Corrupt data can directly cause any number of problems including financial loss, lawsuits, etc.

Keep reading for my personal thoughts on causes and solutions…

Read more

The Info.plist for application at (null) specifies a CFBundleExecutable of (null)

When debugging an iPhone app on the device you may get the error “The Info.plist for application at (null) specifies a CFBundleExecutable of (null), which does not exist”

This can happen if you have dashes in your “product name,” or if the “product name” doesn’t match in your main project info, target info and possibly the name of your target.  The compiler seems to use dashes as a delimiter in the link map and so it causes null errors.

Return top