Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Usenet -> c.d.o.misc -> Re: How to have OracleOraHome92TNSListener not conflict with Tomcat?

Re: How to have OracleOraHome92TNSListener not conflict with Tomcat?

From: Niall Litchfield <>
Date: Wed, 28 Jul 2004 22:01:49 +0100
Message-ID: <41081416$0$6440$>

"Developer" <> wrote in message
> X-No-Archive: yes
> Hi Folks,
> I'm not an administrator. I bluffed my way thru the Oracle 9i
> on my PC last year (Using windows 2000).
> I have 2 Windows services started (configured to start on startup)
> OracleOraHome92TNSListener and my own instance

You might consider wruting a little command script to just start and stop them when you want

net start ....


net stop ...
being the commands that help.

> My OracleOraHome92TNSListener has that address in use. I stopped the
> OracleOraHome92TNSListener service, restarted Tomcat and it worked.
> Ironically, I was
> able to (with Tomcat already running) restart the
> servicer
> and it started up without any problems. I was able to go into SQLPlus and
> do my thing.
> I was able to hit http://localhost:8080 and see the Tomcat page come up so
> was convinced
> Tomcat and Oracle were using different ports.
> Everything looked ok. So I shut down Tomcat and type in
> http://localhost:8080, This time
> the Oracle admin page came up :-( Could not restart Tomcat without
> shutting down the
> OracleOraHome92TNSListener. Apparently, I need OracleOraHome92TNSListener
> running at all
> times if I want to connect to my database.
> Is there a way to configure OracleOraHome92TNSListener to not use
> http://localhost:8080
> so that I can have that reserved for Tomcat?
> By the way (Oracle novice here), what is the purpose of
> OracleOraHome92TNSListener ? I obviously need to have it
> running if I want to be able to connect to my database.
> My goal is to do some experimenting with Struts (using Tomcat) and be able
> to have the struts application access
> the Oracle database. This is why I need to have both the Tomcat instance
> and the Oracle service (and
> OracleOraHome92TNSListener) running at the same time.

I'll try and address them in some sort of sensible order.

the Oracle Listener (your OracleOraHome92Listener) service has, as its main goal in life, to listen (hence the name) for requests for a connection to some sort of service - usually but not always a database - on some protocols. When it gets a request it acts as a broker and sets up the connection between the client and the service. it has a configuration file (listener.ora) that tells it what it knows about and what protocols to listen on. Database services can also tell the listener about themselves and their preferences at startup.

Database clients typically use some sort of name resolution to request a particular service from a particular listener. Most commonly this is done through a file named tnsnames.ora.

when the client and the database are put in touch with one another through the listener they usually negotiate their own terms and the listener goes back to listening. This makes it really quite scalable.

So the answer to your question is this. You need to see what the listener is listening for on 8080 and either assign it another port if you want it, or disable it. My best guess is that in fact the database itself is telling the listener that it wants to use 8080 for XML based requests to XDB. If memory serves this is what it does by default. If so you need to look at changing the relevant server parameters.

to eliminate the guess work, when the listener is running and at a command prompt type lsnrctl status. this will tell you what the listener is configured for.

Niall Litchfield
Oracle DBA
Received on Wed Jul 28 2004 - 16:01:49 CDT

Original text of this message