Thursday 3 March 2011

Apex Listener Issues

The configuration for my Apex 4.0 environment on my laptop is basically as you see on the front page for the Apex Listener.

I have Google Chrome on the left; my J2EE Container is Glassfish; and I have Oracle 11gR2 on the right, with Apex4.0 installed.

Sometimes I hate to admit it, but I don't do "networking". My Achilles heal is anything starting with "serv".

So when I rebooted my laptop recently and my browser said I couldn't connect to Apex, I thought - "I wonder what part of that horrible black box in the middle has broken?"

System Unavailable? I don't think so, Mr Laptop.

It wasn't really that bad. I pretended it was a development issue and started eliminating factors.
  • My database was up
  • I was about to get into the GlassFish Server Administration console ok (http://localhost:4848/), there didn't seem to be anything out of place.
  • I restarted the server, the TNS listener, the Apex Listener
  • I read through some documentation to look for troubleshooting ideas
  • my apex-config.xml file was present and ok
Then I found myself looking at the username/password combination for APEX_PUBLIC_USER and thought "I wonder if that password has expired..."

Sure enough, all I needed to do was reset the password.
ALTER USER apex_public_user IDENTIFIED BY my_awesome_password;

Problem solved.

I mention this because it could have quite easily bugged me for an hour, and I like to save some people pain. I know there are some out there learning Apex and their deployment is balancing on guesswork from (barely) following Oracle's installation instructions.

In other news, I find myself reading through Oracle's Apex Listener front page, and I don't notice the big red

APEX Listener Release 1.1 is now available

So Apex developers, the Apex Listener Release 1.1 is now available ;-)



Muhammad Sabir said...

Great tip. Do you start glassfish manually or it starts automatically.
Actually I have to start it manually which is very annoying. I tried to implement it as a service and succeeded but this error occurs when service starts and there is no error for a manual start.

hitter69 said...

I saw same problem, but with Oracle HTTP server configuration, and it took some time to figure out that APEX_PUBLIC_USER password has expired. Its good to set up expire password date on that user in very, very distant future.

Mark Lancaster said...

Hi Scott

Permanent solution is to create an unlimited password lifetime profile.

See my post

Scott Wesley said...

@muhammad I start it manually with a script that lives on my desktop. I have a few databases installed, so I may not need it running from time to time. It works for me, I can't be bothered fighting windows unnecessarily.

@hitter69 distant future... that reminded me of reading a book by Phil Plait recently, talking of the universe's "heat death"
I digress...

@mark thanks Mark, creating a profile popped into mind at the time, but then afternoon apathy kicked in. And I just wanted the darn thing to work!