title: How can i upload a file into a ftp server?
body: <p>SOLVED</p>
  
  <p>I'm making a desktop aplication that must be in touch with a ftp server, the files that will upload are images. I'm trying it but I can't upload despite being connected, the problem is when I want to upload the file, the method doesn't work and returns false. the code is the following:</p>
  
  <pre><code>public boolean subeFTP(String archivoLocal, String archivoServer){
      boolean resultado=false;
  
      FTPClient ClienteFTP=new FTPClient();
  
      //Se toma el nombre del archivo local
      String aux = archivoLocal;
      aux = aux.substring(aux.lastIndexOf("\\")+1);
  
      try {
          //Establece el timeout del servidor en 5 minutos para evitar desconexiones
          ClienteFTP.setControlKeepAliveTimeout(300);
  
          //Conexión al servidor
          ClienteFTP.connect(prop_servidor, prop_puertoServidor);
  
          //Pone el ftp en modo pasivo para recibir un archivo, permanecerá así mientras no se cambie
          ClienteFTP.enterLocalPassiveMode(); 
  
          //Login
          resultado=ClienteFTP.login(prop_usuarioFtp, prop_passFtp);
  
  
          //Comprobación de la conexión
          int reply = ClienteFTP.getReplyCode(); 
          if (!FTPReply.isPositiveCompletion(reply)) {
              ClienteFTP.logout();
              ClienteFTP.disconnect();
                 throw new Exception("El servidor FTP ha rechazado la conexión, error:\n" + ClienteFTP.getReplyString()); 
          }
  
  
          //Se cambia el directorio al requerido
          resultado = resultado &amp;&amp; ClienteFTP.changeWorkingDirectory(prop_directorioServidor);
  
  
          //Tipo de archivo y envío
          resultado = resultado &amp;&amp; ClienteFTP.setFileType(FTP.BINARY_FILE_TYPE);
          //resultado = resultado &amp;&amp; ClienteFTP.setFileTransferMode(FTP.BLOCK_TRANSFER_MODE);
  
  
          BufferedInputStream buffIn=new BufferedInputStream(new FileInputStream(archivoLocal));
          resultado = resultado &amp;&amp; ClienteFTP.storeFile(archivoServer+aux, buffIn);
          System.out.println(ClienteFTP.getReplyString());
  
          buffIn.close();
          ClienteFTP.logout();
          ClienteFTP.disconnect();
  
          resultado=true;
  
      } catch (SocketException e) {
          System.out.println("Fallo 1");
          e.printStackTrace();
          resultado=false;
  
      } catch (IOException e) {
          System.out.println("Fallo 2");
          resultado=false;
          e.printStackTrace();
      } catch (Exception e) {
          resultado=false;
          e.printStackTrace();
      }
  
      return resultado ;
  }
  </code></pre>