Monday, February 11, 2008

Need to login to Discoverer twice

Do you have to log into Discoverer twice in order to make it work? If so, read on because I have a possible solution for you.



When you launch either Discoverer Viewer or Plus, as shown above, and enter your credentials into the dialog box, does Discoverer respond with something like this?

Presumably what happens next is that you log in again using exactly the same credentials and now it works. Yes?

If so, the problem lies in the way that your server name has been defined inside the HTTPD.CONF file which you will find in the Apache configuration folder on your Application Server:

$ORACLE_HOME\Apache\Apache\Conf

You will need to edit HTTPD.CONF and search for a line that begins with ServerName. It will more than likely look something like this:

ServerName servername

For example:

ServerName asclaptop4

Notice how there is no domain name associated with the server. This is the problem, and is causing the system to incorrectly convert the URL inside OC4J.

Solution

There are two solutions; a temporary solution and a permanent solution. Both are outlined below:

Temporary Solution:

The temporary solution is to make sure that you only call Discoverer using a fully qualified domain name in the URL. You do that like this:

http://servername.domain.com:port/discoverer/viewer or

http://servername.domain.com:port/discoverer/plus

Permanent Solution:

The permanent solution is to change the ServerName so as to make it a fully qualified domain name, as shown in the example below, and then restart the application server. You now should be able to log in just once.

ServerName servername.domain.com

For example:

ServerName asclaptop4.learndiscoverer.com

By the way, using the command line, here is how to stop, start and check whether Discoverer is up and running:

To Start Discoverer, use this workflow:

  1. Navigate to the $ORACLE_HOME\opmn\bin folder
  2. Execute this command: opmnctl startall

To check whether Discoverer is up and running, use this workflow:

  1. Navigate to the $ORACLE_HOME\opmn\bin folder
  2. Execute this command: opmnctl status
  3. The system should respond with something like this:



Note: It is perfectly ok for DSA, LogLoaderd and dcm-daemon to have a status of Down so long as all of the other components show Alive.

To stop all of the Discoverer components, use this workflow:

  1. Navigate to the $ORACLE_HOME\opmn\bin folder
  2. Execute this command: opmnctl stopall

Do you have another solution for this issue? If so, either drop me a line or post a comment to this posting.

Followers