Pessoal, é o seguinte. Eu tenho um aplicativo javawebstart, no qual faz uso de um banco de dados access!! Eu quero q qd o usuario executar o meu webstart, o meu programa em java, fasse o download do arquivo mdb do servidor, e descompacteo numa pasta!! Como q eu faria esse download?? Alguem ai tem ideia!! Preciso muito disso!! Agradeço a todos!!
Código modificado a partir do tutorial na página no HttpClient:
publicstaticvoidmain(String[]args){Stringurl="http://www.minhapagina.com.br/meuarquivo.exe";HttpClientclient=newHttpClient();// Create a method instance.GetMethodmethod=newGetMethod(url);// Provide custom retry handler is necessarymethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,newDefaultHttpMethodRetryHandler(3,false));try{// Execute the method.intstatusCode=client.executeMethod(method);if(statusCode!=HttpStatus.SC_OK){System.err.println("Method failed: "+method.getStatusLine());}// Read the response body.byte[]responseBody=method.getResponseBody();Filefile=newFile(".");FileOutputStreamos=newFileOutputStream(file);os.write(responseBody);os.close();}catch(HttpExceptione){System.err.println("Fatal protocol violation: "+e.getMessage());e.printStackTrace();}catch(IOExceptione){System.err.println("Fatal transport error: "+e.getMessage());e.printStackTrace();}finally{// Release the connection.method.releaseConnection();}}
StriderMGBR
Opa fera, blz?? eu usei essa sua função ae e tals, baixei la e tals!! ai deu esse errinho ai na hora de executar, tu sabe pq?? E outra, pra onde o arquivo vai ser baixado q eu nao consegui entender!! vlw!!
07/04/2006 14:32:15 org.apache.commons.httpclient.HttpMethodBase getResponseBody
WARNING: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended.
Fatal transport error: . (Acesso negado)
java.io.FileNotFoundException: . (Acesso negado)
StriderMGBR
Ae, consegui baixar o arquivo!! Vlw!! Mas aki, tipo, quero fazer uma verificacao pra saber c o arquivo ja foi baixado, e se o arquivo q ja foi baixado é igual ao do meu servidor!! C tem noção de como posso fazer isso?? Pra ver c ele ja foi baixado eu sei como q é, to so com duvida pra ver c as versões sao iguais, m da um forca ae!!
VLW!!
_fs
Nunca precisei fazer comparação de arquivos, mas penso que deve primeiro comparar o tamanho de ambos e, caso iguais, comparar byte a byte.
B
Betold
StriderMGBR, como você conseguiu fazer ele fazer o download? Segui o exemplo de não funfo, será que dá pra você me dizer como conseguiu fazer???