After I installed fix pack 6.1.0-WS-MB-WinIA32-FP0011 the configuration manager throws a verification error at start.
It complains the java level:
Verification failed. The required Java level ''1.5.0'' was not found.
The MQSI_JREPATH is set in mqsiprofile and in the PATH.
Thank you.
EDIT:
javaw.exe -Xshareclasses:destroy in the Message Broker Toolkit Directory /jdk/jre/bin
The CVP process checks for a supported level of java before loading the copmonents. If you are sure that your java level is supported then you can disable this checking using the environment variable:
MQSI_DISABLE_CVP=1
Remember on windows you ened to set this in your mqsiprofile.cmd script and then start a new command window and restart the config manager.
On unix platforms you simply need to export the value in the shell before you start the config manager.
I would also advise doing a little problem determination, you can use the command "which java" on unix to determine the java installation being used. This should return a jre within the MQSI_FILEPATH folder
You can also do java -version to list the jre that the shell is picking up prior to launching the broker.
If after checking these you think that CVP is incorrectly identifying your java level as an unsupported version then I would suggest raising a PMR (but you can keep the env var set to diable CVP just to get you going.)
Related
We are trying to change how we manage our QA Enviroments.
Till now we have installed Coldfusion using the Adobe Installer that install a modified Tomcat.
We want to manage the QA server using CommandBox Tool that installs Coldfusion in JEE install mode using war file, but situation will be similar with any of the supported JEE Application Server. (EAP, Wildfly, Tomcat).
We have little experience in using Coldfusion in the JEE install mode then several questions arise regarding the JVM Settings.
Below the JVM Setting we got after install CF using the Adobe Standard installer, accessing the Coldfusion (CF) Administrator (here for a fresh installation of a CF2018):
--add-modules=java.xml.ws
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/sun.util.cldr=ALL-UNNAMED
--add-opens=java.base/sun.util.locale.provider=ALL-UNNAMED
--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
-Dcoldfusion.classPath={application.home}/lib/updates,{application.home}/lib,{application.home}/lib/axis2,{application.home}/gateway/lib/,{application.home}/wwwroot/WEB-INF/cfform/jars,{application.home}/wwwroot/WEB-INF/flex/jars,{application.home}/lib/oosdk/lib,{application.home}/lib/oosdk/classes
-Dcoldfusion.home={application.home}
-Dcoldfusion.jsafe.defaultalgo=FIPS186Random
-Dcoldfusion.libPath={application.home}/lib
-Dcoldfusion.rootDir={application.home}
-Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true
-Djava.awt.headless=true
-Djava.locale.providers=COMPAT,SPI
-Djava.security.auth.policy={application.home}/lib/neo_jaas.policy
-Djava.security.policy={application.home}/lib/coldfusion.policy
-Djava.util.logging.config.file={application.home}/lib/logging.properties
-Djdk.attach.allowAttachSelf=true
-Dorg.apache.coyote.USE_CUSTOM_STATUS_MSG_IN_HEADER=true
-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.JavaUtilLog
-Dsun.font.layoutengine=icu
-XX:+UseParallelGC
-XX:MaxMetaspaceSize=192m
-Xbatch
-Xdebug
-Xms256m
-Xmx1024m
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6006
-server
Q1. the Coldfusion war have inside it the JVM settings (we have written above) and will apply it during deploy?
Q2. if answer to is no!, what are the settings that are applicable according the JEE Application Server used (i.e. some settings are ok for Tomcat but meaniless for wildfly).
We were able to find specific documentation from Adobe for Coldfusion 2018 (https://helpx.adobe.com/it/coldfusion/installing/coldfusion-2018-install-jee-configuration.html).
The number of settings is incredible low comparing with the standard one!:
-Djava.locale.providers=COMPAT,SPI
-Dcoldfusion.disablejsafe=true
-Djdk.attach.allowAttachSelf=true
-Djdk.serialFilter= !org.mozilla.**;!com.sun.syndication.**
We were not able to find similar documentationfor Coldfusion 2021 (latest release).
Till now trying to get help from Adobe has been produce not effective results.
Thanks in advance
Adobe isn't going to help you support an installation via CommandBox, you need to talk to Ortus Solutions about that. Every JVM setting available in CF Admin for Standard is not displayed in the UI for CF Enterprise. You're looking for the CF install folder for the instance you have (non-CB version), find a file called jvm.config.
https://www.cfguide.io/coldfusion-administrator/server-settings-java-jvm/
In ColdBox, you can set everything via the command line or use a server.json file to do that same configuration.
https://commandbox.ortusbooks.com/embedded-server/configuring-your-server/jvm-args
Here's an example from a CB install I have on a Mac where I'm running an older version of CF that requires an older JDK, but I've also set the heapSize.
{
"jvm": {
"javaHome": "/Library/Java/JavaVirtualMachines/jdk1.7.0_15.jdk/Contents/Home",
"heapSize": 1024
}
}
What I would suggest is
export your existing CF Admin settings to a .car file
log in to your ColdBox server's CF Admin
import the .car file
adjust all the settings (DSN, etc) for your QA server
go to the command line and install the CFConfig plugin
export all the CF Admin settings to a JSON file (instructions in their docs)
save that to a private repo or your secrets / passwords vault.
Join the BoxTeam Slack where you can find the CommandBox community and ask more questions.
I'm stuck on a problem with WSO2 ESB that I can't figure out and believe...
I've installed localy an ESB for testing my implementation. I added in my installation dir in the component library a custom mediator. I restarted the esb everything was fine but I had an error in my mediator. I stopped the ESB and wanted to start it again. No errors, no logs nothing just those informations in the logs:
C:\Tools\esb\wso2esb-5.0.0\bin>wso2server.bat
JAVA_HOME environment variable is set to C:\Program Files\Java\jre8
CARBON_HOME environment variable is set to C:\Tools\WSO2ES~1.0\bin\..
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support
log4j:WARN No appenders could be found for logger (org.wso2.securevault.commons.MiscellaneousUtil).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
After a while searching what could have happend I removed the jar. Same behavior. I created a brand new installation and started it -> same behavior.
I feel kind of lost as there's no logs, no errors, no timeout, nothing just those 5 lines of logs... Please help me!
ESB Version 5.0.0
Thanks and cheers,
Frédéric
I've found a part of an answer. Or at least I've a theory:
I setted in the lib directory my jar-with-dependencies => we should add only the compilated jar file without dependency and add external dependencies manually aswell in the lib folder! I had a Junit library in my jar-with-dependency therefore I became this log4j error probably.
For the problem with the new installation, somehow when you have started your esb inside a console in windows and you don't close it and switch to a new installation folder it still start the old installation instead of the new one. Therefore I though that the errors where still coming or something like this, probably because the JVM wasn't shutdown correctly. or at least it's what I expect!
I think that your CARBON_HOME should be C:\Tools\WSO2ES~1.0\ (without bin in the path).
Not sure if this can be the only reason.
I need to run the mandatory update for ColdFusion 10 so I can apply the later updates to the server. I downloaded the file and tried the instructions listed here: Mandatory Update Instructions.
I have a singular instance, so this should be fairly straightforward. I download the file, place it in the "hf-updates" folder, and then do java -jar cf10_man_updt.jar and I get the following notice:
Graphical installers are not supported by the VM. The console mode
will be used instead...
The installer proceeds to hang and fails to complete. I then go to option #2: Silent mode. I create my properties file and then do java -jar cf10_mdt_updt.jar -i silent -f install.cfg.txt. I get the following message:
Installer User Interface Mode Not Supported
Unable to load and to prepare the installer in console or silent mode.
This one has the courtesy to actually terminate so I don't have to close the command prompt window to retry, but I'm still nowhere. Any ideas on what I can do?
Alex provided the correct answer. I had been using the JRE in my program files folder (explicitly, actually. There was no javapath to speak of in the environment variables. I shorthanded the command for the sake of brevity). I changed the command to "C:\Coldfusion10\cfusion\jre\bin\java" -jar cf10_mdt_updt.jar and the install ran successfully.
Installed WSO2 BAM and AM today and I'm trying to get the API usage statistics to work. I can submit API requests that get authenticated and passed through correctly, but no statistics.
From API UI when I go to Statistics I get:
"No data found. Check BAM server connectivity ..."
The BAM server is up and running and I can login to it.
However in the BAM logs I see this:
ERROR {org.apache.hadoop.hive.ql.exec.ExecDriver} - Exception: Cannot run program "C:\Program" (in directory "C:\Temp\wso2\wso2bam-2.3.0"): CreateProcess error=2, The system cannot find the file specified {org.apache.hadoop.hive.ql.exec.ExecDriver}
It looks like BAM is trying to launch something in "Program Files" but didn't escape the command properly in windows. (I suspect Java, since JAVA_HOME is pointing to a sub-directory of Program Files.)
I'm using BAM 2.3.0, AM 1.4.0 with JDK 1.7 on Windows 7.
Would this be why there is no data? Is there a workaround to the escaping issue?
Thanks,
Chris
To run BAM in windows you need to install, Cygwin tool. If you have linux OS, run BAM in linux.
I had the same problem, tried double quoting the JAVA_HOME variable however BAM then through out the following on startup
Files\Java\jdk1.6.0_45"" was unexpected at this time.
Only solution I found was to re-install java into a directory without spaces
Note - Am using version 2.0.1 of BAM
Had the same problem with WSO2 BAM 2.4.0.
Also linked with the path to JDK.
For me, no need to reinstall the JDK but just change the JAVA_HOME environment variable to use the short version of the path (C:\Progra~1\Java... instead of C:\Program Files\Java...).
Cygwin is installed for me in a path with no space c:\cygwin. Did not test if this is mandatory. Be also sure to install all the cygwin package required in the WSO2 documentation.
regards,
Am using jettyrunner for executing my war files.I am using command java -jar jetty runner ex.war.But am running this jetty server from my java application by executing this commands from java.My problem is at first time its working good,but the second time if i am again executing another war file with the same code its executing the older war.i have found the reason that the older jetty server is keep on running.How could i stop this server from java in order to start the jetty server for another war.
One option should be:
http://wiki.eclipse.org/Jetty/Howto/Secure_Termination
Another would be to use the ShutdownHandler:
http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ShutdownHandler.java
Or don't use the jetty-runner directly like that from java code and just write a small embedded usage:
http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty
Turned out, jetty-runner.jar doesn't have a feature to stop existing jetty process ran with stop-port and stop-key.
I found the answer in https://github.com/jetty-project/jetty-documentation/blob/master/src/docbkx/administration/runner/jetty-runner.xml
Then, to stop jetty from a different terminal, you need to
supply the same port and key information. For this you'll either
need a local installation of jetty, the jetty-maven-plugin jetty-ant plugin, or write a custom class
Fortunately, I was implementing gradle build, so jetty-ant satisfied my needs.