Gostaria de saber como faco para enviar arquivos para um servidor web (apache) atraves do JAVA, criei uma interface que abre o arquivo de um disco local, agora gostaria de saber como faco para enviar esse arquivo para uma determinada pasta no servidor web…
Baixa aí e veja se ajuda, tem uma documentação boa na página do projeto.
Espero ter ajudado
Inté
T
thingol
Procure por WebDAV.
Você terá de habilitar esse recurso no Apache, e achar um cliente WebDAV em Java.
Normalmente os editores Web (como o FrontPage ou o DreamWeaver) são clientes WebDAV, então você poderá testar se isso funciona.
rafaelt
Fala galera, eh o Apache (do PHP), tipo to usando socket, e essa interface logo logo vou implementa-la para ser um applet.
pretendo fazer um applet para o cara abrir um arquivo e enviar numa pasta do servidor web.
alguma sugest~ao simples???
rafaelt
Galera aqui vai a source do meu programa.
Lembrando nao estou usando servlet.
Quem puder me ajudar.
importjava.io.*;importjava.io.FileInputStream.*;importjava.io.DataInputStream.*;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.filechooser.*;importjava.net.*;publicclassupMenuextendsJPanelimplementsActionListener{//////////-----TESTE-----\\\\\//Connections.StringserverName="localhost";intserverPort=80;StringfileUploadPath="/upload";StringscriptPath="/upload/getupload.php";InetAddressaddr;Socketsocket;BufferedOutputStreamwr;Threadm_thread;intuploadPacketSize=80*1024;//////////-----TESTE-----\\\\\staticprivatefinalStringnewline="\n";JButtonopenButton,/*sendButton,*/cancelButton;//Abrir, enviar e cancelar.JTextArealog;JFileChooserfc;publicupMenu(){super(newBorderLayout());//Parte de info aqui.log=newJTextArea(15,40);log.setMargin(newInsets(5,5,5,5));log.setEditable(false);JScrollPanelogScrollPane=newJScrollPane(log);fc=newJFileChooser();//AbriropenButton=newJButton("Abrir");//Implementar imagem.openButton.addActionListener(this);//Enviar//sendButton = new JButton("Enviar");//sendButton.addActionListener(this);//-----CancelarcancelButton=newJButton("Cancelar");cancelButton.addActionListener(this);//-----Cancelar//PainelJPanelbuttonPanel=newJPanel();buttonPanel.add(openButton);//buttonPanel.add(sendButton);buttonPanel.add(cancelButton);//Adicionando os recursos no painel.add(buttonPanel,BorderLayout.PAGE_START);add(logScrollPane,BorderLayout.CENTER);}publicvoidactionPerformed(ActionEvente){//Acão nos botões.if(e.getSource()==openButton){intreturnVal=fc.showOpenDialog(upMenu.this);if(returnVal==JFileChooser.APPROVE_OPTION){Filefile=fc.getSelectedFile();longfileSize=file.length();//Tamanho do arquivo.//FileReader in = null;try{log.append("Inicializando "+serverName+"..."+newline);addr=InetAddress.getByName(serverName);log.append("Conectando com "+serverName+" na porta "+serverPort+"..."+newline);socket=newSocket(addr,serverPort);log.append("Conectado, criando saída em: "+fileUploadPath+""+newline);//log.append("Enviando: " + file.getName() + " Tamanho: " + fileSize + newline + newline);}catch(Exceptione1){log.append("Erro ao se conectar com o host: "+e1.getMessage());log.invalidate();return;}/***** try { wr = new BufferedOutputStream(socket.getOutputStream()); } catch(Exception e2) { log.append("Não foi possível enviar o arquivo para: " + e2.getMessage()); log.invalidate(); return; } *****///Preparando o que vai ser enviado.//long contentLength;//String fileHeader = "Content-Disposition", "attachment; Arquivo=" + file.getName() + "Content-type: application/octet-stream\r\n\r\n"; //Null???}else{log.append("Usuário desistiu de enviar o arquivo."+newline);}log.setCaretPosition(log.getDocument().getLength());}elseif(e.getSource()==cancelButton){intreturnVal=fc.showSaveDialog(upMenu.this);//Mudarif(returnVal==JFileChooser.APPROVE_OPTION){Filefile=fc.getSelectedFile();log.append("");}else{log.append("");}log.setCaretPosition(log.getDocument().getLength());}}privatestaticvoidcreateAndShowGUI(){JFrameframe=newJFrame("Upload de 10 arquivos");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JComponentnewContentPane=newupMenu();newContentPane.setOpaque(true);frame.setContentPane(newContentPane);//Mostrando a janela.frame.pack();frame.setVisible(true);}publicstaticvoidmain(String[]args){javax.swing.SwingUtilities.invokeLater(newRunnable(){publicvoidrun(){createAndShowGUI();}});}}
Valeu ai!!!
rafaelt
Alguem poderia me ajudar a enviar um arquivo para um servidor web com o codigo acima???
Abs,
Rafael.
rafaelt
thingol:
Procure por WebDAV.
Você terá de habilitar esse recurso no Apache, e achar um cliente WebDAV em Java.
Normalmente os editores Web (como o FrontPage ou o DreamWeaver) são clientes WebDAV, então você poderá testar se isso funciona.
Baixei esse tal de WebDAV, mas nao entendi nada nele…pode me explicar???
Valeu
Rafael
lreao
Olá amigo, estou com um problema parecido!!
No meu caso, eu crio um aruivo html via java e via aaplet eu redireciono para o arquivo criado. funciona perfeitamente local, porém não consigo gravar o arquivo no servidor e é isso que preciso!!
Se teve uma solução, poderia postar?? Aí adapto para o meu caso!