You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by rakesh meka <ra...@gmail.com> on 2021/11/15 21:45:10 UTC

Re: How to Upgrade Tomcat

Hi All,

Need guidance or help I order to upgrade the current tomcat version on the
server to later version where I have already deployed an application on
windows server and do not want to loss any data.


Current version of tomcat : 8.5.23

Need to upgrade to either : 8.5.73 or 9.0.54



On Tue, 16 Nov, 2021, 3:01 am Christopher Schultz, <
chris@christopherschultz.net> wrote:

> Jon,
>
> On 11/15/21 15:20, jonmcalexander@wellsfargo.com.INVALID wrote:
> > Files Required in CATALINA_BASE:
> >
> > bin
> > Only shell scripts or batch files. Make sure that setenv.sh or
> > setenv.bat sets and passes the CATALINA_BASE and CATALINA_HOME
> > locations properly.
> You can't use CATALINA_BASE/bin/setenv.sh to set CATALINA_BASE,
> otherwise this file will never be found ;)
>
> setenv.sh should be used for things like CATALINA_OPTS.
>
> > conf
> > All of the conf files.
>
> Specifically, you'll want server.xml and web.xml. You can also choose to
> customize context.xml, and put any [engine]/[host]/[webapp].xml
> deployment descriptors there.
>
> > lib
> > Only .jar files needed by your Instance, not necessarily the
> > application(s), and definitely not any of the jars from
> > CATALINA_HOME
> This should almost always be empty except maybe for a JDBC driver.
>
> > logs (if in this location)
>
> ... and they should be, unless you have some exotic logging going on.
>
> > webapps (if in this location)
>
> ... and they should be, unless you are using
> CATALINA_BASE/conf/[engine]/[host]/[webapp].xml files.
>
> > temp and work
>
> These must additionally be *writable* by Tomcat.
>
> -chros
>
> >> -----Original Message-----
> >> From: Michael B Allen <io...@gmail.com>
> >> Sent: Monday, November 15, 2021 2:16 PM
> >> To: users@tomcat.apache.org
> >> Subject: How to *properly* create and use a CATALINA_BASE installation
> >>
> >> Hi,
> >>
> >> What $CATALINA_HOME/conf/ files should be copied into
> >> $CATALINA_BASE?
> >>
> >> RUNNING.txt just says:
> >>
> >> * conf - Server configuration files (including server.xml)
> >>
> >> So it's multiple fileS but not necessarily all if server.xml is
> explicitly included?
> >>
> >> Ideally I would think it should be only files that need to be modified
> since
> >> that seems to be the point of using $CATALINA_BASE. Is this correct?
> >>
> >> I'm trying to use $CATALINA_BASE just because it seems like the proper
> way
> >> to setup Tomcat in general.
> >>
> >> Without $CATALINA_BASE everything works as near as I can tell.
> >>
> >> But if I change $CATALINA_BASE to be different from $CATALINA_HOME in
> >> my startup bat like:
> >>
> >> $CATALINA_HOME/bin/xstart.bat:
> >> SETLOCAL
> >>
> >> set JRE_HOME=%ProgramFiles%\Java\jre1.8.0_311
> >> set CATALINA_HOME=C:\path\to\tomcat
> >> set CATALINA_BASE=C:\path\to\tomcat-base
> >>
> >> "%CATALINA_HOME%\bin\catalina.bat" run %1 %2 %3 %4 %5 %6 %7 %8 %9
> >>
> >> And then in tomcat-base I have:
> >>
> >> bin\tomcat-juli.jar
> >> conf\keystore.jks
> >> conf\server.xml
> >>
> >> The server.xml is stock except for the following:
> >>
> >>      <Connector
> >>          port="8443"
> >>          protocol="org.apache.coyote.http11.Http11NioProtocol"
> >>          scheme="https"
> >>          secure="true"
> >>          SSLEnabled="true">
> >>          <SSLHostConfig>
> >>              <Certificate
> >>                  certificateKeystoreFile="conf/keystore.jks"
> >>                  certificateKeystorePassword="as1busiw19"/>
> >>          </SSLHostConfig>
> >>      </Connector>
> >>
> >> conf\tomcat-users.xml
> >> conf\Catalina\localhost\manager.xml
> >> logs\localhost_access_log.2021-11-15.txt
> >> temp\
> >> webapps\myapp\<mywebappfiles>
> >>
> >> Note: There is no myapp\WEB-INF\context.xml
> >>
> >> webapps\manager\<managerfiles>
> >>
> >> Tomcat starts up ok and Tomcat Manager works. I can see myapp in the
> >> manager which claims it's deployed and running.
> >>
> >> But trying to access /myapp results in:
> >>
> >>      404 Not Found: The origin server did not find a current
> representation for
> >> the target resource or is not willing to disclose that one exists.
> >>
> >> I can un-deploy /myapp and re-deploy it through the manager and again,
> >> nothing but 404.
> >>
> >> Doesn't work under HTTPS either (and HTTPS works without using
> >> $CATALINA_BASE).
> >>
> >> What could be the problem here?
> >>
> >> I used the following to create a symbolic link to the tomcat directory:
> >>
> >> cmd>mklink /d tomcat apache-tomcat-9.0.54
> >>
> >> Is this ok?
> >>
> >> I'm using Tomcat 9.0.54 32 bit on Windows Server 2016 64 bit. The native
> >> runtime DLL fails to load because it's built for 32bit. But this seems
> to fallback
> >> to the Java runtime just fine. Is this somehow a problem?
> >>
> >> Do I need a deployment context xml?
> >>
> >> I'm a little stumped by this. I don't normally use Tomcat but I just
> wanted to
> >> create an "Application Note" about how to properly use my product with
> >> Tomcat. So I'm really interested in how this all is supposed to work
> and not so
> >> much just seeing it work.
> >>
> >> Thanks,
> >>
> >> Mike
> >> --
> >> Michael B Allen
> >> Java Active Directory Integration
> >> https://urldefense.com/v3/__http://www.ioplex.com/__;!!F9svGWnIaVPG
> >> SwU!_6VQfOm0BicBKqHX5YRO8TPWj-
> >> CbBzOJLHUmvYMkxoFKta0WfhOFzKojClKr8XG5MwyZgig$
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> >> For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>

