Write once, run everywhere?

Saudações a todos…

Estou enfrentando um problema onde uma aplicação web “roda” perfeitamente em ambiente windows mas no Linux não.

A situacao é a seguinte, através do clique de um botão, gero uma base de dados em access para download dos usuarios. Segue abaixo o codigo que monta a url para a conexao sem DSN com a base access em ambiente windows:
String url = “jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};DBQ=C:\Arquivos de programas\Apache Software Foundation\Tomcat 5.0\webapps\giiss\temp\arquivo.mdb”;

O caminho do arquivo é um parametro que envio para a classe, variando de ambiente linux para windows, acima coloquei o conteudo de cada parametro para cada ambiente.

Abaixo segue o mesmo codigo em ambiente Linux:
String url = “jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=\usr\jakarta-tomcat-5.0.19\webapps\giiss\temp\arquivo.mdb”;

Em ambiente linux recebo um null pointer exception exatamente na linha acima.
Antes que me questionem: os caminhos estão corretos, e os arquivos .mdb estao nos diretorios correspondentes.

Existe alguma restricao com relacao ao acesso aos arquivos .mdb em ambiente linux, ou estou fazendo algo errado?

Desde já agradeço…

Cordialmente…


Cristiano Roberto Franco

Ahn, que eu saiba, o jdbc-odbc bridge (esse driver que permite usar ODBC com JDBC) só funciona em Windows. Se você quiser usar arquivos de dados Access em Linux, acho que você tem de pagar alguma coisa para alguém (deve haver alguma solução paga).