You are here: Hostname/Port changes for Tomcat Application Server
FAQs and Troubleshooting
This section lists the troubleshooting tips to resolve problems that you may encounter during installation.
- Issue: If you have upgraded from Foundry V8.x or lower versions to V9 GA or higher versions, some of the services fail to work because of an internal authentication error. These services, such as the Foundry Admin Adapter, Email Adapter, and Workflow Email services, fail with the following error:
Workaround
To avoid the error, you must perform the following:
- Log in to Foundry Console which you upgraded for V9.x.
- In your Volt MX Foundry account, click Environments. The Environments page appears.
-
Click MODIFY for the environment. The Modify Environment page appears, shown below:
- In the Modify Environment page, click SAVE.
-
Issue: While upgrading from Foundry 7.3 to Volt MX Foundry V9 and then upgrading to a version after V9, the upgrade fails due to the following error:”java.sql.SQLSyntaxErrorException: Table ‘prefixidglobaldbsuffix.schema_version’ doesn’t exist”.
Workaround
To avoid this issue, perform the following step:
- Delete the idglobaldb schema before upgrading to the version later than V9.
-
Issue
The upgrade installation from v8.2.1.3 to v9.x rolls back.
Workaround
Before the upgrade, execute the following SQL statement from admin database:
For MySQL
-———–
delete from.schema\_version where script = 'V62.1\_\_voltmxadmin-mysql-8.2.0.0.sql'; For SQLServer
-————–
delete from.schema\_version where script = 'V62.1\_\_voltmxadmin-sqlserver-8.2.0.0.sql'; For Oracle
-———
delete from.schema\_version where script = 'V62.1\_\_voltmxadmin-oracle-8.2.0.0.sql'; -
Issue
If you upgrade the integration service or install on new server using the existing database but with a different server details like fully qualified URL port, and when you publish an app, the app publish fails.
Workaround
You must update management server details in the
server_configuration
table in admin database. -
How to change the Hostname/IP address and port details of the existing Volt MX Foundry Server.
After the installation of Volt MX Foundry, if you want to change the existing Hostname/IP address that was used during the installation of Volt MX Foundry, follow these steps:
- Go to your Volt MX Foundry install folder.
- Go to
scripts
folder - for example,<MFinstallfolder>/scripts
. Thescripts
folder contains a .sql file for the database type that you selected while installing Volt MX Foundry. -
Open the
.sql
file in a text editor.Important: If you want to access Volt MX Foundry Console with a new port, change the value for the
NEW_PORT
with the new value. Otherwise, assign the value of theOLD_PORT
to theNEW_PORT
variable.Important: If you want to access Volt MX Foundry Console with a hostname/IP address, change the value for the
NEW_HOST
with the new value. Otherwise, assign the value of theOLD_HOST
to theNEW_HOST
variable. -
Change the values for the following variables.
- For MySQL, MariaDB, DB2, and SQL Server, replace the values for the
NEW_HOST
and theNEW_PORT
with new values. - For Oracle, replace all the occurrences of the
NEW_HOST
and theNEW_PORT
with new values.
Important: If you have selected your database as DB2, follow the steps provided in the .sql file in the
<MFinstallfolder>/scripts
folder. - For MySQL, MariaDB, DB2, and SQL Server, replace the values for the
- Run the SQL script on the database where you have installed Volt MX Foundry.
-
Issue
If the
java.sql. BatchUpdateException: Prepared statement needs to be re-prepared
error is logged in the Identity service logs or if certain operations fail to work properly when an identity service is invoked, do the following.Workaround
Add the following server variable in MariaDB ini file located in the MariaDB installation folder.
Path for MariaDB ini file,
<USER_INSTALL_DIR>\MariaDB 10.1\data\my.ini
-
Issue
If you face the error dialogue “
Windows error 2 occurred while loading the Java VM
” while launching the Volt MX Foundry Patch Installer, because of the following:Volt MX Foundry Patch Installer runs with your system’s default Java. If an user machine has Java 8 installed, then check if the machine’s
System Environment Path for Java
orJAVA_HOME
is set toc:\programdata\oracle\java\javapath
Workaround
- Remove the current path from
JAVA_HOME
and set the new path asC:\Program Files (x86)\Java\jre1.8.0_40\bin
- Launch the Volt MX Foundry Patch Installer.
- After the installation completed, reset the machine’s
System Environment Path for Java
orJAVA_HOME
path to it’s original path. For examplec:\programdata\oracle\java\javapath
- Remove the current path from
-
Issue
If your service provider’s certificate is not configured, the system displays an error - “peer not authenticated.”
Workaround
For trusted certification issues, refer to SSL Certificate Issues.
-
Issue - When you publish a number of apps, the system throws the error - too many open files.
For example:
Workaround
Update some of the default kernel parameter settings in your Linux environment. For more details, refer to Tuning File Descriptor Limits on Linux
-
Issue
When customer wants to install Volt MX Foundry with Oracle as database type, the system throws the error:
Invalid Data Type SDO_GEOMENTRY
Workaround
Install Oracle locator, which is required for Volt MX Foundry installation. For more details, refer to Pre-installation Tasks > Create Locator Component for Oracle Database
-
Issue
Upgrading from Foundry 6.5.2, 7.0.1 or 7.1.1 with MS SQL Server fails. Installer is rolling back, as the schema version table is not migrating properly while upgrade.
Workaround
To avoid this issue, follow these step:
Remove the
version_rank
column fromschema_version
table in each schema by following queries before upgrade. -
Issue
Auth (VoltMX Identity Service) datasources are not created when upgraded from Foundry 6.5.2.GA to 7.2.GA.
Workaround
Create datasource for
authconfigdb
andauthglobaldb
. For more details, refer to Configuring_JNDI_for_Database > Data Source for Single Node and Multinode > VoltMX Identity Service Data Source section. -
Issue
If you have installed Foundry 7.3 or older, and when you use the existing database for Volt MX Foundry V8 on JBoss, the Web Application publish fails.
Workaround
Update themanagement_server_port
in theserver_configuration
table ofadmindb
with thejboss.management.http.port
in the<USER_INSTALL_DIR>\jboss\standalone\configuration\standalone.xml
. -
Issue
If you do not want to use a DB user with DBA role or Equivalent privileges for the Volt MX Foundry installation on ORACLE database, follow these steps:
Workaround
Manual Steps:
- Create Component Users (schema) with the required grants as below.
- Create a non DBA user with the below grants. This user will be given to the Installer.
Note: The password for the component users and the installer user have to be same.
-
Issue
For storage services to work, change the following storagedb entries in the admindb.
WorkaroundManual Steps:
-
Issue
If you do not want to use a DB user with DBA role or Equivalent privileges for the Volt MX Foundry installation on MSSQL, follow these steps:
Workaround
Manual Steps:
Note: The whole script must be run at once.
Note: The loginId and password must be the same as used for Volt MX Foundry Installation.
Note: The
and provided must be the same across the script and must also be provided at the time of the Volt MX foundry Installation. Note: You can use the same loginId and userId to avoid confusion.
Note: The userId must be same across the script.
-
Issue
If you do not want to use a DB user with DBA role or Equivalent privileges for the Volt MX Foundry installation on IBM DB2, follow these steps:
WorkaroundManual Steps:
Important: Only DB2 database administrator (DBA) or equivalent DB user will have access to a create database.
-
Create a user based on your Operating System level.
- Refer for linux: Creating group and user IDs for a DB2 database installation (Linux and UNIX)
- Refer for Windows: Creating a dedicated DB2 user (Windows)
- Create databases by logging as Admin with following queries:
- Grant database level permissions to the user:
- Grant schema level permissions to the user:
Note: The loginId and password must be the same as used for Volt MX Foundry Installation.
Note: The
and provided must be the same across the script and must also be provided at the time of the Volt MX foundry Installation. -
-
Issue
After entering Database details the DB connection fails with the following error:
WorkaroundThe password used for the Database must not contain exclamation marks (!).
-
Issue
If you are using any lower versions of MySQL 5.7 such as v5.7.12 or lower during installation, you may encounter an error due to which the installation rolls back. This error occurs due to a bug in the MySQL database.
For more information, refer MySQL BugsFollowing are the error details:
- Error: Migration V810_27_01__DeleteDuplicateAcsUserIdProviderGuidRowsAddUniqueConstraint.sql failed
- SQL State: HY000
- Error Code: 1093
- Error Message: You can’t specify target table ‘users’ for update in FROM clause
- Location:
WorkaroundTo resolve this issue, refer Prerequisites for Volt MX Foundry with MySQL- Applicable for Identity Services.
Hostname/Port changes for Tomcat Application Server
Volt MX Foundry On-Premises Installer provides a script to change the Hostname or Port of the installed Volt MX Foundry instance. In your installed Tomcat Application Server, you must also perform the following changes:
In //tomcat/webapps/apiportal/WEB-INF/classes/config.properties
, replace the existing URL with the new URL in the following fields:
VOLTMX_ACCOUNT_API_BASE_URL=
VOLTMX_DEVELOPER_PORTAL_BASE_URL=
In //tomcat/webapps/mfconsole/WEB-INF/classes/config.properties
, replace the existing URL with the new URL in the VOLTMX_ACCOUNT_API_BASE_URL=
field.
In //tomcat/conf/server.xml
, replace the port number with the new port number in the <Connector server="VoltMX" port=
field.
In //tomcat/webapps/accounts/WEB-INF/classes/accounts.properties
, replace the port number with the new port number in the following fields:
VOLTMX_INTEGRATION_SERVICE_PORT=
VOLTMX_MESSAGING_SERVICE_PORT=
Hostname/Port changes for JBoss Application Server
Volt MX Foundry On-Premises Installer provides a script to change the Hostname or Port of the installed Volt MX Foundry instance. The script can be found in the installation folder. In your installed JBoss Application Server, you must follow the instructions in the script and also perform the following steps:
- In the standalone.xml file replace the IP address/port number with the new IP address/port number.
- In
mfconsole.war\WEB-INF\classes\config.properties
, replace the existing URL with the new URL in theVOLTMX_ACCOUNT_API_BASE_URL=
field. - In
apiportal.war\WEB-INF\classes\config.properties
, replace the existing URL with the new URL in the following fields:VOLTMX_ACCOUNT_API_BASE_URL=
VOLTMX_DEVELOPER_PORTAL_BASE_URL=
- In
accounts.war\WEB-INF\classes\accounts.properties
, replace the port number with the new port number in theVOLTMX_INTEGRATION_SERVICE_PORT=
field.
How to Configure JBoss Cluster
- Refer to https://access.redhat.com/solutions/218053 to setup EAP in Domain mode.
- Refer to https://docs.jboss.org/mod_cluster/1.1.0.html/Quick_Start_Guide.html to configure the mod_cluster.
- Refer to https://access.redhat.com/solutions/2332111 to integrate the mod_cluster with JBoss.
How to Configure a Custom JAR File on WebLogic
When an administrator installs only integration services on Weblogic and would like to use it as a standalone server (without integrating to Volt MX Foundry) for Volt MX Studio apps, then app services which use custom code for pre-processor and post-processor will fail. For these services to work properly, add the custom code jar file to middleware.war and redeploy.
To add custom jar to middleware.war after installation, follow these steps:
- Uninstall the middleware.war file from WebLogic Console > Deployments tab.
- Go to your Volt MX Integration Server install location and Deployments folder.
- Open the middleware.war file and do the following:
- In the
middleware.war
file, go toWEB-INF/lib
folder and add custom jar file. - Save the
middleware.war
file. - Deploy the
middleware.war
file back to server.
How to Configure Heap and PermGen Size
Configuring Heap and PermGen Size for Tomcat
By default, the heap settings for Tomcat allocated are Min -Xms1024m
/ Max - Xmx2048m
, and default permgen settings are: -XX:PermSize=1024m
-XX:MaxPermSize=1024
m
For better performance in case of several publishes, update the following heap and permgen settings in the file: {Installation directory}/tomcat/bin/catalina.sh
-
heap settings: Min -
Xms1024m
/ Max -Xmx1024m
.Important: While installing Volt MX Foundry Components including Integration services, set the heap settings to: Min -Xms2048m / Max - Xmx2048m.
-
permgen settings : -XX:PermSize=
1024m
-XX:MaxPermSize=2048m
Configuring Heap and PermGen Size for JBoss
In case of multinode, do the following:
- Configure the Min -
Xms2048m
/ Max -Xmx4096m
heap settings in the file:{ Server directory }/domain/configuration/host.xml
- Configure the Min -
Xms2048m
/ Max -Xmx4096m
heap settings in the file:{ Server directory }/domain/configuration/domain.xml
- Configure permgen settings : -XX:PermSize=
1024m
-XX:MaxPermSize=2048m
In case of single node, configure the settings in { Install directory }/jboss/standalone/configuration/standalone.xml
Configuring Heap and PermGen Size for WebLogic
- Configure the Min -
Xms6144m
/ Max -Xmx6144m
heap settings in the file:{Server directory }/user_projects/domains/bin/setDomainEnv.sh
- Configure permgen settings : -XX:PermSize=
1024m
-XX:MaxPermSize=2048m
- Go to the
{Server directory}/user_projects/domains/bin/
folder, and open thesetDomainEnv.sh
file in a text editor. - Search for the following comment line:
- Immediately after the comment line, add the following line:
- Save the file, and then restart the WebLogic Server.
How to Configure Volt MX Foundry Behind a Reverse Proxy
If you want to access everything via a proxy URL, including Volt MX Foundry Console (for example, design time for your app developers) and authService, and integration services (for example, runtime from users using your apps), follow these steps:
- Install Volt MX Foundry with internal details like your internal IP and HTTP port.
- After installation, stop the Volt MX Foundry Console (without configuring authservice details) and update following property files:
-
In the
accounts.war/WEB-INF/classes
folder, open theaccounts.properties
file, and update theWAAS_BASE_URL=<PUBLIC_URL_OF_YOUR_APACHE>/workspace
property with a public URL instead of the private URL. By default, the private URL is set during installation.Examples of proxy URLs:
WAAS_BASE_URL=http://test.voltmx.com/workspace
WAAS_BASE_URL=https://test.voltmx.com:8443/workspace
WAAS_BASE_URL=http://test.voltmx.com:8080/workspace
-
Following are the changes to be made in the war for each App Server:
- Tomcat: In
mfconsole.war/WEB-INF/classes
, open theconfig.properties
file, and update theVOLTMX_ACCOUNT_API_BASE_URL=<PUBLIC_URL_OF_YOUR_APACHE>/accounts/api/v1_0/
property with a public URL instead of the private URL that was generated during installation. - JBoss - Standalone (Bundled JBoss): In
Standalone/deployments/mfconsole.war
, open theconfig.properties
file, and update theVOLTMX_ACCOUNT_API_BASE_URL=<PUBLIC_URL_OF_YOUR_APACHE>/accounts/api/v1_0/
property with a public URL instead of the private URL that was generated during installation. - JBoss - Pre-configured and Domain mode: Take a backup of the existing war. Undeploy
mfconsole.war
. Inmfconsole.war/WEB-INF/classes
, open theconfig.properties
file, update theVOLTMX_ACCOUNT_API_BASE_URL=<PUBLIC_URL_OF_YOUR_APACHE>/accounts/api/v1_0/
property with a public URL instead of the private URL that was generated during installation, and re-deploy the war file. - WebLogic: In
mfconsole.war/WEB-INF/classes
, open theconfig.properties
file, and update theVOLTMX_ACCOUNT_API_BASE_URL=<PUBLIC_URL_OF_YOUR_APACHE>/accounts/api/v1_0/
property with a public URL instead of the private URL that was generated during installation.
- Tomcat: In
-
- Start Volt MX Foundry Console.
- Launch your Volt MX Foundry Console in browser by using
<PUBLIC_URL_OF_YOUR_APACHE>/mfconsole
. Now auth setup pages comes up. - Enter auth URL with public URL like
<PUBLIC_URL_OF_YOUR_APACHE>/authService
. If you provide an internal IP here, appconfig will show internal IPs. -
Also after log in to Volt MX Foundry Console, while registering server, provide the PUBLIC_URL to register integration server. Now all the URLs will have the public hostnames.
If you want to give public access only to runtime services like authservice and integration services you can skip step 2 and step 3 from the above procedure. This will make sure service doc will have all public URLs.
Note: Proxy configuration should have preserver host directive for Volt MX Foundry to work correctly after start up.
For example, in case of apache proxy, use
`ProxyPreserveHost On`
and in case of NGINX, useproxy_set_header Host $host;
(For more information, refer Passing request headers)
How to Configure Frontend HTTPS to Tomcat HTTP Redirection
If you are installing Volt MX Foundry on Tomcat on HTTP and wants to route requests via HTTPS apache or loadbalancer, add a connector in the tomcat/server.xml
with the following attributes:
proxyName=”
Example:
`<Connector server="VoltMXTEST" port="8080" protocol="HTTP/1.1" proxyName="mbaastest10.hcl.net" proxyPort="443" scheme="https" secure="true" maxHttpHeaderSize="8192" maxThreads="150" enableLookups="false" acceptCount="25" disableUploadTimeout="true" tcpNoDelay="true" compression="on" compressableMimeType="text/css,text/javascript,text.html" connectionTimeout="20000" URIEncoding="UTF-8"/>`