On Wed, Aug 10, 2016 at 10:06 AM, Sean Son <linuxmailinglistsem...@gmail.com
> wrote:

>
>
> On Tue, Aug 9, 2016 at 5:05 PM, Mark Eggers <its_toas...@yahoo.com.invalid
> > wrote:
>
>> Sean,
>>
>>
>> On 8/9/2016 1:55 PM, Sean Son wrote:
>> > On Mon, Aug 8, 2016 at 11:31 AM, Mark Eggers
>> > <its_toas...@yahoo.com.invalid> wrote:
>> >
>> >> Sean,
>> >>
>> >> On 8/8/2016 7:10 AM, Sean Son wrote:
>> >>> On Fri, Aug 5, 2016 at 5:34 PM, Mark Eggers
>> >> <its_toas...@yahoo.com.invalid>
>> >>> wrote:
>> >>>
>> >>>> On 8/5/2016 2:19 PM, Sean Son wrote:
>> >>>>> Hello!
>> >>>>>
>> >>>>> I am currently running Tomcat 8 on RHEL 7.2 with one web
>> >>>>> application called AppVet (A mobile Application  Vetting
>> >>>>> program).  The application works well but when I tried to use
>> >>>>> a script to allow tomcat to start up at boot, the webapp
>> >>>>> gives an authentication error. I saw the following error in
>> >>>>> the logs for appvet:
>> >>>>>
>> >>>>>
>> >>>>> [ERROR] Could not connect to database:
>> >>>>> com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:
>> >>>>> Communications link failure
>> >>>>>
>> >>>>> The last packet sent successfully to the server was 0
>> >>>>> milliseconds ago. The driver has not received any packets
>> >>>>> from the server. Make sure your MySQL password in your
>> >>>>> AppVetProperties.xml file is correct
>> >>>>>
>> >>>>>
>> >>>>> I know for a fact that the MySQL password is correct in that
>> >>>>> XML file. I double checked it already.  Any ideas on how I
>> >>>>> should fix this error?
>> >>>>>
>> >>>>> This is the script that I am using for startup/shutdown of
>> >>>>> Tomcat8 on boot:
>> >>>>>
>> >>>>> http://pastebin.com/mrvfDtTD
>> >>>>>
>> >>>>> Thanks!
>> >>>>>
>> >>>>> Sean
>> >>>>>
>> >>>>
>> >>>> It appears that your Tomcat process is running as root. Do not
>> >>>> do this.
>> >>>>
>> >>>> Is your MySQL server up and running before Tomcat is started?
>> >>>>
>> >>>> . . . just my two cents /mde/
>> >>>>
>> >>>>
>> >>> Hello thank you for your response
>> >>>
>> >>> I created a user account for Tomcat, I will set the script to use
>> >>> that account instead of the root account.   Question though, does
>> >>> this account need a password?
>> >>
>> >> Yes, especially since you'll be running a service.
>> >>
>> >> Note that if you're running Tomcat on a privileged port (less than
>> >> 1024), a non-root account will not be able to bind to this port.
>> >>
>> >> You have three choices.
>> >>
>> >> 1. iptables
>> >>
>> >> route port 80 to port 8080 (Tomcat default) internally. Take a look
>> >> at the iptables documentation.
>> >>
>> >> 2. jsvc
>> >>
>> >> jsvc from the Apache Commons Daemon project allows you to run a
>> >> service such as Tomcat more easily. I don't remember if there is an
>> >> RPM for RHEL or not (possible in EPEL). It's configuration and
>> >> startup script are different, but the documentation is a good start
>> >> (there are Tomcat examples).
>> >>
>> >> https://commons.apache.org/proper/commons-daemon/jsvc.html
>> >>
>> >> 3. Apache HTTPD front end with mod_proxy_ajp or mod_jk
>> >>
>> >> I'd do this if you need Apache HTTPD for other web applications (a
>> >> PHP application, perhaps). There is good documentation available on
>> >> the Tomcat web site, as well as a ton of discussion on the mailing
>> >> list to get this running.
>> >>
>> >> If you don't feel like building software, I'd recommend
>> >> mod_proxy_ajp. I find mod_jk more flexible and a little easier to
>> >> use (opinions on easy of use vary), but you'd have to build mod_jk
>> >> from source. It's easy to do, but some people find that a little
>> >> more challenging.
>> >>
>> >>>
>> >>> Also, I cant tell if the MySQL server is up and running prior to
>> >>> Tomcat being started. I know that mysqld is enabled to start at
>> >>> boot, but I dont know if Tomcat starts prior to MySQL.  How would
>> >>> I figure that out?
>> >>>
>> >>
>> >> I thought REHL 7 uses systemd and not init scripts?
>> >>
>> >> There have been many discussions on the mailing list concerning
>> >> systemd and Tomcat. I think someone has posted appropriate systemd
>> >> scripts.
>> >>
>> >> If not, then look at /etc/rc3.d. Start and stop scripts are
>> >> executed in numerical order. Start scripts start with S, stop
>> >> scripts start with K.
>> >>
>> >> Adjust the numbers in your Tomcat init script (/etc/initinit.d) so
>> >> that the start comes after MySQL (second number in the chkconfig
>> >> line).
>> >>
>> >> You'll have to chkconfig --del and chkconfig --add to have the new
>> >> numbers take effect in /etc/rcx.d.
>> >>
>> >>>
>> >>> Thanks!
>> >>>
>> >>
>> >> . . . just my two cents /mde/
>> >>
>> >>
>> >>
>> >
>> > hello thank you for your response.
>> >
>> > So i decided to go the SystemD route and I found this article
>> > online:
>> >
>> > https://panovski.me/install-tomcat-8-on-centos-7/
>> >
>> > I followed the instructions and instead of downloading Tomcat and
>> > installing it in /opt/tomcat, I copied the existing Tomcat
>> > installation, which was in /home/username, into /opt/tomcat and I
>> > gave the entire installation directory, an owner and group of tomcat.
>> > Then I set up the following tomcat.service unit file:
>> >
>> >
>> > [Unit] Description=Apache Tomcat Web Application Container
>> > After=network.target
>> >
>> > [Service] Type=forking PIDFile=/var/run/tomcat.pid
>> > Environment=CATALINA_PID=/var/run/tomcat.pid
>> > Environment=JAVA_HOME=/usr/java/jdk1.8.0_92
>> > Environment=CATALINA_HOME=/opt/tomcat/apache-tomcat-8.0.35
>> > Environment=CATALINA_BASE=/opt/tomcat/apache-tomcat-8.0.35
>> > Environment=CATALINA_OPTS=
>> >
>> > ExecStart=/opt/tomcat/apache-tomcat-8.0.35/bin/jsvc \
>> > -Dcatalina.home=${CATALINA_HOME} \ -Dcatalina.base=${CATALINA_BASE}
>> > \ -cp
>> > ${CATALINA_HOME}/bin/commons-daemon.jar:${CATALINA_HOME}/bin
>> /bootstrap.jar:${CATALINA_HOME}/bin/tomcat-juli.jar
>> >
>> >
>> \
>> > -user tomcat \ -java-home ${JAVA_HOME} \ -pidfile /var/run/tomcat.pid
>> > \ -errfile SYSLOG \ -outfile SYSLOG \ $CATALINA_OPTS \
>> > org.apache.catalina.startup.Bootstrap
>> >
>> > ExecStop=/opt/tomcat/bin/jsvc \ -pidfile /var/run/tomcat.pid \ -stop
>> > \ org.apache.catalina.startup.Bootstrap
>> >
>> > [Install] WantedBy=multi-user.target
>> >
>> >
>> >
>> > I set up JSVC as well just like how the article suggested, but when I
>> > run systemctl start tomcat and I try to browse to https://IP
>> > Address:8443   (I am using SSL on Tomcat), I get the following errors
>> > in the webbrowser:
>> >
>> > http://pastebin.com/8RANM5NF
>> >
>> > Any ideas on what I should do to resolve this issue?
>> >
>> > Thanks!
>> >
>>
>> Looks like a permissions problem:
>>
>> /opt/tomcat/apache-tomcat-8.0.35/work/Catalina/localhost/ROO
>> T/org/apache/jsp/index_jsp.class
>> (Permission denied)
>>
>> What are the permissions and ownership (owner, group) for the files and
>> directories under /opt/tomcat - especially
>> /opt/tomcat/apache-tomcat-8.0.35?
>>
>> . . . just my two cents
>> /mde/
>>
>>
> Hello ! thank you for your response
>
> I checked the permissions for that path: the owner and group  for the path
> is tomcat:tomcat EXCEPT for the index_jsp.class and index_jsp.java, both of
> which are owned/group by root.  So it looks like when the systemd unit is
> ran, the two files are created by root as opposed to by Tomcat.  how would
> I fix this?
>
>
> Thanks!
>
>
>

Hello

I changed the permissions on the two files tomcat:tomcat  and restarted
Tomcat... it took a while, probably close to 10 minutes for the server to
come up but now I can see the Tomcat start page.. How come it takes so long
for it to start up? Any way that I can speed up the process?



Thanks

Reply via email to