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:
- Navigate to the $ORACLE_HOME\opmn\bin folder
- Execute this command: opmnctl startall
To check whether Discoverer is up and running, use this workflow:
- Navigate to the $ORACLE_HOME\opmn\bin folder
- Execute this command: opmnctl status
- 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:
- Navigate to the $ORACLE_HOME\opmn\bin folder
- 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.