This section covers basic installation and configuration of Tomcat, Java JDK and the TDS for a local test server:
manager
ApplicationNo prior knowledge of Tomcat, Java, or the TDS needed.
Users of GCJ and OS-provided packages (linux) for Java and/or Tomcat may want to reference the THREDDS mailing list for installation help.
While there are different distributors of Java and servlet containers, Unidata develops, uses and tests the THREDDS Data Server using Oracle Java and the Apache Tomcat servlet container.
At the time of this workshop, that is version Java SE 8u51. We will be using the Linux x64-bit tar.gz file:
jdk-8u51-linux-x64.tar.gz
Copy the binary tar.gz file into the installation directory (/usr/local/tds/
in this example):
$ pwd /usr/local/tds $ cp Downloads/jdk-8u51-linux-x64.tar.gz . $ ls -l drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Desktop drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Documents drwxr-xr-x 2 tds workshop 4096 Jul 22 17:29 Downloads -rw-r--r-- 1 tds workshop 96316511 Jul 15 09:30 jdk-8u51-linux-x64.tar.gz drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Music drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Pictures drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Public drwxr-xr-x 3 tds workshop 4096 Jul 15 10:45 tdsMonitor drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Templates -rwxrwxr-x 1 tds workshop 27866303 Jul 15 10:02 toolsUI-4.3.18.jar drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Videos
Unpack the archive file:
$ tar zxvf jdk-8u51-linux-x64.tar.gz
This will extract the JDK in the installation directory:
$ ls -l drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Desktop drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Documents drwxr-xr-x 2 tds workshop 4096 Jul 23 14:40 Downloads drwxr-xr-x 8 tds workshop 4096 Jun 5 22:07 jdk1.8u51 -rw-r--r-- 1 tds workshop 96316511 Jul 15 09:30 jdk-8u51-linux-x64.tar.gz drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Music drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Pictures drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Public drwxr-xr-x 3 tds workshop 4096 Jul 15 10:45 tdsMonitor drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Templates -rwxrwxr-x 1 tds workshop 27866303 Jul 15 10:02 toolsUI-4.3.18.jar drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Videos
Depending on your OS you may need install either the 32-bit or 64-bit version of the JDK. But, we really, really, really recommend you use a 64-bit OS if you're planning to run the THREDDS Data Server.
For more information about installing Tomcat on Windows OS, see the Tomcat setup guide for installation on different platforms.
At the time of this workshop, that is version 8.0.24. We will be using the binary tar.gz file:
apache-tomcat-8.0.24.tar.gz
Copy the binary tar.gz file into the installation directory (/usr/local/tds/
in this example):
$ pwd /usr/local/tds $ ls -l -rw-r--r-- 1 tds workshop 7955948 Jul 15 09:35 apache-tomcat-8.0.24.tar.gz drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Desktop drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Documents drwxr-xr-x 2 tds workshop 4096 Jul 23 14:40 Downloads drwxr-xr-x 8 tds workshop 4096 Jun 5 22:07 jdk1.8u51 -rw-r--r-- 1 tds workshop 96316511 Jul 15 09:30 jdk-8u51-linux-x64.tar.gz drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Music drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Pictures drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Public drwxr-xr-x 3 tds workshop 4096 Jul 15 10:45 tdsMonitor drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Templates -rwxrwxr-x 1 tds workshop 27866303 Jul 15 10:02 toolsUI-4.3.18.jar drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Videos
Unpack the archive file:
$ tar xvzf apache-tomcat-8.0.24.tar.gz
This will create a Tomcat directory:
$ ls -l drwxr-xr-x 9 tds workshop 4096 Jul 15 09:37 apache-tomcat-8.0.24 -rw-r--r-- 1 tds workshop 7955948 Jul 15 09:35 apache-tomcat-8.0.24.tar.gz drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Desktop drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Documents drwxr-xr-x 2 tds workshop 4096 Jul 23 14:40 Downloads drwxr-xr-x 8 tds workshop 4096 Jun 5 22:07 jdk1.8u51 -rw-r--r-- 1 tds workshop 96316511 Jul 15 09:30 jdk-8u51-linux-x64.tar.gz drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Music drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Pictures drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Public drwxr-xr-x 3 tds workshop 4096 Jul 15 10:45 tdsMonitor drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Templates -rwxrwxr-x 1 tds workshop 27866303 Jul 15 10:02 toolsUI-4.3.18.jar drwxr-xr-x 2 tds workshop 4096 Jul 15 10:33 Videos
${tomcat_home}
.Move into ${tomcat_home}
and do a long listing:
$ cd apache-tomcat-8.0.24 $ ls -l drwxr-xr-x 2 tds workshop 4096 Jul 15 09:37 bin drwxr-xr-x 2 tds workshop 4096 Jul 2 01:59 conf drwxr-xr-x 2 tds workshop 4096 Jul 15 09:37 lib -rw-r--r-- 1 tds workshop 56812 Jul 2 01:59 LICENSE drwxr-xr-x 2 tds workshop 4096 Jul 2 01:57 logs -rw-r--r-- 1 tds workshop 1192 Jul 2 01:59 NOTICE -rw-r--r-- 1 tds workshop 8826 Jul 2 01:59 RELEASE-NOTES -rw-r--r-- 1 tds workshop 16262 Jul 2 01:59 RUNNING.txt drwxr-xr-x 2 tds workshop 4096 Jul 15 09:37 temp drwxr-xr-x 7 tds workshop 4096 Jul 2 01:59 webapps drwxr-xr-x 2 tds workshop 4096 Jul 2 01:57 work
bin/
startup.sh
, shutdown.sh
and other scripts/programs.*.sh files
(for Unix systems) are functional duplicates of the *.bat
files (for Windows systems).conf/
server.xml
and tomcat-users.xml
to adjust logging, authentication and access control, enable SSL, etc.webapps/
manager
application that comes with Tomcat during this workshop.logs/
catalina.out
, catalina.yyyy-mm-dd.log
and localhost_access_log.yyyy-mm-dd.log
files by the end of this workshop.
Run the startup.sh
script in the Tomcat bin/
directory:
$ pwd /usr/local/tds/apache-tomcat-8.0.24 $ bin/startup.sh
Look and see if you have a Tomcat process running:
$ ps -ef | grep tomcat tds 21912 1 29 09:39 pts/1 00:00:02 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tds/apache-tomcat-8.0.24/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/tds/apache-tomcat-8.0.24/endorsed -classpath /usr/local/tds/apache-tomcat-8.0.24/bin/bootstrap.jar:/usr/local/tds/apache-tomcat-8.0.24/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tds/apache-tomcat-8.0.24 -Dcatalina.home=/usr/local/tds/apache-tomcat-8.0.24 -Djava.io.tmpdir=/usr/local/tds/apache-tomcat-8.0.24/temp org.apache.catalina.startup.Bootstrap start tds 21933 21675 0 09:39 pts/1 00:00:00 grep tomcat
Open a new browser window/tab and go to http://localhost:8080/ to verify Tomcat is running:
Run the shutdown.sh
script in the Tomcat bin/
directory:
$ bin/shutdown.sh
Which Java is Tomcat currently using? (Hint: what was sent to STDOUT
when running the startup.sh
and shutdown.sh
?)
logs
for clues about why Tomcat failed to start or stop.catalina.out
.$JAVA_HOME
, $JAVA_OPTS
, $CATALINA_BASE
, and $CONTENT_ROOT
If you're running Tomcat on an instance of Windows OS, you will want to create a setenv.bat
file.
We are going to create a file called setenv.sh
in the Tomcat bin/
directory to:
$JAVA_HOME
and $CATALINA_BASE
) during startup and shutdown;$JAVA_OPTS
; and$JAVA_OPTS
to enable more advanced services we will be learning about later on in this workshop.
setenv.sh
file.Using your favorite text editor (gedit, vi, emacs, etc.), create a new file called setenv.sh
in the Tomcat bin/
directory:
$ pwd /usr/local/tds/apache-tomcat-8.0.24 $ cd bin $ vi setenv.sh
Add the following information and save your setenv.sh
file:
#!/bin/sh # # ENVARS for Tomcat # export CATALINA_HOME="/usr/local/tomcat" export CATALINA_BASE="/usr/local/tomcat" export JAVA_HOME="/usr" # TDS specific ENVARS # # Define where the TDS content directory will live # THIS IS CRITICAL and there is NO DEFAULT - the # TDS will not start without this. # CONTENT_ROOT=-Dtds.content.root.path=/usr/local/tomcat/content # set java prefs related variables (used by the wms service, for example) JAVA_PREFS_ROOTS="-Djava.util.prefs.systemRoot=$CATALINA_HOME/content/thredds/javaUtilPrefs \ -Djava.util.prefs.userRoot=$CATALINA_HOME/content/thredds/javaUtilPrefs" # # Some commonly used JAVA_OPTS settings: # NORMAL="-d64 -Xmx4096m -Xms512m -server -ea" HEAP_DUMP="-XX:+HeapDumpOnOutOfMemoryError" HEADLESS="-Djava.awt.headless=true" # # Standard setup. # JAVA_OPTS="$CONTENT_ROOT $NORMAL $MAX_PERM_GEN $HEAP_DUMP $HEADLESS $JAVA_PREFS_ROOTS" export JAVA_OPTS
Whenever possible, Unidata recommends -Xmx4096m
(or more) for 64-bit systems.
The parameters we pass to $JAVA_OPTS
:
-Xms
is the initial and minimum allocated memory of the JVM (for performance).-Xmx
the maximum allocated memory of the JVM (for performance).-server
tells the Hostspot compiler to run the JVM in "server" mode (for performance).-Djava.awt.headless=true
is needed to prevent graphics rendering code from assuming a graphics console exists. Without this, WMS code
will crash the server in some circumstances.
-Djava.util.prefs.systemRoot=$CATALINA_BASE/content/thredds/javaUtilPrefs
allows the
java.util.prefs of the TDS WMS to write system preferences
to a location that is writable by the Tomcat user.
You will learn more about the TDS Web Map Service (WMS) later on in this tutorial.
Restart Tomcat and examine the output generated to the terminal window by the startup script:
$ ./startup.sh Using CATALINA_BASE: /usr/local/tds/apache-tomcat-8.0.24 Using CATALINA_HOME: /usr/local/tds/apache-tomcat-8.0.24 Using CATALINA_TMPDIR: /usr/local/tds/apache-tomcat-8.0.24/temp Using JRE_HOME: /usr/local/tds/jdk1.8u51 Using CLASSPATH: /usr/local/tds/apache-tomcat-8.0.24/bin/bootstrap.jar:/usr/local/tds/apache-tomcat-8.0.24/bin/tomcat-juli.jar
Did you notice any difference in the what is being reported to STDOUT
during startup?
Take a look at the running Tomcat process to see the new $JAVA_OPTS
settings:
$ ps -ef | grep tomcat tds 22007 1 9 09:44 pts/1 00:00:02 /usr/local/tds/jdk1.8u51/bin/java -Djava.util.logging.config.file=/usr/local/tds/apache-tomcat-8.0.24/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Xmx4096m -Xms512m -server -Djava.awt.headless=true -Djava.util.prefs.systemRoot=/usr/local/tds/apache-tomcat-8.0.24/content/thredds/javaUtilPrefs -Djava.endorsed.dirs=/usr/local/tds/apache-tomcat-8.0.24/endorsed -classpath /usr/local/tds/apache-tomcat-8.0.24/bin/bootstrap.jar:/usr/local/tds/apache-tomcat-8.0.24/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tds/apache-tomcat-8.0.24 -Dcatalina.home=/usr/local/tds/apache-tomcat-8.0.24 -Djava.io.tmpdir=/usr/local/tds/apache-tomcat-8.0.24/temp org.apache.catalina.startup.Bootstrap start tds 22030 21675 0 09:44 pts/1 00:00:00 grep tomcat
For more information on the environment variable prerequisites used by Tomcat, consult ${tomcat_home}/bin/catalina.sh
(or catalina.bat
)
file.
What allows us to create the setenv.sh
file and have its contents read? (Hint: have a look at the catalina.sh
file in the
Tomcat bin/
directory at lines 24 and 133).
m
' in your -Xms
and -Xmx
settings.catalina.out
:
Error occurred during initialization of VM Could not reserve enough space for object heap
setenv.sh
file, it will be reported to
catalina.out
:
Error occurred during initialization of VM Incompatible minimum and maximum heap sizes specified
catalina.out
:May 25, 2010 6:28:22 PM java.util.prefs.FileSystemPreferences syncWorld WARNING: Couldn't flush system prefs: java.util.prefs.BackingStoreException: /etc/.java/.systemPrefs/org create failed.
You will need to set the
java.util.prefs.systemRoot
system property
in $JAVA_OPTS
to a location that is writable by the user that Tomcat, e.g.:
#!/bin/sh # # ENVARS for Tomcat and TDS environment # JAVA_HOME="/usr/local/tds/jdk1.8u51" export JAVA_HOME JAVA_OPTS="-Xmx4096m -Xms512m -server -Djava.awt.headless=true -Djava.util.prefs.systemRoot=$CATALINA_BASE/content/thredds/javaUtilPrefs" export JAVA_OPTS CATALINA_BASE="/usr/local/tds/apache-tomcat-8.0.24" export CATALINA_BASE
logs/
logs/
directory.Move into the logs/
directory to see the type of information being logged:
$ pwd /usr/local/tds/apache-tomcat-8.0.24/webapps $ cd ../logs $ ls -l -rw-r--r-- 1 tds workshop 5637 Jul 15 09:51 catalina.2013-07-15.log -rw-r--r-- 1 tds workshop 5637 Jul 15 09:51 catalina.out -rw-r--r-- 1 tds workshop 0 Jul 15 09:39 host-manager.2013-07-15.log -rw-r--r-- 1 tds workshop 2811 Jul 15 09:52 localhost.2013-07-15.log -rw-r--r-- 1 tds workshop 0 Jul 15 09:39 localhost_access_log.2013-07-15.txt -rw-r--r-- 1 tds workshop 0 Jul 15 09:39 manager.2013-07-15.log
Do you see a correspondence between some of the web applications in the Tomcat webapps/
directory and the naming of certain log files?
Is there a difference in the information being logged to catalina.out
versus catalina.yyyy-mm-dd.log
?
Are some log files more verbose than others?
catalina.out
.Open another terminal window (hereafter referred to as terminal #2) and run the following command in the new terminal:
$ tail -f /usr/local/tds/apache-tomcat-8.0.24/logs/catalina.out
In your original terminal window, start/stop and start Tomcat and watch what is being logged to catalina.out
in the terminal #2 window.
Is it only errors messages being reported to catalina.out?
catalina.out
catalina.out
The Tomcat Users mailing list has seen a lot of traffic dedicated to
catalina.out
logging and rotation.
System.out
and System.err
gets appended to catalina.out
.catalina.out
can quickly grow large if the hosted web applications are not specifically catching and logging System.out
and
System.err
to designated files.
catalina.out
is not automatically rotated in Tomcat.logadm
or logrotate
) to rotate catalina.out
.catalina.out
files and other log files out of the Tomcat logs/
on a regular
basis.
catalina.out
file is not automatically created. Instead only the catalina.yyyy-mm-dd.log
files are used. These
have equivalent content.
server.xml
Tomcat's configuration files, including server.xml
can be found in in the Tomcat conf/
directory.
server.xml
do not take effect until Tomcat is restarted.server.xml
server.xml
.Move into the Tomcat conf/
directory and examine the server.xml
file:
$ pwd /usr/local/tds/apache-tomcat-8.0.24/logs $ cd ../conf $ less server.xml
Reference the table below to see how the server.xml
elements relate to configuring TDS (mouse-over the element for a description):
Tag Name | Instances | How it relates to the TDS |
---|---|---|
<Server>
|
1...1 | Not modified unless you want to change the port number Tomcat listens for a SHUTDOWN command. (Enabled by default.) |
<GlobalNamingResources>
|
0...* |
Needed to contain the UserDatabase that corresponds to the UserDatabaseRealm used to authenticate users. (Enabled by default.)
|
<Resource>
|
0...* |
Editable user database (tomcat-users.xml ) used by UserDatabaseRealm to authenticate users. (UserDatabaseRealm
Resource enabled by default.)
|
<Service>
|
1...* |
Not modified unless you wish to establish more than one service. (Catalina Service enabled by default.)
|
<Connector>
|
1...* | Used to establish HTTP and SSL connections. Also will communicate with an web server for proxying requests. (HTTP connector enabled by default on port 8080.) |
<Engine>
|
1...1 |
Not modified unless you specify a Host other than localhost . (Enabled by default.)
|
<Realm>
|
0...* |
The UserDatabaseRealm uses the UserDatabase configured in the global JNDI Resource .
(UserDatabaseRealm enabled by default.)
|
<Valve>
|
0...* |
The RemoteAddrValve is used to filter access to the TDS based on IP address. (NOT enabled by default. You will need to add this if you want
to use IP Filtering.)
|
<Host>
|
1...* |
Not modified unless you specify a Host other than localhost . (localhost enabled by default.)
|
<Realm>
|
0...* |
We use the MemoryRealm to configuring Tomcat to use digested passwords. (NOT enabled by default. You will need to add this if you want to
use digested passwords.)
|
<Valve>
|
0...* |
We modify the AccessLogValve to customize the access logs generated by Tomcat. (NOT enabled by default. You will need to add this if you
want to enable access logging.)
|
tomcat-users.xml
tomcat-users.xml
do not take effect until Tomcat is restarted.tomcat-users.xml
tomcat-users.xml
.Open the tomcat-users.xml
file:
$ pwd /usr/local/tds/apache-tomcat-8.0.24/conf $ less tomcat-users.xml
Reference the table below to see how the tomcat-users.xml
elements relate to configuring TDS (mouse-over the element for a description):
Tag Name | Instances | How it relates to the TDS |
---|---|---|
<tomcat-users>
|
1...1 | Not modified. (The only tag you get by default.) |
<role>
|
1...* |
You will have at least two of these: one for the Tomcat manager application and one for the TDS. (You will need to add if you want to
enable role-based authentication.)
|
<user>
|
1...* |
You will need to create an entry for each user who needs access to the Tomcat manager application and/or the restricted areas of the TDS.
(You will need to add if you want to enable user authentication.)
|
thredds.war
A maintenance checklist and contains helpful information about upgrading the TDS. New features and configuration changes made between TDS versions are listed for each release.
We will be using the current TDS 4.6.2 version for this workshop:
thredds.war
Put thredds.war
in the Tomcat webapps/
directory:
$ pwd /usr/local/tds/apache-tomcat-8.0.24/bin $ cd ../webapps $ mv ~/thredds.war . $ ls -l drwxr-xr-x 13 tds workshop 4096 Jul 15 09:37 docs drwxr-xr-x 6 tds workshop 4096 Jul 15 09:37 examples drwxr-xr-x 5 tds workshop 4096 Jul 15 09:37 host-manager drwxr-xr-x 5 tds workshop 4096 Jul 15 09:37 manager drwxr-xr-x 3 tds workshop 4096 Jul 15 09:37 ROOT -rw-r--r-- 1 tds workshop 33218655 Jul 15 09:50 thredds.war
If Tomcat is already running, wait a couple of seconds after placing the WAR file in the Tomcat webapps/
and then verify the thredds.war
file was unpacked:
$ ls -l drwxr-xr-x 13 tds workshop 4096 Jul 15 09:37 docs drwxr-xr-x 6 tds workshop 4096 Jul 15 09:37 examples drwxr-xr-x 5 tds workshop 4096 Jul 15 09:37 host-manager drwxr-xr-x 5 tds workshop 4096 Jul 15 09:37 manager drwxr-xr-x 3 tds workshop 4096 Jul 15 09:37 ROOT drwxr-xr-x 8 tds workshop 4096 Jul 15 09:51 thredds -rw-r--r-- 1 tds workshop 33218655 Jul 15 09:50 thredds.war
Go to http://localhost:8080/thredds/ in your browser to verify the TDS has been deployed:
content/
directory.Move into ${tomcat_home}
and do a long listing:
$ pwd /usr/local/tds/apache-tomcat-8.0.24/webapps $ cd .. $ ls -l drwxr-xr-x 2 tds workshop 4096 Jul 15 09:51 bin drwxr-xr-x 3 tds workshop 4096 Jul 15 09:55 conf drwxr-xr-x 3 tds workshop 4096 Jul 15 09:52 content drwxr-xr-x 2 tds workshop 4096 Jul 15 09:37 lib -rw-r--r-- 1 tds workshop 56812 Jul 2 01:59 LICENSE drwxr-xr-x 2 tds workshop 4096 Jul 15 09:39 logs -rw-r--r-- 1 tds workshop 1192 Jul 2 01:59 NOTICE -rw-r--r-- 1 tds workshop 8826 Jul 2 01:59 RELEASE-NOTES -rw-r--r-- 1 tds workshop 16262 Jul 2 01:59 RUNNING.txt drwxr-xr-x 2 tds workshop 4096 Jul 15 09:55 temp drwxr-xr-x 8 tds workshop 4096 Jul 15 09:51 webapps drwxr-xr-x 3 tds workshop 4096 Jul 15 09:39 work
catalina.out
file of the Tomcat logs/
directory.manager
Applicationmanager
applicationmanager
For more information about the Tomcat manager
application, see the Tomcat
Manager App HOW-TO documentation.
manager
directory in the Tomcat webapps/
directory.server.xml
.manager
applicationmanager
applicationThe manager
application URLs and roles has been re-structured. See the Tomcat Migration
guide for more information.
Attempt to access the Tomcat manager
application in your browser: http://localhost:8080/manager/html/.
You will be prompted to login via BASIC authentication, which will end in failure since we do not yet have permission to access the manager
application:
Based on what we know about Tomcat configuration, which file in the Tomcat conf/
directory should we edit to grant ourselves access to the
manager
application?
Changes to tomcat-users.xml
do not take effect until Tomcat is restarted.
manager
applicationtomcat-users.xml
to add role
and user
elements.Using your favorite editor, open ${tomcat_home}/conf/tomcat-users.xml
:
$ vi tomcat-users.xml
Between the <tomcat-users>
tags, add a role
element and specify the rolename
attribute as
manager
:
<tomcat-users> <role rolename="manager-gui"/> </tomcat-users>
Now add a new user by adding a user
element. Create a username
and password
for the new user and specify manager-gui
as one of the roles
(in this example we are creating a user called 'admin' with a corresponding password of 'secret'):
<tomcat-users> <role rolename="manager-gui"/> <user username="admin" password="secret" roles="manager-gui"/> </tomcat-users>
manager
application.To gain access to restricted parts of the TDS, you will perform the same steps you used to grant yourself access to the manager
application.
Attempt to access the manager
application again (http://localhost:8080/manager/html/),
this time logging in using the name
and password
specified in tomcat-users.xml
:
Voilà! You should have access to the manager
application.
tomcat-users.xml
to make sure it is well-formed and without error.tomcat-users.xml
?logs/catalina.out
file.manager
applicationmanager
application to undeploy the TDS.Find the TDS in the list of web application on the Applications
page. Stop and then Undeploy the TDS:
List the contents of the Tomcat webapps/
directory to verify that both thredds.war
and the unpacked thredds/
directory have been removed:
$ pwd /usr/local/tds/apache-tomcat-8.0.24/conf $ cd ../webapps $ ls -l drwxr-xr-x 13 tds workshop 4096 Jul 15 09:37 docs drwxr-xr-x 6 tds workshop 4096 Jul 15 09:37 examples drwxr-xr-x 5 tds workshop 4096 Jul 15 09:37 host-manager drwxr-xr-x 5 tds workshop 4096 Jul 15 09:37 manager drwxr-xr-x 3 tds workshop 4096 Jul 15 09:37 ROOT
manager
application.Upload the TDS WAR file using the Deploy
section of the manager
application:
Confirm the deployment went as planned by accessing the TDS using your browser: http://localhost:8080/thredds/
You will need to enable Enable SSL encryption to access a couple of TDS monitoring and debugging tools.