title: JSpinner with SpinnerDateModel weird behaviour
body: <p>I swear this is so weird. I make a Spinner, set model with new SpinnerDateModel with current date, no limit, and Calendar.MINUTE unit.</p>
  
  <p>As it's said in the documentation:</p>
  
  <blockquote>
    <p>Creates a SpinnerDateModel that represents a sequence of dates between
    start and end. The nextValue and previousValue methods compute
    elements of the sequence by advancing or reversing the current date
    value by the calendarField time unit. The start and end parameters can be null to indicate that the range doesn't have an upper or lower bound.</p>
  </blockquote>
  
  <p>And here is my code:</p>
  
  <pre><code>import java.text.SimpleDateFormat;
  import java.util.Calendar;
  import java.util.Date;
  import javax.swing.JFrame;
  import javax.swing.JSpinner;
  import javax.swing.JSpinner.DefaultEditor;
  import javax.swing.SwingUtilities;
  import javax.swing.event.ChangeEvent;
  import javax.swing.event.ChangeListener;
  import javax.swing.text.DateFormatter;
  import javax.swing.text.DefaultFormatterFactory;
  
  public class JSpinnerTest {
  
      public JSpinnerTest() {
          initComponents();
      }
  
      private void initComponents() {
          JFrame frame = new JFrame("JSpinner Test");
          frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  
          JSpinner spinner = new JSpinner();
          spinner.setModel(new javax.swing.SpinnerDateModel(new Date(), null, null, Calendar.MINUTE));
          SimpleDateFormat format = new SimpleDateFormat("HH:mm");
  
          ((DefaultEditor) spinner.getEditor()).getTextField().setFormatterFactory(new DefaultFormatterFactory(new DateFormatter(format)));
  
  
          System.out.println("ORIGINAL VALUE: " + spinner.getValue().toString());
  
          spinner.addChangeListener(new ChangeListener() {
              @Override
              public void stateChanged(ChangeEvent e) {
                  System.out.println("VALUE: " + ((JSpinner) e.getSource()).getValue().toString());
              }
          });
  
          frame.add(spinner);
  
          frame.pack();
          frame.setVisible(true);
      }
  
      public static void main(String[] args) {
          SwingUtilities.invokeLater(new Runnable() {
              @Override
              public void run() {
                  new JSpinnerTest();
              }
          });
      }
  }
  </code></pre>
  
  <p>But every time I click on the tiny arrow button the date reset to Jan 01 1970. Why?</p>
  
  <p>Example Output:</p>
  
  <p>ORIGINAL VALUE: Thu Dec 06 17:06:13 ICT 2012 </p>
  
  <p>VALUE: Thu Jan 01 17:06:00 ICT 1970 </p>
  
  <p>VALUE: Thu Jan 01 17:06:00 ICT 1970 </p>
  
  <p>VALUE: Thu Jan 01 18:06:00 ICT 1970</p>