The iProcess Engine will not start after installing the iProcess Technology Plug-in

The iProcess Engine will not start after installing the iProcess Technology Plug-in

book

Article ID: KB0081976

calendar_today

Updated On:

Products Versions
TIBCO iProcess Technology Plug-ins 11.6.1

Description

The iProcess Engine will not start after installing the iProcess Technology Plug-in

Error in eaijava log includes:

2018-01-08 09:48:28,740 [ERROR]d63e708ad4be6d66ffffff9c36baf30c SWDBPool - Failed to load driver

java.lang.ClassNotFoundException: $DRIVERNAME$
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.staffware.eaijava.bootstrap.library.SWSelectiveDelegatingClassLoader.loadClass(SWSelectiveDelegatingClassLoader.java:58)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.staffware.integration.dbpooling.library.SWDBPool.start(SWDBPool.java:471)

Issue/Introduction

The iProcess Engine will not start after installing the iProcess Technology Plug-in Error in eaijava log includes: java.lang.ClassNotFoundException: $DRIVERNAME$

Environment

TIBCO iProcess Engine (Oracle) 11.6.1 Linux TIBCO iProcess Technology Plugin 11.6.1 Linux

Resolution

The iProcess Technology Plug-in can be used to install multiple plug-ins into the iProcess Engine, these include:
      iProcess Java Server Plug-in (EAIJAVA)
      iProcess BusinessWorks Server Plug-in (EAIBW)
 
The EAIJAVA plugin is installed first and then the EAIBW plugin (as this relies on EAIJAVA).
 
Part of the EAIBW installation is to replace tokens in the source file with the actual values for the installation.
 
The error:

java.lang.ClassNotFoundException: $DRIVERNAME$
indicates that the installation of the EAIBW plugin did not complete and that the tokens have not been replaced in the file:
SWDIR/eaijava/jmx.config.xml
 
The tokens are for the JDBC database configuration to the iProcess database.
 
The resolution is to:
    1. Stop iProcess
    2. Update the file SWDIR/eaijava/jmx.config.xml
    3. Start iProcess
 
Update the SWDIR/eaijava/jmx/config.xml file and replace the tokens with the correct values:
 
1. $DRIVERNAME$
    Replace the token $DRIVERNAME$ with the java class for the JDBC driver
    For Oracle the driver class is oracle.jdbc.driver.OracleDriver
    For SQL Server the driver class is com.microsoft.sqlserver.jdbc.SQLServerDriver
 
2. $HEARTBEAT$ 
    Replace the token $HEARTBEAT$ with the SQL uses to test the database connection
    If the iProcess schema owner is SWPRO then the value for $HEARTBEAT$ is
       Select count(*) from SWPRO.Nodes
    (change SWPRO in the SQL statement for the iProcess schema owner in your installation).

 
3. $DBTYPE$
    Replace the token $DBTYPE$ with the database type
    Valid values for the token are
        Oracle
        SQLServer
        DB2
 
4. $Tnsname$
    Replace the token $Tnsname$ with the Oracle tnsnames.ora entry for the iProcess database
    This is only required if plug-ins are configured to use the Oracle tnsnames entry.
    If the TNS names entry is used then replace $Tnsname$ with the name of the TNS entry

    e.g.

        <call objectname="TIBCO:DBPool=default" attribute=" Tnsname">
                <arg type="java.lang.String">ORCL</arg>
        </call>


    If the TNS entry is not used then the value should be blank
    e.g.

        <call objectname="TIBCO:DBPool=default" attribute=" Tnsname">
                <arg type="java.lang.String"></arg>
        </call>

 
5. $TnsnamePath$
    Replace the token $TnsnamePath$ with the directory containing the Oracle tnsnames.ora file.
    This is only required if plug-ins are configured to use the Oracle tnsnames entry.
    If the TNS names entry is used then replace $TnsnamePath$ with the directory containing the Oracle tnsnames.ora file.

    e.g.

        <call objectname="TIBCO:DBPool=default" attribute="TnsnamePath">
                <arg type="java.lang.String">/u01/app/oracle/product/12.1.0.2/network/admin</arg>
        </call>


    If the TNS entry is not used then the value should be blank
    e.g.

        <call objectname="TIBCO:DBPool=default" attribute="TnsnamePath">
                <arg type="java.lang.String"></arg>
        </call>

 

Additional Information

TIBCO iProcess Engine 11.6.1 Installation Guide