YAJSW Changelog

What's new in YAJSW 13.00

May 13, 2021
  • Support for java 8+
  • Support for running modules (jpms)
  • GenConfig support for command lines with -p and -m

New in YAJSW 12.16 (Apr 20, 2021)

  • Bug and security update:
  • Security update: groovy, velocity, netty, CryptoConstants
  • Logging in GInterpolator
  • NPE in DateFileHandler
  • Error parsing java command line
  • Sigar crashes jdk11 -> revert to jna
  • Bug: groovy script deadlock

New in YAJSW 12.15 (Mar 31, 2021)

  • Bug: state change shell script not executed
  • New: posix: support for systemd per default @see docs for details.
  • Bug: posix: use java prop java.home instead of java_home
  • New: WRAPPER_MANAGER.keystore(key): access keystore from within the application.
  • Bug: evaluating property x = ${x} results in recursion overflow
  • Bug: read-only exception in configuration2.EnvironmentConfiguration @see https://sourceforge.net/p/yajsw/support-requests/38/
  • Change: use sigar to get subprocess cpu, memory, handles
  • Change: upgrade vulnerable libs
  • Note: this is the last release to support java 1.7. The next relase will support JDK8 - JDK 14

New in YAJSW 12.14 (Mar 31, 2021)

  • Tested with java 12 on win 10 and centos 6
  • Update to gradle 5.4.1, NOTE: build now requires java 8 for gradle and java 7 for compile
  • Upgrade commons: cli 1.4, configurtion2 2.5, io 2.6, lang3 3.9, vfs2 2.3
  • Upgrade to latest netty 4.1.36
  • Merge commit '4ee1a695981821bf253d70cbc5f566e1161b0bbf'
  • Updating static Loggers to use InternalLogger
  • Adding Groovy runtime classes with static logging
  • Avoid WARNING: An illegal reflective access operation has occurred in groovy. NOTE: workaround until availability of groovy 3.0.0 where this should be resolved.
  • Upgrade to latest jna 5.3.1
  • Upgrade to latest stable groovy-2.5.7
  • Bug: random hard kill on restart
  • Merge Request #8: Relativize classpath entries wrt working directory
  • NOTE: new configuration property: wrapper.java.app.relativize_classpath

New in YAJSW 12.13 (Aug 13, 2018)

  • Change: bash scripts
  • Bug: stop app not started
  • Change: posix signal: log signal, set default to shutdown on 9, extend docs.
  • Bug: remove pid file, velocity syntax

New in YAJSW 12.12 (Feb 17, 2018)

  • Bug: Windows Java 9 won't Run via YAJSW: updated jna
  • Bug: UAC elevation doesn't remember setting of wrapper.home: updated setenv.bat
  • New: Removing symbolic links configured by chkconfig: new configuration properties: chkconfig_start_priority, chkconfig_stop_priority, updated daemon.vm
  • Update: API is Missing an Interface: updated documenation
  • Bug: wrapper doesn't delete pidfile
  • New: How to rotate and compress logs. new configuration property: wrapper.logfile.compress compress older file when rotating
  • Change: Small fixes/improvements to the Bash scripts. thanks to deliriumsky for the patch
  • New: Support for systemd: installDaemonD.sh, installDaemonNoPrivD.sh, uninstallDaemonD.sh, thanks to deliriumsky for the patch

New in YAJSW 12.11 (Oct 9, 2017)

  • Bug: windows: wrapper.affinity should support up to 64 processors
  • Bug: wrong yajsw version logged

New in YAJSW 12.10 (Oct 4, 2017)

  • New: wrapper.ping.check_ack property for bidirectional ping check
  • New: wrapper.delay_shutdown property. Delay shutdown to allow scripts, such as emails to terminate.
  • Bug: bad manifest
  • Bug: windows: wrapper.affinity should support up to 64 processors
  • Bug: NPE when executing shell script
  • Bug: Posix: cannot start process if wrapper.java.additional contains blank
  • Bug: Cannot start jboss wildfily since 12.09: groovy-patch: disable java logging.
  • Change: do not show messages "INFO: lib not found" for extended libs.

New in YAJSW 12.09 (May 29, 2017)

  • Change: do not expose internaly required ports to the network. use localhost loopback.
  • Change: tray open console performance.
  • Change: upgrade beanutils. @see https://sourceforge.net/p/yajsw/bugs/131/
  • Change: jvm controller: ignore key message if we already received correct key.
  • Change: update tp netty-all-4.0.47. @see: https://sourceforge.net/p/yajsw/support-requests/25/
  • Change: update to groovy-2.4.11 @see https://sourceforge.net/p/yajsw/support-requests/26/
  • Bug: communication between wrapper and app is not logged
  • Bug: @see https://sourceforge.net/p/yajsw/discussion/810311/thread/4dad0e51/. Update to jna-4.2.2
  • Bug: posix JAVA_HOME bug. @see https://sourceforge.net/p/yajsw/patches/12/

