Access

8 respostas
igor_jua

Galera coloquei detro de um packge do meu projeto um arquivo MS Access.
Neste arquivo há alguns dados que eu preciso para fazer consultas.
Ao executar dentro do netbeans tudo funciona perfeitamente. Porém quando eu gero o .jar e tento executar a busca no arquivo access ele levanta uma sqlException informando que o caminho informado não esta correto.
Meu código de conexão é este.

public DataSourceCliente() {
        URL is=getClass().getResource("/Outros/LocalidadeSRR.mdb");
           if(is!=null)
            this.DBQ = is.getPath();
        System.out.println("String sem formatacao= "+DBQ);
        DBQ=DBQ.substring(10,DBQ.length());//quebra da String para sua formatacao. C:/...
        System.out.println("String com formtacao = "+DBQ);
        System.out.println(DBQ);
        CapturaVersaoOffice versao= new CapturaVersaoOffice();
        int t=versao.findVersion();//método que descobre qual é a versao do MS Office que existe no pc
        if(t==0)
        this.url="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+DBQ;//office 2003
        if(t==1)
        this.url=  "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ="+DBQ ;//Officce 2007
        usuario="";
        senha="";
    }

Alguém sabe o que está acontecendo??

8 Respostas

C

A base de dados esta dentro do pacote do projeto ?

tenta verificar a url do seu getResource tenta colocar: “./Outros/LocalidadeSRR.mdb”…

posta a pilha de erro…

igor_jua

CarlosG tentei colocar o “.” na String mas não funcionou.
A String que esta na url(sem o ponto) é a seguinte:

SRR/dist/SRR.jar!/Outros/LocalidadeSRR.mdb

Eu humildemente acho que o erro seja por causa da exclamação.
Mas tem alguma forma de corrigir isto?

igor_jua

Iai ninguém tem uma luz??

C

Igor seu arquivo .mbd esta fora do jar ne?

tenta usar getClass().getClassLoader().getResourceAsStream(nomeArquivo)

Ermin

Por se tratar do ACCESS vc terá q criar uma nova fonte de dados ODBC no Windows, se for no Linux nada feito!

igor_jua

CarlosG, meu arquivo mdb encontra-se dentro do arquivo.jar .

E Ermin da maneira como implementei eu já crio uma fonte de Dados ODBC sem que seja necessário ir ao Painel de controle do windows. Ou seja, como vc poderá verifcar no meu código acima, primeiro eu vejo qual é a versão do MS Office e após eu crio a respectiva fonte de dados ODBC.

J

Ah não cara…
tá de brincadeira…
além de usar JAVA vc quer usar ACCESS???
Você por acaso é lixeiro pra ter esse tanto de lixo???

R

Kra nao eh possivel… tanta porcaria junto JAVA, ACCESS e windows… puta quer pariu… tenta usar hibernate para acessar o access… na boa msm vc ja fazendo um projeto pra faculdade e vc esta no 1º primeiro… aih isto me explica isto tudo… mais ja vou dando uma dica se for projeto pra faculdade seu professor ao olhar tanta porcaria junta vai te dar 0…

Criado 4 de agosto de 2010
Ultima resposta 6 de ago. de 2010
Respostas 8
Participantes 5