One Star

tWebService component to work on the jobServer


We are trying to get the tWebService component to work on the jobServer version 5.3.1

we found the solution for the desktop client (change the use of the jre to jdk)

but we are unable to configure the JobServer side

our JobServer starts D:\Talend\5.3.1\JobServer\conf\jsl_static64.exe
The JDK is installed
the JAVA_HOME variable links the JDK
then jsl_static.ini file seems to be well configured (joined to the email)
could you please help us

thank you



;This section defines variables, which can be used elsewhere in the ini file
;A variable refenrencing itself e.g. "PATH=%PATH%;c:\java\test" will result in an import from the environment.
;JSL will first look in the normal environment then in the system environment of the registry as a fallback.
;Any variable not in the defines section will result in a environment lookup as well.
;Variable substitution is possible in any value in the ini file
;% is escaped by %%
P1 = d:\java\test
P2 = %P1%

;Comma seperated list of variables to be exported to the environment
;Supersedes the "path" parameter further down.
;Do not use the path parameter if you also set "PATH"in the export parameter as precedence is undefined.

appname = TalendJobServer
servicename = TalendJobServer
displayname = Talend JobServer
;Size of internal buffer for string handling
;increase if you use very long command line parameters e.g. a very long classpath
stringbuffer = 16000
;port used to communicate stop command to JVM
;Must be unique for each JSL instance installed
;This option is ignored if a stop method is defined further down
;stopport = 8465
;delay n milliseconds to start the Java VM
;Default is no start delay
;startdelay = 10000
;service dependencies can be added
;as a comma separated string "dep1,dep2"
;service start type
;auto demand disabled
;default is auto
;Allow interaction with desktop
;This is a service configuration flag; default is false
;interactwithdesktop = false
;load ordering group
;account under which service runs
;default is system
;password for above account
;system need not provide a password
;obfuscation of password is not supported. It is actually not needed.
;The password specified here is ONLY used during the jsl -install command. It can (and should) be deleted after installation.
;Allocate a console and register a console event handler to catch shutdown events.
;Default is true; options are FALSE TRUE false true YES NO yes no
;This option has two effects:
;1. If active it catches the logoff events and prevents the service from erroneously stopping in this case.
;2. It creates a console window if interaction with the desktop is allowd.
;Effect 1 can be achieved in Java 1.3.1 and higher by using the -Xrs option.
;Effect 2 may or may not be desired.
;Call <stopclass>.<stopmethod> through JNI so stop the JVM.
;This can be used an alternative to the ServiceStopper
;When all three parameters are defined the JSL will try to use JNI to stop the service.
;If not it will use a tcp/ip connection to the stopport.
;The simplest way to use this functionality is to use the Systen.exit() call as specified below.
;Nevertheless you can call any static method in your code.
;The method called is expected to terminate the JVM one way or the other. It can directly
;call System.exit() or make another Thread do it make the main method return.
;The method can return imediately if desired. If the JVM doesn't stop another attempt can be made to
;stop the service at a later time.
;Take care to specify the right signature for your method. void System.exit( int code ) has
;the sifnature specified below. void myMethod() has the signature ()V. Please refer to the
;JNI documentation for details.
;Parameters can be passed in "stopparam".
;Note that parameter passing is only implemented for the special case that the signature of the
;method is (String[]). Generic parameter passing is cumbersome to implement in C so I choose
;to implement only the most common case.
;Path to the java runtime used
;If this option is not used the default from the registry will be used
jrepath=C:\Program Files\Java\jdk1.7.0_45
;Type of jvm to be used. Alternative mechanism to specifiying -client or -server on the command line.
;Can use any JVM name, which is diffrent from the command line which will only allow -client and -server
;Useful when using a JVM diffrent from Suns implementation.
;working directory
;If the working directory path starts with a "." it will be replaced with the .ini directory path
;This is neccessary because a service does not inherit a working directory from the shell. Therefore "." would be meaningless.
;This logic is only required here because all other paths will resolve a "." against the working dir once it is set.
;the number of paramters passed to the java application
;parameters must be named param00, param01 ...
;Please note that each command line parameter has to go on it's own parameter value here!
;The way the JVM is called in JSL, the JVM expects a preparsed array of parameters.
;Everything seperated by whitespace on a java command line is broken down into a parameter here.
;You don't need to care about quotes
;around strings containing spaces here. e.g.
;java.exe -cp "c:\program files\test\lib.jar" com.test.Java "test.>"
;params = 6
;param00 = -cp
;param01 = c:\jobserver;c:\jobserver\lib\jmxremote_optional.jar;c:\jobserver\lib\log4j-1.2.15.jar;c:\jobserver\lib\commons-io-1.3.2.jar;c:\jobserver\lib\jsl.jar
;param02 = -Djava.library.path=c:\jobserver\jsysmon-20061229\native\windows\
;param03 =
;param04 = -Dtalend_props=c:\jobserver\conf\
;param05 = org.talend.remote.jobserver.service.WindowsJobServer
params = 6
param00 = -cp
param01 = D:\Talend\5.3.1\JobServer;D:\Talend\5.3.1\JobServer\lib\jmxremote_optional.jar;D:\Talend\5.3.1\JobServer\lib\log4j-1.2.15.jar;D:\Talend\5.3.1\JobServer\lib\commons-io-1.3.2.jar;D:\Talend\5.3.1\JobServer\lib\jsl.jar;D:\Talend\5.3.1\JobServer\sigar-bin\lib\sigar.jar
;param02 = -Djava.library.path=D:\Talend\5.3.1\JobServer\jsysmon-20061229\native\windows\
param02 = -Djava.library.path=D:\Talend\5.3.1\JobServer\sigar-bin\lib\
param03 =
param04 = -Dtalend_props=D:\Talend\5.3.1\JobServer\conf\
param05 = org.talend.remote.jobserver.service.WindowsJobServer