New in YAJSW 12.08 (Apr 25, 2017)

  • Bug: Unix supplemental groups
  • Bug: setting jna_tmp has no effect
  • Change: update to jna-4.2.2 + aix64 lib

New in YAJSW 12.01 Beta (May 5, 2015)

  • Bug: Quotes in java command line
  • Bug: multiple bugs in RuntimeJavaMain
  • Change: switched from quartz to yacron4j.
  • Change: removed pause from batch files.
  • Change: updated groovy and netty libs
  • New: Configuration property: wrapper....script..maxConcInvoc
  • New: Support for vfs-dbx (dropbox). thus command files and automatic updates can be done from dropbox.
  • New: Configuration property: wrapper.debug.level
  • New: Configuration property: wrapper.filter.debug.default
  • New: Configuration properties: wrapper.wrapperJar, wrapper.appJar
  • New: Configuration property: wrapper.logfile.desc
  • Patch: Make the console output fill the window when resized
  • Patch: Startup under AIX 7.1 fails due to StringIndexOutOfBoundsException
  • Patch: Fix "No such file or directory" error on Mac OSX with Java 1.7
  • Patch: Fix getPid() in MacOSXService
  • Patch: MacOSX: Make sure that install script works on vanila machines (when no custom services installed yet and directory is not exists)
  • Patch: made sure wrapper works on Mac when installed in directory with spaces
  • Patch: MacOsxService does not append configuration parameters to the execution command

New in YAJSW 12.00 Alpha (Sep 19, 2014)

  • Bug: WrappedRuntimeProcess: sort arguments according to configuration keys
  • Change: update to latest jars: commons-collections-3.2.1, commons-configuration-1.10, jna-4.1.0, netty-all-5.0.0.Alpha2-SNAPSHOT, groovy-all-2.3.0-beta-2
  • Change: move groovy dependency to lib/extended
  • Change: do not add passwords to command line of processes or services
  • Change: minor logging changes and other minor changes.
  • Change: license change - see documentation
  • Change: regex in configuration files: switched from jrexx to dk.brics.automaton. moved jar to lib/extended. functionality is thus optional. NOTE: regex syntax may have changed

New in YAJSW 11.11 (Sep 19, 2014)

  • Bug: on application restart: stream of prev process is open although new process started.
  • Bug: 11.10 zip file incorrect version
  • Bug: Linux: quotes and spaces in command line paths
  • Bug: Bug: WrappedRuntimeProcess: mkdirs if folder for pid file does not exist
  • Bug: Minor changes in RuntimeJavaMain
  • Bug: missing .processTerminated invocation in WrappedRuntimeProcess
  • Bug: NPE when restartGC is set but no no output format is set.
  • Change: logging in gobbler
  • New: new: Property wrapper.ntservice.process_priority

New in YAJSW 11.08 (Oct 30, 2013)

  • Bug: System tray icon on windows 7
  • Change: check java 7 also for wrapped application and system tray icon
  • Change: notify port issues for system tray icon

New in YAJSW 11.07 (Jul 9, 2013)

  • Bug: checking java 7 Bug: Memory Leak -> update to netty 3.5.6
  • Bug: wrapped applications started concurrently may have the same out_, err_, in_ file names.
  • Change: forward wrapper java options used in the configuration to the wrapped application
  • New: new property: wrapper.ntservice.reduce_signals
  • New: new property: wrapper.console.use_interpolated
  • New: new property: wrapper.app.status.log.lines

New in YAJSW 11.06 (Apr 20, 2013)

  • Bug: Jna tmp folder
  • Bug: yajsw prints wrong version
  • Bug: netty: do not use sun.misc.Unsafe, this may crash the JVM (we do not need high performance)
  • Bug: windows >= vista and java >= 7: check that java.net.preferIPv4Stack=true is set and set it in the windows batch file and service command line
  • Bug: possible loop in JVMController.processStarted()
  • Change: minor changes in WrappedJavaProcess.getDOption(), WrappedJavaProcess.reconnect()
  • New: new property: wrapper.restart.reload_cache
  • New: script: vfsCommandCondition.gv

New in YAJSW 11.05 (Mar 11, 2013)

  • Bug: WrapperJVMMain.WRAPPER_MANAGER.signalStopping() is broken
  • Bug: while (true) {wrappedJavaProcess.init(); wrappedJavaProcess.start(); wrappedJavaProcess.stop() } fails to immediatly stop the application.
  • Bug: NPE in WrapperManagerImpl
  • Bug: [3605341] NoClassDefFoundError: org/rzo/yajsw/srvmgr/server/Ser Change: WrappedProcess.start() now resets the restart counter.

