Mac: Fixing blank user interfaces in Java window

Note: This post is a bit long because I like telling stories about stuff. If you just want to skip down to the solution, scroll to the end. This article is another one of my “how I fixed a problem with my Mac” articles. Unofficial tech support, I suppose, and largely because the Apple Support Discussion Boards aren’t searchable through Google. Let me tell you (again): if you have a problem with your Mac, Google is not the Search engine to use for fixing Mac problems. Go to Apple.com and click through to the Support area’s Discussion boards. Use the search engine there to find the solution to your problem!

A little while ago, I downloaded a trial application called Steelray Project Viewer, a nifty cross-platform application for opening and searching through Microsoft Project files. This is an important piece of software to me, since many project managers use MS Project, and since many project managers also have some sort of role in telling me what to do.

I would download the software and run the installer program on my Mac. I now have an Intel-based MacBook Pro, so I know my system is current, even if it doesn’t always, ahem, work.

The installation program would run without user interface elements. I couldn’t see any buttons or radio buttons until I actually clicked on them. Anyone in usability design (or for that matter, any software user) can understand how frustrating and Bad this might be. When I actually had the software running, the Open File screen would open, and I’d select a .mpp file. I can’t remember what happened at that point, but it essentially didn’t work.

Steelray UI Example

About five days into my evaluation, Steelray support emailed to ask how it was going. They’re big on the pre-sales support, let me tell ya. I emailed back with “the installer didn’t work, the program didn’t work… I guess you could say it’s not going too well.” They apologized and tried to walk me through fixing the problem, even opening a support ticket, but I went out of town, and then the trial period timed out (and yes, when trying to enter a license key into the software, the window was again blank).

I was ready to give up, but this really is considered one of the best solutions for viewing MS Project files if you don’t have or want MS Project. I installed the Windows version with a new trial license, just to see if it would work. It worked fine in Windows (where it appears to be native), but not in Mac.

However, something the support rep said when we were first troubleshooting kept coming back to me. “Do you have Java 5 installed?” Hell if I know. Java on the Mac is a real piece of work. It’s supported natively, but then there’s a J2SE kit you can get, or a developer kit or…. who the hell knows. And Java isn’t always backwards-compatible. The Sun/Java documentation is too complex to decide which version of Java one has, versus which one you need. The Apple documentation is needlessly simplistic– “you have Java 1.4.2– it comes with your Mac!” with no explanation of how to find it and make sure it’s working.

I found in my Applications/Utilities folder a “Java” folder with “J2E 5.” Huh– maybe I do have Java 5 after all. OK. I found the Java Preferences application. I launched it.

Java Preferences UI Error

Window with no UI elements. Hmmm…. this looks familiar.

Well, you all know what I do when I find something that I can consistently identify as a problem on my Mac, right? Off to the Mac boards! There, I searched for “Java blank window” and found many entries, most of them having nothing to do with Java. But then, finally, I found this gem.

So, to troubleshoot this problem, if you’re having a blank window (usually with clickable user interface elements) in Steelray or any other Java application:
1. In your Applications/Utilities folder, open the Java folder.
2. Launch Java Preferences.
3. If the window’s blank, close the application (cmd-Q, or the menu bar should work.)
4. Still in the Applications/Utilities folder, launch Terminal. You should get a window with a command prompt.
5. Type the following:

cd Library/Preferences
ls .GlobalPreferences.plist
You should get a list of one item, “.GlobalPreferences.plist”

6. Now rename the file so Java can’t find it. Type:

mv .GlobalPreferences.plist .GlobalPreferences.plist.old

7. Relaunch Java Preferences. The window should not be blank.

If the window is blank, you can rename the .GlobalPreferences.plist.old back to .GlobalPreferences.plist. You’ll be back where you started, sure, but at least you won’t lose whatever important stuff is on that corrupted file.

This resolved my issue, and I hope it fixes yours, too!

Update (6/11/07): After I did this, I discovered that I could no longer press the TAB key to navigate between form fields in web pages, or between buttons in dialogue boxes. It turns out, this is an accessibility option called Full Keyboard Access (it’s in the System Preferences under “Keyboard and Mouse”), which I needed to enable using a keyboard combination. The combination is Control+F7 to toggle this on or off (on the laptop keyboard, it’s function+ctrl+F7).

Update (6/15/07): Fixed the typo in the instructions, and added a screen shot for the User Interface issues.

5 thoughts on “Mac: Fixing blank user interfaces in Java window

  1. what is the java code for fixing a frame or how to arrange components in a frame according to our requirement..

  2. Danish¨: Unfortunately, this article does not help with Java code to fix frames. Instead, it helps people with Macintosh computers if the computer cannot use Java correctly.

  3. OMG! It works, on my eMac. (Tiger) Yes!

    I just know that a crapped limewire install did it. Had not been able to use java for some time.

Comments are closed.