Re: tWebService component to work on the jobServer

In your jsl_static64.ini i am seing this: jrepath=C:\Program Files\Java\jdk1.7.0_45, your jobserver seems using JDK.
Can you please follow up these step and let me know your feedback:
1) Stop the jobserver services
2) Open the start_rs.bat script and update set MY_JAVA=java with set MY_JAVA="C:\Program Files\Java\jdk1.7.0_45\bin\java"
3) Restart the jobserver
And test if your job will work as expected.
One Star

Re: tWebService component to work on the jobServer


I change the start_rs.bat file and restart everything but it doesn't solve the issue

I'm not sure if this file is use because my windows service start this file when lauched.

Here is a copy of the start_rs.bat file

Thank you

@echo off
rem S. Correia
rem Date: 2007 09 26
rem This script executes the Talend Agent
rem Edit the environment variables containing the token MY_ according to the target environment.
rem put the full path to the java executable if the default is not the required one
set MY_JAVA="C:\Program Files\Java\jdk1.7.0_45\bin\java"
rem the root path
set MY_ROOT_PATH=%~dp0
rem The main class to run
set MY_CLASS=org.talend.remote.jobserver.server.TalendJobServerMain
rem for local test with Jconsole:
rem set MY_CLASS=org.talend.monitoring.jmx.api.OSInformationAgent
rem The properties configuration file
rem set the different classpaths here
set MY_CLASSPATH=%MY_CLASSPATH%;%MY_ROOT_PATH%lib\log4j-1.2.15.jar
set MY_CLASSPATH=%MY_CLASSPATH%;%MY_ROOT_PATH%lib\jmxremote_optional.jar
set MY_CLASSPATH=%MY_CLASSPATH%;%MY_ROOT_PATH%lib\commons-io-1.3.2.jar
set MY_CLASSPATH=%MY_CLASSPATH%;%MY_ROOT_PATH%sigar-bin\lib\sigar.jar
rem set the path to the native Sigar library (OS dependent)
set MY_SIGAR_LIB_DIR=%MY_ROOT_PATH%sigar-bin\lib\
rem set the JVM arguments here
set -Djava.library.path="%MY_ROOT_PATH%sigar-bin\lib>"
rem set MY_JMV_ARGS="-Xms256M -Xmx512M "
rem set the program arguments here
set CONF_PROP_ARG="-Dtalend_props=%MY_CONF_PROP%"
rem concatenate all classpaths
rem concatenate all jvm arguments
set ALL_JVM_ARGS=%ALL_JVM_ARGS% -Djava.library.path=%MY_SIGAR_LIB_DIR%