New in YAJSW 11.04 (Jan 10, 2013)

  • New: Autoupdate of wrapper and application. see documentation for details
  • New: command "-rw": remove and wait until the service has been removed.
  • New: property wrapper.logfile.maxdays
  • Bug: Installing a multi-config wrapper as daemon
  • Bug: AIX, FreeBSD: Undefined symbol "stdout", error installing daemon
  • Bug: Mac OS Can't connect to Window
  • Bug: wrapper.app.env broken in 11.03 Bug: wrapper.cleanup_tmp not working as supposed
  • Bug: Nested braces / absolute path in wrapper.conf
  • Bug: Changed VFS so that it does not use an xml parser
  • Bug: shutdown wait timeout negative
  • Bug: JarBuilder: Source code discrepancy
  • Change: make yajsw less talkative if wrapper.debug is not set.

New in YAJSW 11.03 (Aug 28, 2012)

  • Bug: 11.02 does not work with Java 1.5
  • Bug: .svn dir in src\ahessian\org\jboss\netty\handler\ipfilter
  • Bug: java.io.IOException: The handle is invalid -> print message instead of stack trace
  • Bug: configuration file: error evaluating include directives with env vars.
  • Bug: Problems geting stdout with Solaris 10 sparc:
  • Bug: Windows: totalRAM in WindowsXPSystemInformation
  • Bug: commons logging, default (log4j) does not log to file.
  • Bug: Error creating wrapper.app.pre.script
  • Bug: Application could not restart due to hacker TCP/IP connection to wrapper controller
  • Bug: ahessian may hang similar to java bug in ReentrantLock
  • Change: when setting environment vars: use javas System.getEnv()
  • Change: Executing jar files: classpath from manifest are added to the classpath of the application.
  • New: wrapper.config.script. for user defined scripts within the configuration
  • New: decode.gv groovy script for decoding properties within the configuration file
  • New: wrapper.script..: allow multiple scripts for the same state transition. For compatibility wrapper.script. will be interpreted as being set to "". Execution order of the scripts is the alpha-numeric order of
  • New: Unset properties by setting ${return null}
  • New: \r\n line endings: wrapper.logfile.format=LPNTM\r\n
  • New: property wrapper.cleanup_tmp default: true, clean up the tmp folder of err_ ... files at startup. Note: jna cleans up its files at startup.
  • New: property wrapper.tray.spawn_process

New in YAJSW 11.0 Beta (Feb 25, 2012)

  • Bug: System tray icon causes exception Bug: genConfig: does not handle jdk 6 wildcard in classpath. Bug: error resolving wild cards in case classpath is "lib/ folder/*" Bug: Specifying java command in environment: better logging if command not found. Bug: Not equals configuration under Windows and Unix: replaced in unix batches yajsw with wrapper !! Change: wrapper.java.customProcName: if this is an absolute path, the given path is used. Change: wrapper.java.command must be a file: Windows: if .exe is missing it is automatically added. Change: Enhanced logging when determining java command. Change: update to jna release 3.4.0 Change: update to netty release 3.3.1 New: Configuration property wrapper.save_interpolation, default: value true New: Configuration properties for windows services: wrapper.ntservice.delayed_autostart, wrapper.ntservice.failure_actions.reset_period, wrapper.ntservice.failure_actions.reboot_msg, wrapper.ntservice.failure_actions.command, wrapper.ntservice.failure_actions.action, wrapper.ntservice.failure_actions.action_delay New: property wrapper.ntservice.java.command for running the service with a java command different then wrapper.java.command.

New in YAJSW 10.10 Beta (Oct 18, 2011)

  • Bug: genConfig: error parsing jvm options.
  • Bug: process may not restart, if application start fails after first restart
  • Bug: tray icon: possible port leak if connection fails.
  • Bug: tray icon: multicast discovery: may cause message flood if running on multiple computers in a network
  • Bug: windows: install service: bad java exe
  • Bug: application not started on linux: new property: wrapper.fork_hack Bug: Linux: application restarts every 25 days.
  • Change: tray icon: windows: close popup menue on mouse click. note: java implements this only with awt, not with swing -> using jna to listen to mouse events outside java. If anyone knows how to implement this for linux, pls let me know.
  • Change: split ahessian.jar -> ahessian.jar, hessian4.jar in future these may be extracted to a separate project.
  • Change: AbstractWrappedProcess: remove synchronized from stop(), so we can stop a process while it is restarting/starting.
  • New: added authentication to sendMail script.
  • New: windows: UAC support: WrapperExe: if required, elevate process for service start, stop, install, remove. New: windows: support service installation with delayed autostart: wrapper.ntservice.starttype=DELAYED_AUTO_START
  • New: tray icon: property wrapper.tray.look_and_feel = New: tray icon: display virtual and private memory.