Re: How to Upgrade Tomcat

Posted by Christopher Schultz <ch...@christopherschultz.net>.
Rakesh,

First: please don't hijack threads (you replied to a thread called "How 
to *properly* create and use a CATALINA_BASE installation")

Second: it's ironic that you replied to this particular thread, because 
one of my recommendations is to always run with CATALINA_HOME and 
CATALINA_BASE separate, because it makes upgrades (and downgrades, if 
necessary) quite a bit easier.

I'd have a look here for some more information:
https://people.apache.org/~schultz/presentations/ApacheCon%20NA%202020/Splitting%20Your%20Tomcat%20Installation.pdf

On 11/15/21 16:45, rakesh meka wrote:
> Need guidance or help I order to upgrade the current tomcat version on the
> server to later version where I have already deployed an application on
> windows server and do not want to loss any data.
> 
> Current version of tomcat : 8.5.23
> 
> Need to upgrade to either : 8.5.73 or 9.0.54

I would recommend to upgrade to 8.5.73 and not go to Tomcat 9.0.x quite 
yet. The upgrade from 8.5.23 -> 8.5.73 should have very few surprises, 
but you should definitely read this before doing anything:

http://tomcat.apache.org/migration-85.html#Upgrading_8.5.x

If you have questions, please start a new post to 
users@tomcat.apache.org with a new subject.

-chris

