Community Tip - Have a PTC product question you need answered fast? Chances are someone has asked it before. Learn about the community search. X
I have installed thingworx 7.4 and Postgresql on separate servers. Tomcat was running prior to installation of Thingworx 7.4. However, after installing and running tomcat again it no longer start the logs are as follows
Using CATALINA_BASE: /usr/share/tomcat8/8.0.38
Using CATALINA_HOME: /usr/share/tomcat8/8.0.38
Using CATALINA_TMPDIR: /usr/share/tomcat8/8.0.38/temp
Using JRE_HOME: /usr/lib/jvm/jdk1.8.0_101/
Using CLASSPATH: /usr/share/tomcat8/8.0.38/bin/bootstrap.jar:/usr/share/tomcat8/8.0.38/bin/tomcat-juli.jar
19-Oct-2017 13:37:29.724 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version: Apache Tomcat/8.0.38
19-Oct-2017 13:37:29.725 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Oct 6 2016 20:51:55 UTC
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number: 8.0.38.0
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 3.10.0-229.el7.x86_64
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /usr/lib/jvm/jdk1.8.0_101/jre
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.8.0_101-b13
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/share/tomcat8/8.0.38
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/share/tomcat8/8.0.38
19-Oct-2017 13:37:29.726 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/share/tomcat8/8.0.38/conf/logging.properties
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=/usr/share/tomcat8/8.0.38/endorsed
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/share/tomcat8/8.0.38
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/share/tomcat8/8.0.38
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/share/tomcat8/8.0.38/temp
19-Oct-2017 13:37:29.727 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
19-Oct-2017 13:37:29.841 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
19-Oct-2017 13:37:29.852 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
19-Oct-2017 13:37:29.854 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-80"]
19-Oct-2017 13:37:29.855 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
19-Oct-2017 13:37:29.855 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-443"]
19-Oct-2017 13:37:30.070 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
19-Oct-2017 13:37:30.071 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
19-Oct-2017 13:37:30.073 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
19-Oct-2017 13:37:30.073 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 662 ms
19-Oct-2017 13:37:30.100 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
19-Oct-2017 13:37:30.101 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.38
19-Oct-2017 13:37:30.124 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /usr/share/tomcat8/8.0.38/webapps/Thingworx.war
19-Oct-2017 13:37:37.220 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
System property [org.owasp.esapi.opsteam] is not set
System property [org.owasp.esapi.devteam] is not set
Attempting to load ESAPI.properties via file I/O.
Attempting to load ESAPI.properties as resource file via file I/O.
Found in 'org.owasp.esapi.resources' directory: /ThingworxStorage/esapi/ESAPI.properties
Loaded 'ESAPI.properties' properties file
Attempting to load validation.properties via file I/O.
Attempting to load validation.properties as resource file via file I/O.
Found in 'org.owasp.esapi.resources' directory: /ThingworxStorage/esapi/validation.properties
Loaded 'validation.properties' properties file
Expecting an absolute path of the library: libFlxCore64.so.2016.08
Solved! Go to Solution.
Could you please add the below contents to the setenv.sh file,restart tomcat and launch the composer:
# Java Options
export JAVA_OPTS="-Djava.awt.headless=true - Djava.net.preferIPv4Stack=true -Dserver -Dd64 - XX:+UseNUMA -XX:+UseConcMarkSweepGC -Dfile.encoding=UTF-8 -Djava.library.path=/usr/share/tomcat8/8.0.38/webapps/Thingworx/WEB-INF/extensions "
export JRE_HOME=/usr/lib/jvm/jdk1.8.0_x/jre
Hi Muhammad Hassan,
Have you added the library path to the environment variables?
For example: Djava.library.path=/usr/share/tomcat8/8.0.38/webapps/Thingworx/WEB-INF/extensions
I have only added JAVA_HOME, I am not sure which library paths I need to add since I am only following the thingworx guide
I would like to know the OS on which you are trying to install ThingWorx? Is it RHEL or Ubuntu?
I am installing on RHEL7
Could you also please share the below details:
I tried running tomcat as a service but it was not working. Therefore, I am starting it manually for now. I will now create a setenv.sh file and try. Tomcat was working fine but then when I installed Thingworx 7.4 it no longer runs. But when I remove Thingworx.war file, tomcat starts normally again.
Could you please add the below contents to the setenv.sh file,restart tomcat and launch the composer:
# Java Options
export JAVA_OPTS="-Djava.awt.headless=true - Djava.net.preferIPv4Stack=true -Dserver -Dd64 - XX:+UseNUMA -XX:+UseConcMarkSweepGC -Dfile.encoding=UTF-8 -Djava.library.path=/usr/share/tomcat8/8.0.38/webapps/Thingworx/WEB-INF/extensions "
export JRE_HOME=/usr/lib/jvm/jdk1.8.0_x/jre
It worked ! Thanks it seems this was the only issue
Glad to know that it worked!
hello
I have exactly the same problem (Ubuntu 14 with Postgres)
tomcat8.service env :
Environment=CATALINA_PID=/var/run/tomcat.pid Environment=JAVA_HOME=/usr/lib/jvm/jdk1.8.0_92 Environment=CATALINA_HOME=/usr/share/tomcat8/8.0.33 Environment=CATALINA_BASE=/usr/share/tomcat8/8.0.33 Environment=CATALINA_OPTS=
catalina.out :
Attempting to load validation.properties via file I/O. Attempting to load validation.properties as resource file via file I/O. Found in 'org.owasp.esapi.resources' directory: /ThingworxStorage/esapi/validation.properties Loaded 'validation.properties' properties file 22:22:07.445 [localhost-startStop-1] DEBUG c.t.system.ApplicationContext - servletContext was org.apache.catalina.core.ApplicationContextFacade@212377a5 Expecting an absolute path of the library: libFlxCore64.so.2016.08
I created the setenv.sh :
# Java Options export JAVA_OPTS="-Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dserver -Dd64 -XX:+UseNUMA -XX:+UseConcMarkSweepGC -Dfile.encoding=UTF-8 -Djava.library.path=/usr/share/tomcat8/8.0.38/webapps/Thingworx/WEB-INF/extensions " export JRE_HOME=/usr/lib/jvm/jdk1.8.0_92/jre
but it doesn't solve the issue for me
any other idea ?
Thanks
I found my mistake
8.0.38 -> 8.0.33 for tomcat in setenv.sh in my case
Now it's OK after many hours of battle to get Thingworx working on ubuntu + Postgres
Hope to see a simpler installation process one day (a virtual marchine ready to download and use ?) ;-)
FYI - Working Service file for tomcat on Centos
# Systemd unit file for default tomcat
#
# To create clones of this service:
# DO NOTHING, use tomcat@.service instead.
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=simple
EnvironmentFile=/etc/tomcat/tomcat.conf
Environment="NAME="
EnvironmentFile=-/etc/sysconfig/tomcat
ExecStart=/usr/libexec/tomcat/server start
ExecStop=/usr/libexec/tomcat/server stop
SuccessExitStatus=143
User=tomcat
Group=tomcat
[Install]
WantedBy=multi-user.target
There don't appear to be any errors in that log that are interesting other than the reference to the shared library libFlxCore... That could be causing it to crash, but it doesn't look to me like it is. A second place to check is ThingworxStorage/logs/ApplicationLog.log. I have occasionally seen nothing of interest in the tomcat logs but will find an error in ApplicationLog.log that indicates the Thingworx webapp has terminated (licensing issues being the primary problem)