Link to home
Start Free TrialLog in
Avatar of Overthere
Overthere

asked on

Problem vertifying TomCat 6.0 Installation

Hi folks,
 I am trying to install TomCat 6.0 on my local machine (windows 7) in order to install OpenEmm. When I use http://localhost:8080,to verfify installation of Tomcat, it says it can't display the page. I looked in the sever.xml file and tried other ports I saw such as 8005 and 8009 but it still says it can't display the page. What is wrong? thanks!
Avatar of arnold
arnold
Flag of United States of America image

Run netstat -an | find ":8080"
Do you have an entry? If not either you tomcat is installed but is not started in services.
Or your configuration change the port on which it is listening.

Check the config and logs to determine what is going on.
Avatar of Overthere
Overthere

ASKER

I checked in services and do not see any reference to Tomcat/Apache.
I executed the netstat and nothing returned.
How can I check to see what port it might be listening on? I looked in the server.xml file
I understand what I am reading but not why it doesn't show as a service.
I executed the startup.bat in the sub-directory bi, but still no go. I am lost.

This is what it contains:

<Server port="8005" shutdown="SHUTDOWN">

  <!--APR library loader. Documentation at /docs/apr.html -->
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
  <Listener className="org.apache.catalina.core.JasperListener" />
  <!-- Prevent memory leaks due to use of particular java/javax APIs-->
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  <!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <!-- Global JNDI resources
       Documentation at /docs/jndi-resources-howto.html
  -->
  <GlobalNamingResources>
    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users
    -->
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>

  <!-- A "Service" is a collection of one or more "Connectors" that share
       a single "Container" Note:  A "Service" is not itself a "Container",
       so you may not define subcomponents such as "Valves" at this level.
       Documentation at /docs/config/service.html
   -->
  <Service name="Catalina">
 
    <!--The connectors can use a shared executor, you can define one or more named thread pools-->
    <!--
    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
        maxThreads="150" minSpareThreads="4"/>
    -->
   
   
    <!-- A "Connector" represents an endpoint by which requests are received
         and responses are returned. Documentation at :
         Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
         Java AJP  Connector: /docs/config/ajp.html
         APR (HTTP/AJP) Connector: /docs/apr.html
         Define a non-SSL HTTP/1.1 Connector on port 8080
    -->
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <!-- A "Connector" using the shared thread pool-->
    <!--
    <Connector executor="tomcatThreadPool"
               port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    -->          
    <!-- Define a SSL HTTP/1.1 Connector on port 8443
         This connector uses the JSSE configuration, when using APR, the
         connector should be using the OpenSSL style configuration
         described in the APR documentation -->
    <!--
    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
    -->

    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />


    <!-- An Engine represents the entry point (within Catalina) that processes
         every request.  The Engine implementation for Tomcat stand alone
         analyzes the HTTP headers included with the request, and passes them
         on to the appropriate Host (virtual host).
         Documentation at /docs/config/engine.html -->

    <!-- You should set jvmRoute to support load-balancing via AJP ie :
    <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">        
    -->
    <Engine name="Catalina" defaultHost="localhost">

      <!--For clustering, please take a look at documentation at:
          /docs/cluster-howto.html  (simple how to)
          /docs/config/cluster.html (reference documentation) -->
      <!--
      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
      -->        

      <!-- The request dumper valve dumps useful debugging information about
           the request and response data received and sent by Tomcat.
           Documentation at: /docs/config/valve.html -->
      <!--
      <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
      -->

      <!-- This Realm uses the UserDatabase configured in the global JNDI
           resources under the key "UserDatabase".  Any edits
           that are performed against this UserDatabase are immediately
           available for use by the Realm.  -->
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>

      <!-- Define the default virtual host
           Note: XML Schema validation will not work with Xerces 2.2.
       -->
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
               prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
        -->

      </Host>
    </Engine>
  </Service>
</Server>
Connector points to 8080 where did you get the install package? You should have either a Tomcat or Apache service that needs to start.
Check the instructions for install.
There should be a start.bat file.

The new http://tomcat.apache.org/tomcat-7.0-doc/setup.html setup may help.
Shame on me. I had several times executed the startup.bat but it blurred by me until I executed it from the
command prompt instead dbl-clicking on it.
     Yes, in the /bin directory, there is a startup.bat. After executing it from the cmd prompt,I was able to capture a error message. The error message is: "Neither the Java_home nor the JRE_home environment is defined. At least one of these environment variable is needed to run this program."
    The  problem is definitely not having the Java_home nor the JRE_home environment defined (according to what I understand).  I need to the use the Java_home location. Which in my case would be: c:\program files(x86)\Java\jdk1.8.0_45
  I read the link you provided and it helped but further confused me. Am I suppose to set the path in the server.xml file and if so where? I see no entry for it. Or am I suppose download the binary distribution from Apache? I believe I have already done so since I used the win.zip version (Apache-tomcat-7.0.62-windows-x86 zip file.
    So I should be good on that one, correct?  The problem remains is where and the syntax structure of setting the java_home environment. I just want to have Tomcat running as a service since I will be doing other work which will involve using Tomcat. I just want to Tomcat up and running... Any help appreciated...thank you...
No it needs to be set when you run the startup.bat or it can be setup/defined within the startup.bat.

Often. When you install, jdk,joe it registers the java_HOME

One time you have Java 8 while your tomcat version is a bit older.
I understand what you write. The software that I will be using requires to have Tomcat running as a Windows service.
 Additionally, I need to set the Java home location within the startup.bat for Tomcat.
That's my problem. It just goes over my head as the syntax in the startup.bat for Tomcat. :((
ASKER CERTIFIED SOLUTION
Avatar of arnold
arnold
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Thank you as you pointed me in the right direction. Here is actually what was happening:

  After I make the suggested changes and execute the startup.bat , I still received the same error.
  Re- verifying  my paths,  I realize the java home path was C:\Program Files (x86)\Java\JDK1.8.0_45 and NOT what I had posted:  c:\program files (x86)\java\jdk1.8.5.0_45\.
  So, I corrected it and still same error. THEN I realized I had Apache-Tomcat-6.0.44 and Apache-Tomcat-7.0.62 loaded on my computer. I realized that even though I was executing the Tomcat 7 startup batch (in bin directory) , it  was grabbing the location of Tomcat 6 and setting the variable for catalina_home to the path of  6.0 version which it's startup batch did not have the Java_Home variable set!
  Once I deleted Tomcat 6 (since software to be installed wants version 6 but probably will run fine on 7), Tomcat fired up and I have the Java Icon on my system tray.
  I also executed a netstat -an | find ":8080" and received the following:
     T.C.P. 0.0.0.0:8080   0.0.0.0 LISTENING

which is good. However, when I try to do a www.localhost:8080 in I.E., it says page can not be displayed.
or do I see it as a Window Service. I am not sure how this will affect the software that uses Tomcat, but I am going to find out shortly!
Thank you so much for your help. :))
Thank you again... solved and pointed in the right direction...
While you have tomcat running, what page if any does it load when you go to http://localhost:8080 if it loads nothing, it might be returning an error to the browser and your IE setup is to display friendly errors.
okay, I will check that aspect. of I.E.
 I have also posted question concerning running tomcat as a widow service.
I will let you know what happens in a bit....
you could add the sc create "Tomcat" binPath="c:\program fiels (x86)\tomcat\bin/startup.bat" start=delayed-auto obj=here you should not use localsystem. Usually it should run as a limited user, are you testing this internally.

the difficulty I think is that the .bat file might not be condusive to run as a service.