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/
> ROOT/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!

Reply via email to