rem Java command line
%MY_JAVA% %ALL_JVM_ARGS% -classpath "%ALL_CLASSPATH%" %MY_CLASS% %MY_PROG_ARGS% 12_26_50-Remote Desktop Manager [srvxatal2 - Serveur d\'ex

Re: tWebService component to work on the jobServer

If you are using Java 1.7 on Windows please update your jsl_static64.exe to a more recent version. This has been reported already to development as a problem with the packaged version:
Let us know if this helps. Thanks!
One Star

Re: tWebService component to work on the jobServer


I installed the latest jsl version (try with Release 0.99m and latest 0.99o)
doesn't seem to work either
thank you for your help

here is the log when I start it in debug mode : jsl_static64.exe -debug
:1395169418: Start loading params
Module name decomposed D: \Talend\5.3.1\JobServer\conf\ jsl_static64 .exe
Ini file path final D:\Talend\5.3.1\JobServer\conf\jsl_static64.ini
Final ini file decomposed D: \Talend\5.3.1\JobServer\conf\ jsl_static64 .ini
Ini file: cmdline =
Finally: cmdline =
:1395169418: Loaded module path
Ini file: jrepath = C:\Program Files\Java\jdk1.7.0_45
Finally: jrepath = C:\Program Files\Java\jdk1.7.0_45
Ini file: jvmtype = server
Finally: jvmtype = server
Ini file: dependencies =
Finally: dependencies =
Ini file: starttype = auto
Finally: starttype = auto
Ini file: account =
Finally: account =
Ini file: password =
Finally: password =
Ini file: loadordergroup = someorder
Finally: loadordergroup = someorder
Ini file: wrkdir =
Finally: wrkdir =
Ini file: appname = TalendJobServer
Finally: appname = TalendJobServer
Ini file: servicename = TalendJobServer
Finally: servicename = TalendJobServer
Ini file: displayname = Talend JobServer
Finally: displayname = Talend JobServer
Ini file: servicedescription = Talend JobServer
Finally: servicedescription = Talend JobServer
Ini file: stdout =
Finally: stdout =
Ini file: stderr =
Finally: stderr =
Ini file: stdoutappend = no
Finally: stdoutappend = no
Ini file: stderrappend = no
Finally: stderrappend = no
Ini file: systemout =
Finally: systemout =
Ini file: systemerr =
Finally: systemerr =
Ini file: systemoutappend = no
Finally: systemoutappend = no
Ini file: systemerrappend = no
Finally: systemerrappend = no
Ini file: interactwithdesktop = no
Finally: interactwithdesktop = no
Ini file: onexiterror = ignore
Finally: onexiterror = ignore
Ini file: reportservicestoppedonmainthreadexit = no
Finally: reportservicestoppedonmainthreadexit = no
Ini file: stopclass = java/lang/System
Finally: stopclass = java/lang/System
Ini file: stopmethod = exit
Finally: stopmethod = exit
Ini file: stopsignature = (I)V
Finally: stopsignature = (I)V
Ini file: stopparams = STOP "OR NOT STOP"
Finally: stopparams = STOP "OR NOT STOP"
Ini file: pauseclass =
Finally: pauseclass =
Ini file: pausemethod =
Finally: pausemethod =
Ini file: pausesignature =
Finally: pausesignature =
Ini file: pauseparams =
Finally: pauseparams =
Ini file: contclass =
Finally: contclass =
Ini file: contmethod =
Finally: contmethod =
Ini file: contsignature =
Finally: contsignature =
Ini file: contparams =
Finally: contparams =
Ini file: confirmrunclass =
Finally: confirmrunclass =
Ini file: confirmrunmethod =
Finally: confirmrunmethod =
Ini file: confirmrunsignature =
Finally: confirmrunsignature =
Ini file: confirmrunparams =
Finally: confirmrunparams =
Ini file: premainclass =
Finally: premainclass =
Ini file: premainmethod = run
Finally: premainmethod = run
Ini file: premainsignature = ()I
Finally: premainsignature = ()I
Ini file: premainparams =
Finally: premainparams =
Ini file: useconsolehandler = false
Finally: useconsolehandler = false
Ini file: path =
Finally: path =
Ini file: modulepath =
Finally: modulepath =
:1395169418: Loaded module path
Ini file: export = CLASSPATH,PATH
Finally: export = CLASSPATH,PATH
Ini file: CLASSPATH =
Finally: CLASSPATH =
Ini file: PATH = %PATH%
After subsitution: PATH =
From environment: PATH = D:\oracle\ora1123\product\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\
Finally: PATH = D:\oracle\ora1123\product\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\
Ini file: param00 = -cp
Finally: param00 = -cp
:1395169418: After JVM type check
:1395169418: After service options
:1395169418: After ini file options
:1395169418: Params:
Ini file: param00 = -cp
Finally: param00 = -cp
:1395169418: -cp
Ini file: param01 = D:\Talend\5.3.1\JobServer;D:\Talend\5.3.1\JobServer\lib\jmxremote_optional.jar;D:\Talend\5.3.1\JobServer\lib\log4j-1.2.15.jar;D:\Talend\5.3.1\JobServer\lib\commons-io-1.3.2.jar;D:\Talend\5.3.1\JobServer\lib\jsl.jar;D:\Talend\5.3.1\JobServer\sigar-bin\lib\sigar.jar
Finally: param01 = D:\Talend\5.3.1\JobServer;D:\Talend\5.3.1\JobServer\lib\jmxremote_optional.jar;D:\Talend\5.3.1\JobServer\lib\log4j-1.2.15.jar;D:\Talend\5.3.1\JobServer\lib\commons-io-1.3.2.jar;D:\Talend\5.3.1\JobServer\lib\jsl.jar;D:\Talend\5.3.1\JobServer\sigar-bin\lib\sigar.jar
:1395169418: D:\Talend\5.3.1\JobServer;D:\Talend\5.3.1\JobServer\lib\jmxremote_optional.jar;D:\Talend\5.3.1\JobServer\lib\log4j-1.2.15.jar;D:\Talend\5.3.1\JobServer\lib\commons-io-1.3.2.jar;D:\Talend\5.3.1\JobServer\lib\jsl.jar;D:\Talend\5.3.1\JobServer\sigar-bin\lib\sigar.jar
Ini file: param02 = -Djava.library.path=D:\Talend\5.3.1\JobServer\sigar-bin\lib\
Finally: param02 = -Djava.library.path=D:\Talend\5.3.1\JobServer\sigar-bin\lib\
:1395169418: -Djava.library.path=D:\Talend\5.3.1\JobServer\sigar-bin\lib\
Ini file: param03 =
Finally: param03 =
Ini file: param04 = -Dtalend_props=D:\Talend\5.3.1\JobServer\conf\
Finally: param04 = -Dtalend_props=D:\Talend\5.3.1\JobServer\conf\
:1395169418: -Dtalend_props=D:\Talend\5.3.1\JobServer\conf\
Ini file: param05 = org.talend.remote.jobserver.service.WindowsJobServer
Finally: param05 = org.talend.remote.jobserver.service.WindowsJobServer
:1395169418: org.talend.remote.jobserver.service.WindowsJobServer
:1395169418: -Dservice.stop.port=0 -Dservice.path=D:\Talend\5.3.1\JobServer\conf\ -Dservice.inifile=D:\Talend\5.3.1\JobServer\conf\jsl_static64.ini -cp D:\Talend\5.3.1\JobServer;D:\Talend\5.3.1\JobServer\lib\jmxremote_optional.jar;D:\Talend\5.3.1\JobServer\lib\log4j-1.2.15.jar;D:\Talend\5.3.1\JobServer\lib\commons-io-1.3.2.jar;D:\Talend\5.3.1\JobServer\lib\jsl.jar;D:\Talend\5.3.1\JobServer\sigar-bin\lib\sigar.jar -Djava.library.path=D:\Talend\5.3.1\JobServer\sigar-bin\lib\ -Dtalend_props=D:\Talend\5.3.1\JobServer\conf\ org.talend.remote.jobserver.service.WindowsJobServer
Debugging Talend JobServer.
:1395169418: prepare stdxxx - end
:1395169418: service starting
:1395169418: starting java
Now starting JVM
:1395169418: java starting 1
:1395169418: Searching for JVM path in ini file
:1395169418: Found JVM path in ini file
:1395169418: Path for JVM:
:1395169418: D:\oracle\ora1123\product\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.7.0_45\jre\bin
Path for JVM: D:\oracle\ora1123\product\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.7.0_45\jre\bin
:1395169418: Found jvmtype:
:1395169418: C:\Program Files\Java\jdk1.7.0_45\jre\bin\server\jvm.dll
:1395169418: JVM DLL:
:1395169418: C:\Program Files\Java\jdk1.7.0_45\jre\bin\server\jvm.dll
JVM DLL: C:\Program Files\Java\jdk1.7.0_45\jre\bin\server\jvm.dll
:1395169418: java starting 2
:1395169418: java starting 3
:1395169418: -Dservice.stop.port=0
:1395169418: -Dservice.path=D:\Talend\5.3.1\JobServer\conf\
:1395169418: -Dservice.inifile=D:\Talend\5.3.1\JobServer\conf\jsl_static64.ini
:1395169418: -cp
:1395169418: D:\Talend\5.3.1\JobServer;D:\Talend\5.3.1\JobServer\lib\jmxremote_optional.jar;D:\Talend\5.3.1\JobServer\lib\log4j-1.2.15.jar;D:\Talend\5.3.1\JobServer\lib\commons-io-1.3.2.jar;D:\Talend\5.3.1\JobServer\lib\jsl.jar;D:\Talend\5.3.1\JobServer\sigar-bin\lib\sigar.jar
:1395169418: -Djava.library.path=D:\Talend\5.3.1\JobServer\sigar-bin\lib\
:1395169418: -Dtalend_props=D:\Talend\5.3.1\JobServer\conf\
:1395169418: org.talend.remote.jobserver.service.WindowsJobServer
:1395169418: java starting 4
:1395169418: java starting 4.1
:1395169418: java starting 4.2
:1395169418: java starting 4.3
ControlHandler registered after JVM start
:1395169418: java starting 4.4
:1395169418: java starting 5
:1395169418: java stThis is the System.out stream
INFO TalendJobServerMain - Starting the Talend Job server agent
INFO TalendJobServerMain -
!! !!
!! Talend Job server agent !!
!! Version: 5.3.1 Compatible with versions: 5.1.1, 5.1.2, 5.1.3, 5.2.1, 5.2.2, 5.3.1 !!
!! !!
INFO PropertiesLoader - Loading Properties from file: 'D:\Talend\5.3.1\JobServer\conf\'
INFO TalendJobServer - PROPERTIES: List of input properties:
java.endorsed.dirs=C:\Program Files\Java\jdk1.7.0_45\jre\lib\endorsed
java.ext.dirs=C:\Program Files\Java\jdk1.7.0_45\jre\lib\ext;C:\Windows\Sun\Java\lib\ext
java.home=C:\Program Files\Java\jdk1.7.0_45\jre\Users\CA-PHI~1\AppData\Local\Temp\2\
java.rmi.server.randomIDs=true SE Runtime Environment
java.runtime.version=1.7.0_45-b18 Platform API Specification
java.specification.vendor=Oracle Corporation
java.vendor=Oracle Corporation
java.version=1.7.0_45 mode HotSpot(TM) 64-Bit Server VM Virtual Machine Specification
java.vm.specification.vendor=Oracle Corporation
java.vm.vendor=Oracle Corporation
os.arch=amd64 Server 2008 R2
sun.boot.class.path=C:\Program Files\Java\jdk1.7.0_45\jre\lib\resources.jar;C:\Program Files\Java\jdk1.7.0_45\jre\lib\rt.jar;C:\Program Files\Java\jdk1.7.0_45\jre\lib\sunrsasign.jar;C:\Program Files\Java\jdk1.7.0_45\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.7.0_45\jre\lib\jce.jar;C:\Program Files\Java\jdk1.7.0_45\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.7.0_45\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.7.0_45\jre\classes
sun.boot.library.path=C:\Program Files\Java\jdk1.7.0_45\jre\bin
sun.jnu.encoding=Cp1252 64-Bit Tiered Compilers
sun.os.patch.level=Service Pack 1
PROPERTIES: End of list.
INFO MultiSocketServer - FileServer Started on
INFO CommandServerSocket - System property recovery.enabled=null => recovery is enabled
INFO CommandServerSocket - Option jobLauncher disabled, the default value will be used.
INFO MultiSocketServer - CommandServer Started on
INFO OSInformationAgent - Talend OS Information agent Version: 2.0.0
INFO OSInformationAgent - Create the MBean server with service URL: service:jmx:jmxmp://localhost:8888
INFO AbstractDataCleaner - JobServerCleaner started.
INFO OsInfoRetriever - Search for monitoring library in java.library.path: D:\Talend\5.3.1\JobServer\sigar-bin\lib\
INFO JobServerCleaner - TempDataCleaner (doAction=true), 1 executions logs cleaned, 3 cached libs cleaned
INFO OSInformationAgent - Register the OsInfoRetrieverMBean
INFO OSInformationAgent - Create and start the JMX connector server
INFO OSInformationAgent - jmxServiceURL = service:jmx:jmxmp://localhost:8888
INFO OSInformationAgent - The JMX connector server successfully started.
INFO TalendJobServer - =========== JobServer successfully started ===========
WARN TypedProperties - !!! PROPERTY NOT FOUND !!!: the key 'org.talend.monitoring.jmx.server.OsInfoRetriever.OS_PARTITIONS' can't be found in the JobServer properties file, the default value '[]' will be used, please be sure this is not an anomaly.
INFO JobOutputManager - System property "traceFileHandles.dirPath" has the value 'null', traceFileHandles will be disabled.
One Star

Re: tWebService component to work on the jobServer


additional information

We also have same problem with development workstation.
If we launch the job within talend studio it works fine (screenshot #1)
But if we export the job (run with batch file or run on the target server) the tWebService component give us the same error. (screenshot #2)

thank you

Re: tWebService component to work on the jobServer

Confirmed fix: Remove the JRE and only leave the JDK installed.
One Star

Re: tWebService component to work on the jobServer

How to write the fatal error to file in talend using log4j