Index: org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.spi/src/main/java/org/gvsig/tools/dynform/spi/dynformfield/AbstractJDynFormField.java
===================================================================
--- org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.spi/src/main/java/org/gvsig/tools/dynform/spi/dynformfield/AbstractJDynFormField.java	(revision 1997)
+++ org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.spi/src/main/java/org/gvsig/tools/dynform/spi/dynformfield/AbstractJDynFormField.java	(revision 1998)
@@ -424,8 +424,9 @@
         }
         if (this.contents instanceof JSpinner) {
             Object value = this.getDefinition().getDefaultValue();
-            if (value != null) {
-                value = value.toString();
+            if (value==null) {
+                ((JSpinner) this.contents).setValue(0);
+                return;
             }
             ((JSpinner) this.contents).setValue(value);
             return;
Index: org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.spi/src/main/java/org/gvsig/tools/dynform/spi/dynformfield/AbstractJDynFormFieldWithValueList.java
===================================================================
--- org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.spi/src/main/java/org/gvsig/tools/dynform/spi/dynformfield/AbstractJDynFormFieldWithValueList.java	(revision 1997)
+++ org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.spi/src/main/java/org/gvsig/tools/dynform/spi/dynformfield/AbstractJDynFormFieldWithValueList.java	(revision 1998)
@@ -35,6 +35,7 @@
 import javax.swing.JComboBox;
 import javax.swing.JComponent;
 import javax.swing.JLabel;
+import javax.swing.JSpinner;
 import javax.swing.JTextField;
 import javax.swing.UIManager;
 import javax.swing.text.JTextComponent;
@@ -80,6 +81,13 @@
         return null;
     }
 
+    protected JSpinner getJSpinnerField() {
+        if (this.contents instanceof JSpinner) {
+            return (JSpinner) this.contents;
+        }
+        return null;
+    }
+
     protected DropDown getDropDown() {
         return this.dropDown;
     }
@@ -103,6 +111,9 @@
             this.dropDown.setModel(new DefaultComboBoxModel(availableValues));
             this.dropDown.setVisibleDropdownArrow(true);
             this.contents = label;
+        } else if (theFactory.containsJSpinner(this.getDefinition(), null)) {
+            this.contents = this.getComponentsFactory().getJSpinner(this.getDefinition(), null);
+            this.dropDown = null;
         } else if (theFactory.containsJTextField(this.getDefinition(), null)) {
             this.contents = theFactory.getJTextField(this.getDefinition(), null);
             this.dropDown = null;
@@ -140,7 +151,12 @@
         }
         this.contents.addFocusListener(this);
         this.setReadOnly(readOnly); // Forzamos a actualiza rel estado del component
-        this.setValue(this.assignedValue);
+        //component dont have support to set null values
+        if (theFactory.containsJSpinner(this.getDefinition(), null) && this.assignedValue==null) {
+            this.setValue(0);
+        } else {
+            this.setValue(this.assignedValue);
+        }
     }
 
     @Override
@@ -207,9 +223,23 @@
                     }
                 }
                 jtext.setText(s);
+            } else if (this.contents instanceof JSpinner) {
+                JSpinner jspinner = this.getJSpinnerField();
+                if (value == null) {
+                    this.setTranslateEmptyToNull(true);
+                    value = this.getDefinition().getDefaultValue();
+                    if (value != null) {
+                        jspinner.setValue(value);
+                    } else {
+                        jspinner.setValue(121);
+                    }
+                } else {
+                    this.setTranslateEmptyToNull(false);
+                }
+                jspinner.setValue(value);
             }
         } else {
-            if( value == null ) {
+            if (value == null) {
                 this.dropDown.setSelectedIndex(-1);
             } else {
                 ComboBoxModel model = this.dropDown.getModel();
