One Star

[resolved] running TAC as a service

Hi all,
My first post. Hope it's in the correct section and that I haven't overlooked anything to find out it's been posted and answered before.
I'm trying to run the Talend Administration Center as a service. I've installed it on Windows 2012 R2 and it runs fine when I start it with the start_tac.bat file. When I install it as a service via "service install" I get the following error messages in the apache log files:
SLF4J: org.springframework.transaction.support.TransactionSynchronizationUtils
22  syncopePersistenceUnit  WARN   openjpa.Runtime - An error occurred while registering a ClassTransformer with PersistenceUnitInfo: name 'syncopePersistenceUnit', root URL . The error has been consumed. To see it, set your openjpa.Runtime log level to TRACE. Load-time class transformation will not be available.
3828  syncopePersistenceUnit  INFO   openjpa.Runtime - Starting OpenJPA 2.2.2
Exception in thread "Thread-13"

and
sep 02, 2014 11:33:44 AM org.apache.tomcat.util.modeler.Registry registerComponent
SEVERE: Null component Catalina:type=JspMonitor,name=jsp,WebModule=//localhost/drools-guvnor,J2EEApplication=none,J2EEServer=none
sep 02, 2014 11:33:55 AM org.apache.catalina.startup.HostConfig deployDirectory
SEVERE: Error deploying web application directory drools-guvnor
java.lang.OutOfMemoryError: PermGen space

I notice that when I start the TAC via the batch file the following environment variables are used:
E:\Talend\5.5.1\tac\apache-tomcat\bin>if exist "startup.bat" (
startup.bat
 goto end
)
Using CATALINA_BASE:   "E:\Talend\5.5.1\tac\apache-tomcat"
Using CATALINA_HOME:   "E:\Talend\5.5.1\tac\apache-tomcat"
Using CATALINA_TMPDIR: "E:\Talend\5.5.1\tac\apache-tomcat\temp"
Using JRE_HOME:        "C:\Java\jdk1.7.0_67\jre"
Using CLASSPATH:       "E:\Talend\5.5.1\tac\apache-tomcat\bin\bootstrap.jar"

When I install it as a service the following are used:
E:\Talend\5.5.1\tac\apache-tomcat\bin>service install
Installing the service 'Tomcat6' ...
Using CATALINA_HOME:    "E:\Talend\5.5.1\tac\apache-tomcat"
Using CATALINA_BASE:    "E:\Talend\5.5.1\tac\apache-tomcat"
Using JAVA_HOME:        "C:\Java\jdk1.7.0_67"
Using JVM:              "C:\Java\jdk1.7.0_67\jre\bin\server\jvm.dll"
The service 'Tomcat6' has been installed.

I've set the CLASSPATH manually to bootstrap.jar in the environment variables as well but it's not being used when I try to install it as a service.
Any idea what might be the issue here?
Thanks and regards
Rob
5 REPLIES
Employee

Re: [resolved] running TAC as a service

Please see section Increasing Tomcat memory for TAC.
Seven Stars

Re: [resolved] running TAC as a service

Hello, there's an executable on the host called tomcat<version>w.exe and when you run it (as an administrative user) it will allow you to configure the heap options under the "java" tab.  As shown in the screenshot below:
Employee

Re: [resolved] running TAC as a service

I checked this problem on my own system running Windows 7, TAC 5.5.1, and an external mysql instance.  I had the same problem even after trying the setenv.bat and catalina.bat file modifications recommended in the documentation.  Those approaches should be equivalent to the much easier gui with tomcat6w.exe.
Talend Support directed me to the following issues.  The work-around is to install an upgraded version of jsl.  See the tickets and downloads below.
https://jira.talendforge.org/browse/TUP-1715
New version here:  http://jslwin.sourceforge.net/
One Star

Re: [resolved] running TAC as a service

I've had a look at the jsl upgrade. At the moment I'm only trying to start TAC and there is no jsl.jar file in that directory which I can replace. It is the case for the jobserver, but at the moment I'm only trying to start TAC as a service.
I've also tried to increase the memory like rbaldwin suggested, but that doesn't change anything either. What I find strange is that my Apache Tomcat Server doesn't start at all. It's not just TAC that doesn't start. I even get a blank screen when I goto port 8080 on the host.
Seventeen Stars

Re: [resolved] running TAC as a service

Installing Java programs  as service under Windows is the hell!
I usually avoid that by starting the TAC via the bat scripts and add them to the Task Planner from Windows for the system start event.
This works fine and has the same result, you do not have to logged in and the TAC starts with the computer start.
The by fat better way to start a reliable service is using Linux ;-)