Help with my FTP client program

Hello All,
I am trying to modify a client FTP program to get a grasp on network programming. However when I try to connect to the host I get an error of Anonyymous login. What am I doing wrong? Below is the FTPclass program that I found on the net. How do resolve this issue? Thanks!!
      * Connects to the given FTP host on port 21, the default FTP port.
//     public boolean connect(String host, int port, String userName, String passWord) throws UnknownHostException,
//               IOException {
//          return connect(host, 21, userName, passWord);
      * Connects to the given FTP host on the given port.
     public boolean connect(String host, int port, String userName, String passWord) throws UnknownHostException,
               IOException {
          connectionSocket = new Socket(host, port);
          outputStream = new PrintStream(connectionSocket.getOutputStream());
          inputStream = new BufferedReader(new InputStreamReader(connectionSocket
                    .getInputStream()));
          if (!isPositiveCompleteResponse(getServerReply())) {
               disconnect();
               return false;
          return true;
      * Disconnects from the host to which we are currently connected.
     public void disconnect() {
          if (outputStream != null) {
               try {
                    if (loggedIn) {
                         logout();
                    outputStream.close();
                    inputStream.close();
                    connectionSocket.close();
               } catch (IOException e) {
               outputStream = null;
               inputStream = null;
               connectionSocket = null;
      * Wrapper for the commands <code>user [username]</code> and <code>pass
      * [password]</code>.
     public boolean login(String username, String password) throws IOException {
          int response = executeCommand("user " + username);
          if (!isPositiveIntermediateResponse(response))
               return false;
          response = executeCommand("pass " + password);
          loggedIn = isPositiveCompleteResponse(response);
          return loggedIn;
      * Added by Julian: Logout before you disconnect (this is good form).
     public boolean logout() throws IOException {
          int response = executeCommand("quit");
          loggedIn = !isPositiveCompleteResponse(response);
          return !loggedIn;
      * Wrapper for the command <code>cwd [directory]</code>.
     public boolean changeDirectory(String directory) throws IOException {
          int response = executeCommand("cwd " + directory);
          return isPositiveCompleteResponse(response);
      * Wrapper for the commands <code>rnfr [oldName]</code> and <code>rnto
      * [newName]</code>.
     public boolean renameFile(String oldName, String newName)
               throws IOException {
          int response = executeCommand("rnfr " + oldName);
          if (!isPositiveIntermediateResponse(response))
               return false;
          response = executeCommand("rnto " + newName);
          return isPositiveCompleteResponse(response);
     /**Here is the code to test the client program
lass verifyFTP {
     public static void main(String[] args) {
          String serverName;
          String portNumber;
          int port = 21;
          FTPConnection ftp = null;
          try {
               if (args.length == 0) {
                    serverName = getStringFromUser("Enter the server you would like to connect to: ");
                    if (serverName.length() == 0) {
                         return;
                    }//end if
               } else {
                    serverName = args[0];
               }//end else
               String userName = "";
               String passWord = "";
               // set the FTPConnection parameter to true if you want to
               // see debug output in your console window
               ftp = new FTPConnection(true);
               System.out.println("Attempting to connect to " + serverName);
               ftp.connect(serverName, port, userName, passWord);
               if(ftp.login("", "")){
                    System.out.println("Successfully logged in!");
                    System.out.println("System type is: " + ftp.getSystemType());
                    System.out.println("Current directory is: "
                              + ftp.getCurrentDirectory());
                    String files = ftp.listFiles();
                    // private function that gets console input from the user
     private static String getStringFromUser(String prompt) throws IOException {
          System.out.print(prompt);
          BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
          return br.readLine();

You should print out exactly what you are sending and what you are recieving via the socket. You do this just before you send it and when you receive it (you do not modify it in any way first.)
You should also use an existing FTP client to log into your server. Presumably it is successful. Then you can use ethereal (free software google it) to examine exactly what the FTP client sends versus what you are sending. You will probably find that it is sending a different command than what you are.

Similar Messages

  • Any one could help me with this soap client program?

    Any one could help me with this soap client program?
    Below is the request format my partner is expecting to see:
    POST /Service.asmx HTTP/1.1
    Host: 192.168.1.1
    Content-Type: text/xml; charset=utf-8
    Content-Length: length
    SOAPAction: "https://api.abcdefg.com/GetList"
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
              xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
         <soap:Body>
              <GetList xmlns="https://api.abcdefg.com/">
                   <username>string</username>
                   <password>string</password>
              </GetList>
         </soap:Body>
    </soap:Envelope>The java client I wrote is blow:
    import javax.xml.soap.*;
    import java.util.Iterator;
    import java.net.URL;
    import java.io.*;
    public class Client {
        public static void main(String [] args) {
            try {
                SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory.newInstance();
                SOAPConnection connection = soapConnectionFactory.createConnection();
                SOAPFactory soapFactory = SOAPFactory.newInstance();
                MessageFactory factory = MessageFactory.newInstance();
                SOAPMessage message = factory.createMessage();
             // addd SOAPAction;
             MimeHeaders hd = message.getMimeHeaders();
             hd.addHeader("SOAPAction", "https://api.abcdefg.com/GetList");
                // get env and body;
                SOAPPart soapPart = message.getSOAPPart();
                SOAPEnvelope envelope = soapPart.getEnvelope();
             SOAPBody body = envelope.getBody();
                Name bodyName = soapFactory.createName("GetList", "", "https://api.abcdefg.com/");
                SOAPBodyElement bodyElement = body.addBodyElement(bodyName);
                //Constructing the body for the request;
             SOAPElement username = bodyElement.addChildElement("username");
             username.addTextNode("1234567");
             SOAPElement password = bodyElement.addChildElement("password");
             password.addTextNode("7654321");
                System.out.print("\nPrinting the message that is being sent: \n\n");
                message.writeTo(System.out);
                System.out.println("\n\n");
                URL endpoint = new URL ("https://api.abcdefg.com/Service.asmx");
                SOAPMessage response = connection.call(message, endpoint);
                connection.close();
                response.writeTo(System.out);
            }catch (Exception e) {
                 System.err.println("ERROR: ******* " + e.toString());
    }The response my partner's server returned is:
    <faultstring>Server did not recognize the value of HTTP Header SOAPAction:. </faultstring>I used similar code to access the web services provides via tomcat, it works fine...however, for this .NET services it does not work.
    By the way, I also have another version of the clirnt, using JDOM to construct a XML request and wrap with axis message. I got the same error message as above.
    Can anyone point out something for me?
    Any kind of comments will be appreciated!!
    Edited by: Nickolas.Chen on May 6, 2008 7:20 PM

    You will need to Contact iTunes Customer Service and request assistance
    Use this Link  >  Apple  Support  iTunes Store  Contact

  • Impossible Upload files with Filezilla FTP Client after upgrade win8 to win8.1

    Hi
    Things were working fine with win 8 but, after Upgrade to win 8.1 is not possible upload files with Filezilla  FTP Client.
    is there anyone facing same problem?
    thanks in advance for any answer to help me solve this issue 
    Regards 
    TC

    Hi,
    Please Change your transfer settings in site manager from either default or passive to active it to see what's going on.
    Also, check IE compatibility mode.
    In addition, I suggest you install all latest updates for Windows since these updates will improve and fix some known issues.
    Kate Li
    TechNet Community Support

  • Ftp Client program problem ...

    Hi all .
    I m trying to develope a simple FTP client program which will connect to the FTP server for download a file .. Now in the start i m just trying to get the current directory of the server using -- pwd -- command . My programs executes correct , but the Temporary file in which i m trying to store the outpur from server displays INVALID COMMAND (for my command) - and INVALID LOGIN (for user name) ---. What i think is there is a prlem with the syntax of my FTP configuration file .
    There are three files in the program:
    1.FTPClient.java
    2.ftp.txt (FTP Configuration File)
    3.temp.txt (File for storing the output from server)
    ----------- code for the JAVA file --------
    import java.net.*;
    import java.io.*;
    public class FtpClient {
    public static void main(String args[]) {
    try {
    Runtime rt = Runtime.getRuntime();
    String tempFile = "temp.txt";
    Process pr = rt.exec("ftp -s:ftp.txt 190.166.1.9");
    PrintStream out = new PrintStream(new FileOutputStream(tempFile),true);
    BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream()));
    String line;
    while((line=in.readLine()) != null)
    out.println(line);
    out.flush();
    out.close();
    in.close();
    pr.destroy();
    } //closes try
    catch (Exception e)
    {System.out.println(e.toString());}
    } // closes main
    -------------------- my FTP Configuration File (ftp.txt) -------------
    USER <computer>
    PASS <javame>
    pwd
    BYE
    ------------OUT PUT in my temp.txt FILE -----------
    User (190.166.1.9:(none)):
    Login incorrect.
    Invalid command.
    <javame>
    pwd
    530 Please login with USER and PASS.
    BYE

    Cross post
    http://forum.java.sun.com/thread.jspa?threadID=595231&messageID=3139200#3139200

  • FTP issues with DW CS5 that don't happen with an FTP client or MX

    On a mac OS 10.6.4, using DW CS5 to login to an existing site using FTP.  It connects fine but then all I get is a .txt file with a note indicating that FTP can't be used when Frontpage extensions are activated. I checked on my webserver status (at 1&1) and they aren't active. So I tried with an FTP client like cyberduck and all the files are there. Likewise, I used an old version of DW (think it was MX vintage 2002) and all the files show up server side just fine - (I just can't download the site due to version incompatibility so DW rejects it). Does anyone know what could be going wrong here? As far as I know the site was created by DWMX (think that was 2004). Thanks

    I assumed that if I was using an older version of DW then it wouldn't download pages authored with a later version but I guess it's just code...
    Yep - it's just text files containing HTML, CSS, javascript, and links to other files.
    When using FTP through DWMX I see the server side of the site
    You can see the files listed on the remote server?
    I can send you the details if you wish, I'm not sure what's going on here...
    You can try sending to forums at domain dot com (replace 'domain' with 'great-web-sights')

  • Cannot configure wrt54gs v6 router for use with filezilla FTP client

    I am new to working with FTP and very rusty on networking in general.  I just downloaded filezilla to create a FTP client on my desktop.  When I run their wizard, it says the connection is tainted by my router.  All the forums for filezilla say I need to configure my router to allow traffic on either port 21 (ftp) or a range of ports ( they suggest 50000 to 50100).
    Please let me know what I need to do to make this work
    thanks in advance
    ldygunner

    To answer your other questions, the tutorials have it all wrong. What they really need to explain, but fail to do so, is that the only situation where a FTP client would need to use active mode (the PORT command) is where the FTP server can't accept inbound connections on arbitrary port numbers. But that's a pathological case anyway: the FTP server can always accept connections on some well defined set of port numbers, to keep its own local firewall or NAT router happy. Consequently, there is really no need at all for a FTP client system to open up any ports to support active mode, rather than always operate in passive mode (as browsers do.)
    The fact of the matter is that if passive mode works in a browser for you, it will work for Filezilla also.
    And the configuration tests it runs are brain damaged. Even though the wizard recommends passive mode, it never tests for it. And it doesn't really test active mode either. What it really tests is whether anything between the client and the server is "transparently" translating IP addresses and port numbers. Such a test is broken, because the mere fact of port numbers being rewritten in TCP packets is irrelevant to whether PORT (active mode) will succeed or fail.
    For completeness, in case someone decides to get pedantic, there is a case where a FTP client system would need the active mode PORT command to work, but that case is now of historical interest only. It's a scenario that FTP servers no longer support, for security reasons. (What is it? When the FTP client is operating as a controller to remotely transfer files between two servers: it tells one server to use passive mode, and sends the address/port it gets to the other server in active mode, which in theory would make the second server open a connection to the first. This, in fact, is why two modes, active and passive, were originally defined in the FTP standard!)  And it still wouldn't need open ports on the client system.
    Message Edited by arayq2 on 10-19-2008 09:12 PM

  • Please help with structure of my program

    I am hoping someone can help me with a motor control program that I am
    writing.  The program is too large to post here, but I attached a
    rough outline of the program.  I think the problem is with the
    higher level logic, so hopefully that will provide the necessary
    information. 
    I have a front panel with lots of buttons to control the motors (eg:
    power, stop, start).  There is an event structure that contains
    most of those buttons (power, start, etc), but if that structure is
    exectuting, the other buttons won't work.  I need to be able to
    stop the motors and exit at any time (for safety), so I made another
    event structure that contains the stop and exit buttons.  Is this
    the right way to do this?
    Also, I want all the loops in the program to run continually until the
    exit button is pressed.  Since the exit button actually calls
    exit.vi and closes the whole program, I just wired a F constant to the
    stop on the while loops so they never stop.  Could this be causing
    my problems? 
    Hopefully I provided enough information here, but if not, please write back and let me know.
    Thanks,
    Kasey
    PS. In case anyone wonders why the whole thing is in a sequence, I need
    it for other aspects of the program (safety lights, etc...).  I
    doubt it makes a difference, but I wanted to include it.
    Attachments:
    screenshot.jpg ‏258 KB

    This is the first time I have seen a case where it is useful to have two or more event structures in one program.  Since they are in separate parallel loops, I would think there would not be a problem.  I like the idea that the program can be stopped in the middle of an event, for safety reasons.  Great structure, Kasey.  The only thing I would add is to make sure that your exit vi gracefully shuts down the program.  Like if files or references are open, they get closed before terminating the vi.  Just be on the look out for race conditions since you have 3 events that can happen at one time.  One event might affect some indicator that is being handled by another event.  Also, instead of wiring a false to the other loops, maybe you could use local variables of one general stop boolean.  Since your exit vi stops all execution, it may not make much of a difference.
    - tbob
    Inventor of the WORM Global

  • Help with a Word Counting Program..

    I need some help with a program I am trying to write
    The program is being written in BlueJ.
    Im just starting the program and am completely confused on how I should write this...
    But here is what I have to do..
    I have to use a scanner to scan a Text file and count the # of Words the number of Vowels (including Y when it is) and the # of Palindromes (Word spelled same forward and Back) as well as which Palindromes are being used.
    It would be good to have a class to clean the text and a seperate class for the tasks...
    I do not want to use anything other than "If" statements and while loops (no "for" loops) and only use Printwriter as the output file writer.
    Thnx to anyone in advance

    I have a basic Vowel coding that doeswnt work...
    public class vowel{
    String word = "heyyou";
    String vowels = "aeiouy";
    int[] countv = new int[vowels.length()];
    int countv2;
    int i=0;
    if(i<word.length();) { i++ {
    if (int j=0 && j<vowels.length()) {
    return j++;
    if (word.charAt(i)==vowels.charAt(j)) {
    countV[j]++; countV2++;
    for (int i=0; i<vowels.length(); i++) {
    System.out.println("Vowel "vowels.charAt(i)" = "+vcnt);
    System.out.println("Consonants = "+(word.length()-vtot)); }
    I also have a basic Palindrome code that works as a boolean but I need to make it return what the palindromes are and how many of them are there. I wanna know how I would do this.
    public class Palindrome{
    public static boolean isPalindrome(String word) {
    int left = 0;
    int right = word.length() -1;
    while (left < right) {       
    if (word.charAt(left) != word.charAt(right)) {
    return false;
    left++;
    right--;
    return true;
    I would also like to know how to actually start writing the word counter.

  • Help with Rock, Paper, Scissors Program

    I need some help with my program, I got understand writing each of the methods I have to do but then i don't understand how to piece it together to make the program work. in the main method...I didn't complete the scrolling message method I just wanted to get the game itself working first then I was going to complete that method. I just need to know if I'm heading in the right direction or if i did something completly wrong
    import javax.swing.*;
    public class RockPaperScissors
         public static void displayScrollingMessage (String list)
              String header = "Game #\tUser\tComputer\tWinner\t";
         public static void getUserChoice ( )
              int game = 1;
              for ( game = 1; game > 0 ; game ++)
                   String input = JOptionPane.showInputDialog ("Choose Rock, Paper, or Scissors\n Enter\n 1 for Rock" +
                                                                                              "\n2 for Paper\n3 for Scissors\n4 to Exit");
                   String list = "   ";
                   int option = Interger.parseInt (input);
                   switch (option)
                        case 1:
                                  int userChoice = 1;
                                  getComputersChoice ();
                                  itemName (userChoice);
                                  itemName2 (computersChoice);
                                  whowins (userChoice, computersChoice);
                                  winnerName (winner);
                                  winlose (winner);
                                  String list =+ game + "/t" + itemName + "\t" + itemName2 + "\t" + winnerName + "\n";
                                  String winner = JOptionPane.showOutputDialog (null, "You picked " + itemName + " and the computer picked "
                                                                                                                  + itemName2 + "\nTherefore " + winlose);
                                  return userChoice;
                                  break;
                        case 2:
                                  userChoice = 2;
                                  getComputersChoice ();
                                  itemName (userChoice);
                                  itemName2 (computersChoice);
                                  whowins (userChoice, computersChoice);
                                  winnerName (winner);
                                  winlose (winner);
                                  String list =+ game + "\t" + itemName + "\t" + itemName2 + "\t" + winnerName + "\n";
                                  String winner = JOptionPane.showOutputDialog (null, "You picked " + itemName + " and the computer picked "
                                                                                                                  + itemName2 + "\nTherefore " + winlose);
                                  return userChoice;
                                  break;
                        case 3:
                                  userChoice = 3;
                                  getComputersChoice ();
                                  itemName (userChoice);
                                  itemName2 (computersChoice);
                                  whowins (userChoice, computersChoice);
                                  winnerName (winner);
                                  winlose (winner);
                                  String list =+ game + "\t" + itemName + "\t" + itemName2 + "\t" + winnerName + "\n";
                                  String winner = JOptionPane.showOutputDialog (null, "You picked " + itemName + " and the computer picked "
                                                                                                                  + itemName2 + "\nTherefore " + winlose);                              
                                  return userChoice;
                                  break;
                        case 4:
                                  break;
                        default:
                             JOptionPane.showMessageDialog (null, "Error!! Please enter a valid option!"
                                                                                              , JOptionPane.WARNING_MESSAGE);
                        break;
         public static int getComputersChoice ()
              int computersChoice = (int) (3 * Math.random() + 1);
              return computersChoice;
         public static String itemName (int userChoice)
              if (userChoice == 1)
                   String itemName = Rock;
              else
                   if (userChoice == 2)
                        String itemName = Paper;
                   else
                        if (userChoice == 3)
                             String itemName = Scissors;
              return itemName;
              public static string itemName2 (int computersChoice)
              if (computersChoice == 1)
                   String itemName2 = Rock;
              else
                   if (computersChoice == 2)
                        String itemName2 = Paper;
                   else
                        if (computersChoice == 3)
                             String itemName2 = Scissors;
              return itemName2;
         public static string winlose (int winner)
              if (winner == 1)
                   winlose = "You Win!!!";
              else
              if (winner == 2)
                   winlose = "You Lose!!";
              else
              if (winner == 3)
                   winlose = "Its a Tie!!";
         return winlose;
         public static string winnerName (int winner)
              if (winner == 1)
                   String winnerName = "User";
              else
              if (winner == 2)
                   String winnerName = "Computer";
              else
              if (winner == 2)
                   String winnerName = "Tie";
              return winnerName;
         public static void whoWins (int computersChoice, int userChoice)
              if (userChoice == 1 && computersChoice == 1)
                   int winner = 3;
              else
              if (userChoice == 1 && computersChoice == 2)
                   int winner = 2;
              else
              if (userChoice == 1 && computersChoice == 3)
                   int winner = 1;
              else
              if (userChoice == 2 && computersChoice == 1)
                   int winner = 1;
              else
              if (userChoice == 2 && computersChoice == 2)
                   int winner = 3;
              else
              if (userChoice == 2 && computersChoice == 3)
                   int winner = 2;
              else
              if (userChoice == 3 && computersChoice == 1)
                   int winner = 2;
              else {
              if (userChoice == 3 && computersChoice == 2)
                   int winner = 1;
              else
              if (userChoice == 3 && computersChoice == 3)
                   int winner = 3;
              return winner;
         public static void main (String args [])
              getUserChoice ( );
              System.exit (0);
    }

    Here's something to compare to
    import javax.swing.*;
    public class RockPaperScissors
      public RockPaperScissors()
        String[] pick = {"Rock","Paper","Scissors","Exit"};
        int user = 0, computer = 0;
        String result = "", output = "";
        while(user < 3)
          user = JOptionPane.showOptionDialog(null,"Which do you want?",
                               "Rock-Paper-Scissors",-1,-1,null,pick,"");
          if(user == 3) break;
          computer = (int)(3*Math.random());
          result = getWinner(user,computer);
          output = "You chose "+pick[user] + "\nComputer chose " + pick[computer]+
                   "\n\nResult:- " + result;
          JOptionPane.showMessageDialog(null,output);        
        System.exit(0);
      public String getWinner(int player, int comp)
        if(Math.abs(player - comp) > 1)
          if(player == 2) player = -1;
          if(comp == 2) comp = -1;
        return player > comp? "You win.":player < comp? "Computer wins.":"Tie.";
      public static void main(String[] args){new RockPaperScissors();}
    }

  • Help with 7 segment led program

    hey, I need some help with my program. The program is supposed to make digital numbers display randomly with a possible decimal point in it. If the decimal # has a leading zero, then the zero needs to be not displayed. also, when you click the change color button, the numbers and decimal point are supposed to change to one of three preset colors. I've got the numbers changing colors, but I can't get the decimal point to change color, nor can I get the numbers to change randomly.
    package led7segment;
    import java.awt.event.*;
    import javax.swing.*;
    * Robert Lundahl
    * cs1410-002
    * @author Matthew Lohmeyer
    public class Main {
         * @param args the command line arguments
        public static void main(String[] args) throws InterruptedException {
            // TODO code application logic here
            JFrame.setDefaultLookAndFeelDecorated(true);
            MyJFrame mjf = new MyJFrame();
            while (true) {
                int deci = (int)(Math.random() * 3);
                int num = (int)(Math.random() * 1000);
                Digit.DisplayNumber(num, deci);
                Thread.sleep(4000);
    package led7segment;
    import java.awt.Color;
    import java.awt.event.*;
    import javax.swing.*;
    * Robert Lundahl
    * cs1410-002
    * @author Matthew Lohmeyer
    public class MyJFrame extends JFrame implements ActionListener{
        private JButton jb1, jb2, jb3;
        Digit d1, d2, d3;
        Oval deci;
        Color c;
        Oval o1, o2, o3;
        public MyJFrame()
            super("LED Display");
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setBounds(50, 50, 500, 320);
            setVisible(true);
            setLayout(null);
    //        jb1 = new JButton("Down");
    //        jb1.setBounds(10,225, 75, 50);
    //        add(jb1);
    //        jb1.addActionListener(this);
            jb2 = new JButton("Change Color");
            jb2.setBounds(10,225, 200, 50);
            add(jb2);
            jb2.addActionListener(this);
            jb3 = new JButton("Exit");
            jb3.setBounds(250,225, 100, 50);
            add(jb3);
            jb3.addActionListener(this);
            d1 =new Digit(7);
            add(d1);
            d1.setBounds(10,10,120,190);
            d1.setVisible(true);
            d2 =new Digit(7);
            d2.setBounds(150,10,120,190);
            add(d2);
            d2.setVisible(true);
            d3 =new Digit(7);
            d3.setBounds(300,10,120,190);
            add(d3);
            d3.setVisible(true);
            o1 = new Oval(125, 160, 15, 15);
            o1.setVisible(true);
            add(o1, 0);
            o2 = new Oval(275, 160, 15, 15);
            o2.setVisible(true);
            add(o2, 0);
            o3 = new Oval(425, 160, 15, 15);
            o3.setVisible(true);
            add(o3, 0);
            repaint();
        public void actionPerformed(ActionEvent e) {
            Object j = e.getSource();
    //        if(j==jb1)
    //            d1.incDown();
    //            d2.incDown();
    //            d3.incDown();
            if(j==jb2)
                d1.changeColor();
                d2.changeColor();
                d3.changeColor();
                o1.changeColor();
            else if(j==jb3)
                d1.incUp();
                d2.incUp();
                d3.incUp();
    package led7segment;
    import java.awt.Color;
    import java.awt.event.*;
    import javax.swing.*;
    * Robert Lundahl
    * cs1410-002
    * @author Matthew Lohmeyer
    public class Digit extends JComponent{
        Rectangle rect[] = new Rectangle[7];
        Oval o1[] = new Oval[7];
        private boolean decimal;
        private Color mycolor[] = new Color[]{Color.RED, Color.GREEN,  Color.BLUE};
        private int cindex = 0;
        private int increment =8;
        private Rectangle topRectangle = new Rectangle(23, 10, 66, 20);
        private Rectangle leftTopRectangle = new Rectangle(0, 13, 20, 76);
        private Rectangle leftBottomRectangle = new Rectangle(0, 92, 20, 76);
        private Rectangle bottomRectangle = new Rectangle(23, 151, 66, 20);
        private Rectangle rightBottomRectangle = new Rectangle(92, 92, 20, 76);
        private Rectangle rightTopRectangle = new Rectangle(92, 13, 20, 76);
        private Rectangle midRectangle = new Rectangle(23, 82, 66, 20);
        public Digit(int n)
            super();
            rect[0] = topRectangle;
            rect[1] = leftTopRectangle;
            rect[2] = midRectangle;
            rect[3] = leftBottomRectangle;
            rect[4] = bottomRectangle;
            rect[5] = rightTopRectangle;
            rect[6] = rightBottomRectangle;
            for (int i = 0; i<7; i++)
                add(rect);
    setVisible(true);
    public void HideDigit(){
    for (int i = 0; i<7; i++)
    rect[i].setVisible(false);
    void changeColor() {
    if(cindex==3)
    cindex=0;
    for (int i = 0; i < rect.length; i++) {
    rect[i].setBackground(mycolor[cindex]);
    //o1[i].setBackground(mycolor[cindex]);
    cindex++;
    void DisplayNumber(int n, int decimals)
    n=increment;
    switch(increment)
    case 0:
    displayzero();
    break;
    case 1:
    displayone();
    break;
    case 2:
    displaytwo();
    break;
    case 3:
    displaythree();
    break;
    case 4:
    displayfour();
    break;
    case 5:
    displayfive();
    break;
    case 6:
    displaysix();
    break;
    case 7:
    displayseven();
    break;
    case 8:
    displayeight();
    break;
    case 9:
    displaynine();
    break;
    public void SetDecimal(boolean flag)
    decimal = flag;
    o1.setVisible(decimal);
    // void incDown() {
    // if(increment==0)
    // increment=10;
    // increment--;
    // switch(increment)
    // case 0:
    // displayzero();
    // break;
    // case 1:
    // displayone();
    // break;
    // case 2:
    // displaytwo();
    // break;
    // case 3:
    // displaythree();
    // break;
    // case 4:
    // displayfour();
    // break;
    // case 5:
    // displayfive();
    // break;
    // case 6:
    // displaysix();
    // break;
    // case 7:
    // displayseven();
    // break;
    // case 8:
    // displayeight();
    // break;
    // case 9:
    // displaynine();
    // break;
    void incUp() {
    System.exit(WIDTH);
    // if(increment==9)
    // increment=-1;
    // increment++;
    // switch(increment)
    // case 0:
    // displayzero();
    // break;
    // case 1:
    // displayone();
    // break;
    // case 2:
    // displaytwo();
    // break;
    // case 3:
    // displaythree();
    // break;
    // case 4:
    // displayfour();
    // break;
    // case 5:
    // displayfive();
    // break;
    // case 6:
    // displaysix();
    // break;
    // case 7:
    // displayseven();
    // break;
    // case 8:
    // displayeight();
    // break;
    // case 9:
    // displaynine();
    // break;
    void displayzero()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(true);
    midRectangle.setVisible(false);
    leftBottomRectangle.setVisible(true);
    bottomRectangle.setVisible(true);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(true);
    void displayone()
    topRectangle.setVisible(false);
    leftTopRectangle.setVisible(false);
    midRectangle.setVisible(false);
    leftBottomRectangle.setVisible(false);
    bottomRectangle.setVisible(false);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(true);
    void displaytwo()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(false);
    midRectangle.setVisible(true);
    leftBottomRectangle.setVisible(true);
    bottomRectangle.setVisible(true);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(false);
    void displaythree()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(false);
    midRectangle.setVisible(true);
    leftBottomRectangle.setVisible(false);
    bottomRectangle.setVisible(true);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(true);
    void displayfour()
    topRectangle.setVisible(false);
    leftTopRectangle.setVisible(true);
    midRectangle.setVisible(true);
    leftBottomRectangle.setVisible(false);
    bottomRectangle.setVisible(false);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(true);
    void displayfive()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(true);
    midRectangle.setVisible(true);
    leftBottomRectangle.setVisible(false);
    bottomRectangle.setVisible(true);
    rightTopRectangle.setVisible(false);
    rightBottomRectangle.setVisible(true);
    void displaysix()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(true);
    midRectangle.setVisible(true);
    leftBottomRectangle.setVisible(true);
    bottomRectangle.setVisible(true);
    rightTopRectangle.setVisible(false);
    rightBottomRectangle.setVisible(true);
    void displayseven()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(false);
    midRectangle.setVisible(false);
    leftBottomRectangle.setVisible(false);
    bottomRectangle.setVisible(false);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(true);
    void displayeight()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(true);
    midRectangle.setVisible(true);
    leftBottomRectangle.setVisible(true);
    bottomRectangle.setVisible(true);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(true);
    void displaynine()
    topRectangle.setVisible(true);
    leftTopRectangle.setVisible(true);
    midRectangle.setVisible(true);
    leftBottomRectangle.setVisible(false);
    bottomRectangle.setVisible(true);
    rightTopRectangle.setVisible(true);
    rightBottomRectangle.setVisible(true);
    package led7segment;
    import javax.swing.*;
    import java.awt.*;
    /** Oval Supplier Class
    * Robert Lundahl
    * cs1410-002
    * @author Matthew Lohmeyer
    public class Oval extends JComponent {
    private Color mycolor[] = new Color[]{Color.RED, Color.GREEN,  Color.BLUE};
    private int cindex = 0;
    Oval o1[] = new Oval[0];
    /** post: getX() == x and getY() == y
    * and getWidth() == w and getHeight() == h
    * and getBackground() == Color.black
         public Oval(int x, int y, int w, int h) {
    super();
    setBounds(x, y, w, h);
    setBackground(Color.black);
    /** post: this method draws a filled Oval
    * and the upper left corner of the bounding rectangle is (getX(), getY())
    * and the oval's dimensions are getWidth() and getHeight()
    * and the oval's color is getBackground()
    @Override
    public void paint(Graphics g) {
    g.setColor( getBackground() );
    g.fillOval(0, 0, getWidth()-1, getHeight()-1);
    paintChildren(g);
    void changeColor() {
    if(cindex==3)
    cindex=0;
    for (int i = 0; i < o1.length; i++) {
    //rect[i].setBackground(mycolor[cindex]);
    o1[i].setBackground(mycolor[cindex]);
    cindex++;
    package led7segment;
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.event.*;
    import javax.swing.*;
    * Robert Lundahl
    * cs1410-002
    * @author Matthew Lohmeyer
    public class Rectangle extends JComponent
    public Rectangle(int x, int y, int w, int h) {
    super();
         setBounds(x, y, w, h);
    setBackground(Color.black);
    @Override
    public void paint(Graphics g) {
    g.setColor( getBackground() );
    g.fillRect(0, 0, getWidth()-1, getHeight()-1);
    paintChildren(g);
    Edited by: matttheskibum7 on Feb 9, 2008 8:22 PM
    Edited by: matttheskibum7 on Feb 9, 2008 8:27 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Your code does not compile.
    EDIT:
    for instance your Main class alone has a several glaring problems that suggest that you are foundering here. Please see comments in code below:
    public class Main {
        public static void main(String[] args) throws InterruptedException {
            JFrame.setDefaultLookAndFeelDecorated(true);
            MyJFrame mjf = new MyJFrame();
            // why use "while (true)"??? Swing is supposed to be event driven and doesn't need loops like this.
            // do you need to use a Swing Timer instead?
            while (true) {
                int deci = (int)(Math.random() * 3);
                int num = (int)(Math.random() * 1000);
                // why is the method below being called as if it were a
                // static method when it's not?  This is not a legal
                // expression
                Digit.DisplayNumber(num, deci);
                // why is the method below putting the event dispatch thread
                // (the EDT) to sleep.  While this is legal, it's not a smart
                // thing to do
                Thread.sleep(4000);
    }Edited by: Encephalopathic on Feb 9, 2008 10:15 PM

  • Help with implementing two different programs

    I need help with a couple of Java programs that I downloaded. I hope someone can help me. They work great if they're on their own, but if they are both on the same page, the 2nd one works, and the 1st one stops working. I'm pretty new to Java, so I don't know how to debug it too well.. Here's the 1st program:
    Conveyor belt slideshow script-
    ? Dynamic Drive (www.dynamicdrive.com)
    For full source code, 100's more DHTML scripts, and Terms Of Use, visit dynamicdrive.com
    //Specify the slider's width (in pixels)
    var sliderwidth="250px"
    //Specify the slider's height
    var sliderheight="19px"
    //Specify the slider's slide speed (larger is faster 1-10)
    var slidespeed=2
    //configure background color:
    slidebgcolor=""
    //Specify the slider's images
    var leftrightslide=new Array()
    var finalslide=''
    leftrightslide[0]='<img src="images/movingwords.gif">'
    ////NO NEED TO EDIT BELOW THIS LINE////////////
    var copyspeed=slidespeed
    leftrightslide='<nobr>'+leftrightslide.join(" ")+'</nobr>'
    var iedom=document.all||document.getElementById
    if (iedom)
    //Next line edited for readability
    document.write('<span id="temp" style="visibility:hidden;position:absolute;top:-100px;left:-9000px">
    '+leftrightslide+'</span>')
    var actualwidth=''
    var cross_slide, ns_slide
    function fillup(){
    if (iedom){
    cross_slide=document.getElementById? document.getElementById("test2") : document.all.test2
    cross_slide2=document.getElementById? document.getElementById("test3") : document.all.test3
    cross_slide.innerHTML=cross_slide2.innerHTML=leftrightslide
    actualwidth=document.all? cross_slide.offsetWidth : document.getElementById("temp").offsetWidth
    cross_slide2.style.left=actualwidth+20+"px"
    else if (document.layers){
    ns_slide=document.ns_slidemenu.document.ns_slidemenu2
    ns_slide2=document.ns_slidemenu.document.ns_slidemenu3
    ns_slide.document.write(leftrightslide)
    ns_slide.document.close()
    actualwidth=ns_slide.document.width
    ns_slide2.left=actualwidth+20
    ns_slide2.document.write(leftrightslide)
    ns_slide2.document.close()
    lefttime=setInterval("slideleft()",30)
    window.onload=fillup
    function slideleft(){
    if (iedom){
    if (parseInt(cross_slide.style.left)>(actualwidth*(-1)+8))
    cross_slide.style.left=parseInt(cross_slide.style.left)-copyspeed+"px"
    else
    cross_slide.style.left=parseInt(cross_slide2.style.left)+actualwidth+30+"px"
    if (parseInt(cross_slide2.style.left)>(actualwidth*(-1)+8))
    cross_slide2.style.left=parseInt(cross_slide2.style.left)-copyspeed+"px"
    else
    cross_slide2.style.left=parseInt(cross_slide.style.left)+actualwidth+30+"px"
    else if (document.layers){
    if (ns_slide.left>(actualwidth*(-1)+8))
    ns_slide.left-=copyspeed
    else
    ns_slide.left=ns_slide2.left+actualwidth+30
    if (ns_slide2.left>(actualwidth*(-1)+8))
    ns_slide2.left-=copyspeed
    else
    ns_slide2.left=ns_slide.left+actualwidth+30
    if (iedom||document.layers){
    with (document){
    document.write('<table border="0" cellspacing="0" cellpadding="0"><td>')
    if (iedom){
    write('<div style="position:relative;width:'+sliderwidth+';height:'+sliderheight+';overflow:hidden">')
    //Next line edited for readability
    write('<div style="position:absolute;width:'+sliderwidth+';height:'+sliderheight+';
    background-color:'+slidebgcolor+'" onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed">')
    write('<div id="test2" style="position:absolute;left:0px;top:0px"></div>')
    write('<div id="test3" style="position:absolute;left:-1000px;top:0px"></div>')
    write('</div></div>')
    else if (document.layers){
    write('<ilayer width='+sliderwidth+' height='+sliderheight+' name="ns_slidemenu" bgColor='+slidebgcolor+'>')
    write('<layer name="ns_slidemenu2" left=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"></layer>')
    write('<layer name="ns_slidemenu3" left=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"></layer>')
    write('</ilayer>')
    document.write('</td></table>')
    }Here's the 2nd program:
    //Fade-in image slideshow- By Dynamic Drive
    //For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
    //This credit MUST stay intact for use
    var slideshow_width='305px' //SET IMAGE WIDTH
    var slideshow_height='152px' //SET IMAGE HEIGHT
    var pause=5000 //SET PAUSE BETWEEN SLIDE (3000=3 seconds)
    var fadeimages=new Array()
    //SET IMAGE PATHS. Extend or contract array as needed
    fadeimages[0]="images/Computer Retail Store.jpg"
    fadeimages[1]="images/Computer S&S ad.jpg"
    fadeimages[2]="images/Computer S&S ad 2.jpg"
    fadeimages[3]="images/Phone S&S ad.jpg"
    ////NO need to edit beyond here/////////////
    var preloadedimages=new Array()
    for (p=0;p<fadeimages.length;p++){
    preloadedimages[p]=new Image()
    preloadedimages[p].src=fadeimages[p]
    var ie4=document.all
    var dom=document.getElementById
    if (ie4||dom)
    //Next line edited for readability
    document.write('<div style="position:relative;width:'+slideshow_width+';height:'+slideshow_height+';overflow:hidden">
    <div  id="canvas0" style="position:absolute;width:'+slideshow_width+';height:'+slideshow_height+';top:0;left:0;filter:
    alpha(opacity=10);-moz-opacity:10"></div><div id="canvas1" style="position:absolute;width:'+slideshow_width+';
    height:'+slideshow_height+';top:0;left:0;filter:
    alpha(opacity=10);-moz-opacity:10"></div></div>')
    else
    document.write('<img name="defaultslide" src="'+fadeimages[0]+'">')
    var curpos=10
    var degree=10
    var curcanvas="canvas0"
    var curimageindex=0
    var nextimageindex=1
    function fadepic(){
    if (curpos<100){
    curpos+=10
    if (tempobj.filters)
    tempobj.filters.alpha.opacity=curpos
    else if (tempobj.style.MozOpacity)
    tempobj.style.MozOpacity=curpos/100
    else{
    clearInterval(dropslide)
    nextcanvas=(curcanvas=="canvas0")? "canvas0" : "canvas1"
    tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
    tempobj.innerHTML='<img src="'+fadeimages[nextimageindex]+'">'
    nextimageindex=(nextimageindex<fadeimages.length-1)? nextimageindex+1 : 0
    setTimeout("rotateimage()",pause)
    function rotateimage(){
    if (ie4||dom){
    resetit(curcanvas)
    var crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
    crossobj.style.zIndex++
    var temp='setInterval("fadepic()",50)'
    dropslide=eval(temp)
    curcanvas=(curcanvas=="canvas0")? "canvas1" : "canvas0"
    else
    document.images.defaultslide.src=fadeimages[curimageindex]
    curimageindex=(curimageindex<fadeimages.length-1)? curimageindex+1 : 0
    function resetit(what){
    curpos=10
    var crossobj=ie4? eval("document.all."+what) : document.getElementById(what)
    if (crossobj.filters)
    crossobj.filters.alpha.opacity=curpos
    else if (crossobj.style.MozOpacity)
    crossobj.style.MozOpacity=curpos/100
    function startit(){
    var crossobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
    crossobj.innerHTML='<img src="'+fadeimages[curimageindex]+'">'
    rotateimage()
    if (ie4||dom)
    window.onload=startit
    else
    setInterval("rotateimage()",pause)Like I said, if the 2nd program is put the same page with the 1st, the 1st program stops working. Any ideas? I would really like to implement both of these programs.

    The code you post is javascript, NOT java ! ... but either way, maybe the scripts have variables in conflict, so if you pack each piece of code in diferent functions and then you call the functions it may work.

  • Help with GMAIL in Mail Program....

    Hi,
    I am using the Apple Mail Program in Leopard and just picked up a Gmail account. I want to set up my Gmail account on 4 different computers work/home/laptop) that I access all the time and am hoping I can set it up so that wherever I check my mail it looks more or less like it does on Gmail.com with respect to the emails:
    1. All mail that I've deleted on another computer is gone from all the other computers when checking mail on those other computers. Is that possible??? Currently, I use a bellsouth.net account and a .mac account, and when I log on to any of the computers via the mail program, it gives me all of my 'new mail', whether or not it was deleted on another computer.
    2. Sent mail. Is there any way to send it on one computer's Mail program and have it show up in my Sent box on the other computers?
    3. Ditto on Trash and other folders
    I did try to set it up my Gmail account using IMAP but I thendeleted the account on Mail because it looked 'weird'. I had a Mailbox in my Inbox for the Gmail account and then also another whole separate, duplicate Gmail account (with All Mail, Drafts, Sent Mail, Spam, Starred, and Trash Folders) further down the left side of mail. In testing an email to gmail account from my .mac account, the mail ended up in two places in my Mail and deleting one did not delete the others.
    If this cannot work, I can just go to gmail.com. BUT, I so love MAIL that I am hoping there is a fix to all this.
    Thanks in advance for any help you can provide.

    My recollection is that unless you are a paid Hotmail account member, you cannot use Mail. Do a search within the discussion group, as I am not an expert, but I recall not getting Hotmail for that very reason.
    Perhaps give gmail a try.....
    That said....I still need some help with my posting! So please and thank you.

  • I need help with the Bon Scott program

    Help me! I am learning Java from the book, "Teach Yourself Java through Osmosis" and I am having trouble with the Bon Scott program. Everytime I run it, which has been ca. 2 billion, it prints out, "Some balls are held for charity and some for fancy dress, but when they're held for pleasure, they're the balls that I like the best." It then proceeds to get pissed and finally vomits.
    Any suggestions ?

    What color is the vomit? That is, exactly what does it do when it gets pissed and vomits?

  • Help with Java card client

    Hello All ,
    i am new to javacard ...
    i am using JCOP31 , and smartcard reader 5321
    and implementing the java card by using Eclipse with the JCOP tools plugin
    I installed an applet on a java card... and i was told that i have to write a client program to test it.
    I hope some one show me how to implement a javacard Client ..and what i should do to implement a JavaCard Client .
    Thank You for your time.

    Hi,
    Your best bet (for communicating with a real card) is to use the classes in the javax.smartcardio package in Java 6. If you search the forum you should be able to find examples of using this.
    If you need to communicate with the JCOP card simulator, you will need to use the JCOP offcard API's. This is a little bit harder and you will most likely have to use trial and error (and Eclipse) to find the classes you need. I have used this in the past, but I do not have any examples of this. It was actually possible to develop a service layer that can use either API so you can switch between a real card and JCOP simulator (handy for debugging). The JCOP offcard API jar file is in the JCOP Tools plugins directory.
    Cheers,
    Shane

  • Help with apache ftp

    Hi all
    I am using the apache FTPClient to ftp files around. My problem is that I seem to be able to only send / retrieve 1 file before I need to reset the whole connection. I think that the answer may lie with this method
    http://commons.apache.org/net/api/org/apache/commons/net/ftp/FTPClient.html#setRestartOffset(long)
    ... that's what I need, right? A restart offset, I think. How do I do it?
    Does anyone have any experience with this package, or with programmatic FTP?

    i figured this out.

Maybe you are looking for