Currently I am really short on time so that I cannot get the next release of the JasperReportsIntegration out of the door ... but some people are struggling with the encrypt_passwords.sh / encrypt_passwords.cmd functionality.
Thus I might just explain the workaround.
It seems like the libraries have changed over time, initially the functionality has worked.
When trying to use the functionality you will get the following error message:
bin]$ ./encryptPasswords.sh /opt/oracle/JasperReportsIntegration2.4/conf/application.properties Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableException at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:763) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:467) at java.net.URLClassLoader.access$100(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:368) at java.net.URLClassLoader$1.run(URLClassLoader.java:362) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
The library commons-lang-2.6.jar needs to be included manually. Thus, in order to fix it:
- Download commons-lang-2.6.jar ( e.g. from here: http://www-eu.apache.org/dist//commons/lang/binaries/commons-lang-2.6-bin.zip )
- Place the commons-lang-2.6.jar into the directory lib
- Change the contents of encryptPasswords.sh
########################################################### # set the environment for JasperReportsIntegration first ########################################################### CP="../lib/JasperReportsIntegration-2.4.0.0.jar:../lib/log4j-1.2.15.jar:../lib/commons-configuration-1.8.jar:../lib/velocity-1.7-dep.jar:../lib/jasperreports-6.4.3.jar:../lib/commons-logging-1.1.1.jar:../lib/commons-codec-1.5.jar:../lib/commons-lang-2.6.jar" # pass ALL parameters to the class java -cp $CP main/CommandLine encryptPasswords "$@"
- Change the contents of encryptPasswords.cmd
@echo off REM ########################################################### REM # set the environment for JasperReportsIntegration first REM ########################################################### set DIR=%~dp0 pushd %DIR%\.. set OC_JASPER_CONFIG_HOME=%CD% popd set CP="%OC_JASPER_CONFIG_HOME%/lib/JasperReportsIntegration-2.4.0.0.jar;%OC_JASPER_CONFIG_HOME%/lib/log4j-1.2.15.jar;%OC_JASPER_CONFIG_HOME%/lib/commons-configuration-1.8.jar;%OC_JASPER_CONFIG_HOME%/lib/velocity-1.7-dep.jar;%OC_JASPER_CONFIG_HOME%/lib/jasperreports-6.4.3.jar;%OC_JASPER_CONFIG_HOME%/lib/commons-logging-1.1.1.jar;%OC_JASPER_CONFIG_HOME%/lib/commons-codec-1.5.jar" REM pass ALL parameters to the class java -cp %CP% main/CommandLine encryptPasswords %*
Does that work for you?
Cheers,
~Dietmar.