> On Tue, 16 Nov, 2021, 3:01 am Christopher Schultz, <
> chris@christopherschultz.net> wrote:
> 
>> Jon,
>>
>> On 11/15/21 15:20, jonmcalexander@wellsfargo.com.INVALID wrote:
>>> Files Required in CATALINA_BASE:
>>>
>>> bin
>>> Only shell scripts or batch files. Make sure that setenv.sh or
>>> setenv.bat sets and passes the CATALINA_BASE and CATALINA_HOME
>>> locations properly.
>> You can't use CATALINA_BASE/bin/setenv.sh to set CATALINA_BASE,
>> otherwise this file will never be found ;)
>>
>> setenv.sh should be used for things like CATALINA_OPTS.
>>
>>> conf
>>> All of the conf files.
>>
>> Specifically, you'll want server.xml and web.xml. You can also choose to
>> customize context.xml, and put any [engine]/[host]/[webapp].xml
>> deployment descriptors there.
>>
>>> lib
>>> Only .jar files needed by your Instance, not necessarily the
>>> application(s), and definitely not any of the jars from
>>> CATALINA_HOME
>> This should almost always be empty except maybe for a JDBC driver.
>>
>>> logs (if in this location)
>>
>> ... and they should be, unless you have some exotic logging going on.
>>
>>> webapps (if in this location)
>>
>> ... and they should be, unless you are using
>> CATALINA_BASE/conf/[engine]/[host]/[webapp].xml files.
>>
>>> temp and work
>>
>> These must additionally be *writable* by Tomcat.
>>
>> -chros
>>
>>>> -----Original Message-----
>>>> From: Michael B Allen <io...@gmail.com>
>>>> Sent: Monday, November 15, 2021 2:16 PM
>>>> To: users@tomcat.apache.org
>>>> Subject: How to *properly* create and use a CATALINA_BASE installation
>>>>
>>>> Hi,
>>>>
>>>> What $CATALINA_HOME/conf/ files should be copied into
>>>> $CATALINA_BASE?
>>>>
>>>> RUNNING.txt just says:
>>>>
>>>> * conf - Server configuration files (including server.xml)
>>>>
>>>> So it's multiple fileS but not necessarily all if server.xml is
>> explicitly included?
>>>>
>>>> Ideally I would think it should be only files that need to be modified
>> since
>>>> that seems to be the point of using $CATALINA_BASE. Is this correct?
>>>>
>>>> I'm trying to use $CATALINA_BASE just because it seems like the proper
>> way
>>>> to setup Tomcat in general.
>>>>
>>>> Without $CATALINA_BASE everything works as near as I can tell.
>>>>
>>>> But if I change $CATALINA_BASE to be different from $CATALINA_HOME in
>>>> my startup bat like:
>>>>
>>>> $CATALINA_HOME/bin/xstart.bat:
>>>> SETLOCAL
>>>>
>>>> set JRE_HOME=%ProgramFiles%\Java\jre1.8.0_311
>>>> set CATALINA_HOME=C:\path\to\tomcat
>>>> set CATALINA_BASE=C:\path\to\tomcat-base
>>>>
>>>> "%CATALINA_HOME%\bin\catalina.bat" run %1 %2 %3 %4 %5 %6 %7 %8 %9
>>>>
>>>> And then in tomcat-base I have:
>>>>
>>>> bin\tomcat-juli.jar
>>>> conf\keystore.jks
>>>> conf\server.xml
>>>>
>>>> The server.xml is stock except for the following:
>>>>
>>>>       <Connector
>>>>           port="8443"
>>>>           protocol="org.apache.coyote.http11.Http11NioProtocol"
>>>>           scheme="https"
>>>>           secure="true"
>>>>           SSLEnabled="true">
>>>>           <SSLHostConfig>
>>>>               <Certificate
>>>>                   certificateKeystoreFile="conf/keystore.jks"
>>>>                   certificateKeystorePassword="as1busiw19"/>
>>>>           </SSLHostConfig>
>>>>       </Connector>
>>>>
>>>> conf\tomcat-users.xml
>>>> conf\Catalina\localhost\manager.xml
>>>> logs\localhost_access_log.2021-11-15.txt
>>>> temp\
>>>> webapps\myapp\<mywebappfiles>
>>>>
>>>> Note: There is no myapp\WEB-INF\context.xml
>>>>
>>>> webapps\manager\<managerfiles>
>>>>
>>>> Tomcat starts up ok and Tomcat Manager works. I can see myapp in the
>>>> manager which claims it's deployed and running.
>>>>
>>>> But trying to access /myapp results in:
>>>>
>>>>       404 Not Found: The origin server did not find a current
>> representation for
>>>> the target resource or is not willing to disclose that one exists.
>>>>
>>>> I can un-deploy /myapp and re-deploy it through the manager and again,
>>>> nothing but 404.
>>>>
>>>> Doesn't work under HTTPS either (and HTTPS works without using
>>>> $CATALINA_BASE).
>>>>
>>>> What could be the problem here?
>>>>
>>>> I used the following to create a symbolic link to the tomcat directory:
>>>>
>>>> cmd>mklink /d tomcat apache-tomcat-9.0.54
>>>>
>>>> Is this ok?
>>>>
>>>> I'm using Tomcat 9.0.54 32 bit on Windows Server 2016 64 bit. The native
>>>> runtime DLL fails to load because it's built for 32bit. But this seems
>> to fallback
>>>> to the Java runtime just fine. Is this somehow a problem?
>>>>
>>>> Do I need a deployment context xml?
>>>>
>>>> I'm a little stumped by this. I don't normally use Tomcat but I just
>> wanted to
>>>> create an "Application Note" about how to properly use my product with
>>>> Tomcat. So I'm really interested in how this all is supposed to work
>> and not so
>>>> much just seeing it work.
>>>>
>>>> Thanks,
>>>>
>>>> Mike
>>>> --
>>>> Michael B Allen
>>>> Java Active Directory Integration
>>>> https://urldefense.com/v3/__http://www.ioplex.com/__;!!F9svGWnIaVPG
>>>> SwU!_6VQfOm0BicBKqHX5YRO8TPWj-
>>>> CbBzOJLHUmvYMkxoFKta0WfhOFzKojClKr8XG5MwyZgig$
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>>
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org