These instructions are for installing FlexDeploy on an existing Tomcat server. If you are installing a new server, see Installing FlexDeploy with included Tomcat for a simplified installation which includes the Tomcat 8.5.11 server. If you wish to use an existing Tomcat server, or to use a different version of Tomcat, please continue with this installation.
If FlexDeploy is being installed for first time, setup Tomcat server and a Data Source as explained in following steps. If only updating new war file, skip to WAR Installation.
Some jars are needed to support running an ADF application on Tomcat. Please download the following and put in the lib folder inside where you downloaded Tomcat.
If adding another JDBC driver, be sure to remove the default one which comes with the ADF Essentials libraries (ojdbc6dms.jar). If you leave multiple JDBC drivers in the lib folder, you could encounter the following exception on startup: java.lang.SecurityException: sealing violation: package oracle.jdbc is sealed at java.net.URLClassLoader.getAndVerifyPackage(Unknown Source) at java.net.URLClassLoader.definePackageInternal(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) |
<!-- Prevent unnecessary warnings in the log. --> <JarScanner scanManifest="false"/> <!-- Database Connection for the FlexDeploy Application --> <Resource name="jdbc/flexdbDS" auth="Container" type="oracle.jdbc.pool.OracleDataSource" factory="oracle.jdbc.pool.OracleDataSourceFactory" url="jdbc:oracle:thin:@localhost:1521:xe" user="fd_admin" password="put password for fd_admin" maxActive="100" maxIdle="10" maxWait="60" validationQuery="select 1 from dual" testOnBorrow="true"/> |
set CATALINA_OPTS=%CATALINA_OPTS% -verbose:gc -Xms1024m -Xmx2048m -Doracle.mds.cache=simple -Dorg.apache.el.parser.SKIP_IDENTIFIER_CHECK=true -Dflexagon.fd.repository.root=/opt/flexdeploy/repository -Dflexagon.fd.install.root=/opt/flexdeploy/application -Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom |
JAVA_HOME=/usr/jdk1.8.0_60 CATALINA_OPTS='-verbose:gc -Xms1024m -Xmx2048m -Doracle.mds.cache=simple -Dorg.apache.el.parser.SKIP_IDENTIFIER_CHECK=true -Dflexagon.fd.repository.root=/opt/flexdeploy/repository -Dflexagon.fd.install.root=/opt/flexdeploy/application -Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom' |
Please make sure to modify the arguments for Server working directory (-Dflexagon.fd.install.root) and Artifacts repository (-Dflexagon.fd.repository.root) as per your installation. Be careful in copying arguments due to potential character changes. |
If you are working with a new Tomcat instance that is only running FlexDeploy, you can simply download the logging.properties file and place it in the tomcat/conf folder.
If you are running multiple applications on Tomcat, you will want to edit the logging.properties file as suggested below.
, 5fd.org.apache.juli.AsyncFileHandler |
Add the following lines to the file:
.handlers = 5fd.org.apache.juli.AsyncFileHandler 5fd.org.apache.juli.AsyncFileHandler.level = ALL 5fd.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 5fd.org.apache.juli.AsyncFileHandler.prefix = flexdeploy. 5fd.org.apache.juli.AsyncFileHandler.formatter = flexagon.fd.logging.FlexDeployLogFormatter org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/flexdeploy].level = INFO org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/flexdeploy].handlers = 5fd.org.apache.juli.AsyncFileHandler .level=INFO flexagon.level=INFO org.apache.jasper.servlet.level = WARNING oracle.adf.share.security.level=SEVERE oracle.adf.share.jndi.ReferenceStoreHelper.level=SEVERE |