Exceção não definida do caminho da classe JDBC

Se estiver usando um repositório de extensão de propriedade ou banco de dados para o qual a variável de caminho da classe JDBC não está definida, talvez você encontre a seguinte exceção ao iniciar o WebSphere Application Server.

Problema

A UndefinedVariableException ocorre conforme mostrado na seguinte amostra de rastreio do gerenciador de membro virtual:

Loading JDBC driver class: com.ibm.db2.jcc.DB2Driver
Getting ${VMM_JDBC_CLASSPATH} using variable map...
Failed to retrieve WAS variable: VMM_JDBC_CLASSPATH 
	com.ibm.wsspi.runtime.variable.UndefinedVariableException: Undefined variable VMM_JDBC_CLASSPATH
		at com.ibm.ws.runtime.component.VariableMapImpl.expand(VariableMapImpl.java:373)
		at com.ibm.ws.runtime.component.VariableMapImpl.expand(VariableMapImpl.java:325)
		at com.ibm.ws.wim.dao.DAOHelper.loadJDBCClass(DAOHelper.java:111)
		at com.ibm.ws.wim.dao.AbstractDAO.loadJDBCClass(AbstractDAO.java:324)
		at com.ibm.ws.wim.dao.AbstractDAO.getDirectAccessConnection(AbstractDAO.java:339)
		at com.ibm.ws.wim.config.ConfigValidator.validateDBParams(ConfigValidator.java:285)
		at com.ibm.ws.wim.config.ConfigValidator.validateRepositoryParams(ConfigValidator.java:214)

Solução

Defina a variável VMM_JDBC_CLASSPATH na configuração do WebSphere Application Server concluindo as seguintes etapas:
  1. Inicie o console administrativo do WebSphere Application Server.
  2. Clique em Ambiente > Variáveis do WebSphere.
  3. Na seção Escopo, selecione Célula na lista suspensa.
  4. Clique em Novo para criar uma nova variável.
  5. No campo Nome, insira VMM_JDBC_CLASSPATH.
  6. No campo Valor, insira o caminho para os arquivos de biblioteca do driver JDBC separados por dois pontos (:) para UNIX ou Linux ou ponto e vírgula (;) para Windows. Por exemplo, o caminho para o Linux ou UNIX é o seguinte: /opt/IBM/SQLLIB/java/db2jcc.jar:/opt/IBM/SQLLIB/java/db2jcc_license_cu.jar.
  7. Clique em OK.
  8. Além disso, copie os arquivos de biblioteca do driver JDBC especificado no diretório ${WAS_HOME}/lib de cada nó do WebSphere Application Server instalado.
  9. Salve as configurações e reinicie o WebSphere Application Server.
    Nota: Em um ambiente em cluster, também se deve parar e reiniciar o Deployment Manager e os agentes de nó.


Termos de uso | Feedback