Upload de arquivo .zip ou .tar.gz em aplicação desktop

Olá, galera.

Eu estou tentando criar um programa desktop capaz de receber um arquivo.zip de um usuário, porem não sei como fazer isso.

A ideia é a seguinte:

O Usuario Localiza o Arquivo.zip ou .tar.gz no micro dele e clica em enviar, o sistema faz o upload desse arquivo para uma url e salva dados descrição e data no banco de dados.

Andei pequisando e achei alguns materiais que usavam JSP e SERVLET, porem meu objetivo é uma aplicação desktop.

Alguem poderia me ajudar???

como assim vc faz o upload desse arquivo para uma url ?

Para onde você está mandando esse arquivo? É um servidor? Por que você não pode colocar uma aplicação web nele?

Exatamente, estou mandando um arquivo que pode ser um programa, driver, etc. para uma url que é o servidor de banco de dados tambem, porem este arquivo deve estar compactado. Vamos supor que O usuario seleciona o arquivo e clica em “Enviar”, o sistema envia o arquivo para o url no servidor e inclui no banco de dados um campo para nome e descrição para futura consulta dos usuarios.

Aplicação infelizmente não pode ser web. Senão eu iria usar os jar do tomcat. O sistema é uma aplicação desktop e o cliente (empresa de helpdesk) deseja um modulo para armazenar drivers catalogados e passiveis de pesquisa.

Eu consigo controlar tudo menos o envio do arquivo para a url no servidor, vcs sabem como fazer??? Desde ja Agradeço.

vamos por partes…q eu ainda nao consegui entender…

1° só pode enviar um arquivo se estiver compactado ? Ou assim q enviar o arquivo, o programa compacta o arquivo ?
2° vc conseguiu salvar os dados no banco de dados ?

Primeiramente obrigado por estar me ajudando.

Então o arquivo so pode ser enviado se estiver compactado (o sistema não compacta o arquivo).

A parte do banco de dados não é problema ou consiguo inserir os dados no banco.

Posta o código de até onde vc conseguiu chegar, ou está esperando alguém “colar” o código fonte pronto pra vc?

[quote=Adolpho Alves]Exatamente, estou mandando um arquivo que pode ser um programa, driver, etc. para uma url que é o servidor de banco de dados tambem, porem este arquivo deve estar compactado. Vamos supor que O usuario seleciona o arquivo e clica em “Enviar”, o sistema envia o arquivo para o url no servidor e inclui no banco de dados um campo para nome e descrição para futura consulta dos usuarios.

Aplicação infelizmente não pode ser web. Senão eu iria usar os jar do tomcat. O sistema é uma aplicação desktop e o cliente (empresa de helpdesk) deseja um modulo para armazenar drivers catalogados e passiveis de pesquisa.

Eu consigo controlar tudo menos o envio do arquivo para a url no servidor, vcs sabem como fazer??? Desde ja Agradeço.[/quote]

[quote=Adolpho Alves]Primeiramente obrigado por estar me ajudando.

Então o arquivo so pode ser enviado se estiver compactado (o sistema não compacta o arquivo).

A parte do banco de dados não é problema ou consiguo inserir os dados no banco.[/quote]

O objetivo é que todos arquivos da url estejam documentados com descrição, isso vai ser acoplado a parte de gestão de conhecimento do sistema.

[quote=aleck]Posta o código de até onde vc conseguiu chegar, ou está esperando alguém “colar” o código fonte pronto pra vc?
[/quote]
Então eu fiz esse codigo so ele é para WEB, para desktop eu não tenho a menor ideia de como se faz!

public void sendFile(HTTPRequest request){
	DiskFileUpload upload = new DiskFileUpload();
	upload.setSizeMax(1024*1024*50);
	List items = upload.parseRequest(request);

	Iterator itr = items.iterator();

	while(itr.hasNext()) {
		FileItem item = (FileItem) itr.next();
	
		if(!item.isFormField()) {
	
			File fullFile  = new File(item.getName());
			String nome = fullFile.getName();//pega o nome do arquivo
			String extensao=nome.substring(nome.length()-3,nome.length());//pega a estenção do arquivo
			System.out.println(nome+"<br>");
			System.out.println(extensao+"<br>");
			if (extensao.equalsIgnoreCase("ZIP")||extensao.equalsIgnoreCase("TAR.GZ")) {
	   		  File savedFile = new File(getServletContext().getRealPath("//10.0.9.1/servidor/"),fullFile.getName());
	   		  item.write(savedFile);
			}
			else {
	                System.out.println("Não enviando. Use apenas ZIP ou TAR.GZ");
		} 	
	}
}

Busque como enviar arquivos via FTP com java, é bem simples e deve te servir.

não sei se é bem isso que vc quer…mais talvez esse código que o cara me passou seja mais util pra vc…

http://www.guj.com.br/posts/list/102538.java

ai vc pega o arquivo e guarda ele no banco (esse código faz apenas o upload para um endereço na internet que esteja esperando um arquivo, a parte do servidor de receber o arquivo é por sua conta :wink:)

Obrigado pela ajuda, agora eu vo usar as dicas de vocês e ver se eu consiguo. Valeu msm com esse material acredito que eu vou conseguir. :lol: