Obrigado Josiloch.
Fiz as alterações que recomendou mas o erro persiste.
------------------------------------------------------------------------------------------------
Exception in thread "main" java.lang.ExceptionInInitializerError
at Teste.ConnectionManager.criaConexao(ConnectionManager.java:26)
at Teste.ConnectionManager.getConnection(ConnectionManager.java:19)
at Teste.Teste.main(Teste.java:17)
Caused by: java.lang.NullPointerException
at java.io.Reader.(Reader.java:78)
at java.io.InputStreamReader.(InputStreamReader.java:72)
at com.unisys.jdbc.dmsql.JDBCProperties.initSettings(JDBCProperties.java:240)
at com.unisys.jdbc.dmsql.JDBCProperties.getProp(JDBCProperties.java:268)
at com.unisys.jdbc.dmsql.Driver.(Driver.java:87)
... 3 more
--------------------------------------------------------------------------------------------------
Transcrevo em baixo a classe Driver.
package com.unisys.jdbc.dmsql;
import java.io.Serializable;
import java.sql.DriverManager;
import java.sql.DriverPropertyInfo;
import java.util.Properties;
import java.util.StringTokenizer;
public class Driver
implements java.sql.Driver
{
private static IDriver iDriver = null;
private static String valNative = "MDriver";
private static final String PRODUCTVERSION = "1,0";
private static String defaultDMSQL = JDBCProperties.getProp(JDBCProperties.dmsqlProgid, defaultDMSQL);
static final String id = "jdbcformcp";
private static String strPackage = "com.unisys.jdbc.dmsql.";
private static String strConnection = "Connection";
static Driver globalDriver = null;
public boolean acceptsURL(String url)
throws java.sql.SQLException
{
Trace t = null;
boolean result = (url.length() >= "jdbc:unisys:dmsql".length()) && ("jdbc:unisys:dmsql".equals(url.substring(0, "jdbc:unisys:dmsql".length())));
return result;
}
public java.sql.Connection connect(String url, Properties info)
throws java.sql.SQLException
{
if (info == null) {
info = new Properties();
}
StringBuffer dmsqlProgId = new StringBuffer();
if (!loadServer(url, dmsqlProgId, info)) {
return null;
}
IConnection iConn = iDriver.connect(info);
return new Connection(iConn, dmsqlProgId.toString(), url);
}
private boolean loadServer(String url, StringBuffer dmsqlProgId, Properties info)
throws java.sql.SQLException
{
Trace t = null;
if (!acceptsURL(url))
{
return false;
}
StringTokenizer token = new StringTokenizer(url, ":");
for (int i = 0; i < 3; i++) {
token.nextToken();
}
String progId = defaultDMSQL;
if (token.hasMoreTokens()) {
progId = token.nextToken();
}
dmsqlProgId.append(progId);
String strProp = null;
if (token.hasMoreTokens())
strProp = token.nextToken();
else if (info.size() == 0) {
strProp = JDBCProperties.getProp(JDBCProperties.dmsqlProperties, null);
}
if (strProp != null) {
StringTokenizer tokProp = new StringTokenizer(strProp, ";", false);
while (tokProp.hasMoreTokens()) {
String prop = tokProp.nextToken();
StringTokenizer tokValue = new StringTokenizer(prop, "=", false);
if (tokValue.hasMoreTokens()) {
String key = tokValue.nextToken();
String value = "";
if (tokValue.hasMoreTokens()) {
value = tokValue.nextToken("").substring(1);
}
if (key.equalsIgnoreCase("Extended Properties")) {
StringBuffer bufValue = new StringBuffer(value);
int inx = value.indexOf(',');
while (inx != -1) {
bufValue.setCharAt(inx, ';');
inx = value.indexOf(',', inx + 1);
}
value = bufValue.toString();
}
info.put(key, value);
}
}
}
if (iDriver == null) {
try {
iDriver = (IDriver)Class.forName(strPackage + valNative).newInstance();
}
catch (ClassNotFoundException e)
{
throw new SQLException(1000036, new Object[] { valNative });
}
catch (InstantiationException e)
{
throw new SQLException(1000037, new Object[] { e.getMessage() });
}
catch (IllegalAccessException e)
{
throw new SQLException(1000037, new Object[] { e.getMessage() });
}
}
return true;
}
public int getMajorVersion()
{
StringTokenizer tok = new StringTokenizer("1,0", ",");
String major = tok.nextToken();
return Integer.parseInt(major);
}
public int getMinorVersion()
{
StringTokenizer tok = new StringTokenizer("1,0", ",");
tok.nextToken();
String minor = tok.nextToken();
return Integer.parseInt(minor);
}
public DriverPropertyInfo[] getPropertyInfo(String url, Properties info)
throws java.sql.SQLException
{
Trace t = null;
if (info == null) {
info = new Properties();
}
StringBuffer dmsqlProgId = new StringBuffer();
if (!loadServer(url, dmsqlProgId, info))
{
return null;
}
DriverPropertyInfo[] mvProp = iDriver.getPropertyInfo(info);
DriverPropertyInfo[] result = new DriverPropertyInfo[mvProp.length];
for (int i = 0; i < mvProp.length; i++) {
result[i] = new DriverPropertyInfo(mvProp[i].name, mvProp[i].value);
result[i].required = mvProp[i].required;
result[i].choices = mvProp[i].choices;
}
return result;
}
public boolean jdbcCompliant()
{
return false;
}
static
{
globalDriver = new Driver();
try {
DriverManager.registerDriver(globalDriver);
}
catch (Exception e)
{
e.printStackTrace();
}
}
static class DriverPropertyInfo
implements Serializable
{
String name = null;
String value = null;
boolean required = false;
String[] choices = null;
public String toString() { return this.name + "=" + this.value; }
}
}
Obrigado.