Revision 41637 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.shp/src/main/java/org/gvsig/fmap/dal/store/shp/SHPFilesystemServerProvider.java

View differences:

SHPFilesystemServerProvider.java
25 25

  
26 26
import java.io.File;
27 27
import java.io.IOException;
28
import javax.xml.datatype.DatatypeConfigurationException;
28 29

  
29 30
import org.gvsig.fmap.dal.DALLocator;
30 31
import org.gvsig.fmap.dal.DataManager;
......
46 47
import org.gvsig.fmap.dal.resource.spi.ResourceProvider;
47 48
import org.gvsig.fmap.dal.serverexplorer.filesystem.AbsolutePathRequiredException;
48 49
import org.gvsig.fmap.dal.store.dbf.DBFFilesystemServerProvider;
50
import org.gvsig.tools.dataTypes.DataTypes;
49 51

  
50 52
/**
51 53
 * @author jmvivo
......
139 141
			throws CreateException {
140 142

  
141 143
		final SHPNewStoreParameters params = (SHPNewStoreParameters) parameters;
142
		final FeatureType fType;
143
		// TODO Comprobar que el campo de geometria
144
		final EditableFeatureType dbfFtype;
145
		if (params.getDefaultFeatureType() instanceof EditableFeatureType) {
146
			fType = params.getDefaultFeatureType();
147
			dbfFtype = (EditableFeatureType) fType.getCopy();
148
		} else {
149
			fType = params.getDefaultFeatureType();
150
			dbfFtype = fType.getEditable();
151
			params.setDefaultFeatureType(fType.getEditable());
152
		}
144
                final EditableFeatureType fType  = params.getDefaultFeatureType();
153 145

  
146
                // Parche para crear con el tama?o que tocan los campos del DBF
147
                // Asumo que el dbfFtype se va a destruir tras crear el dbf.
148
                final EditableFeatureType dbfFtype = fixFeatureType(fType);
149

  
154 150
		SHPStoreProvider.removeGeometryColumn(dbfFtype);
151
                
155 152
		EditableFeatureAttributeDescriptor efad = SHPStoreProvider.addGeometryColumn((EditableFeatureType) fType);
156 153
		efad.setGeometryType(params.getGeometryType());
157 154
		
......
233 230
			resource.removeConsumer(this);
234 231
		}
235 232
	}
236

  
233
        
237 234
	// private boolean closeResources(FileResource[] resources)
238 235
	// throws ResourceException {
239 236
	// for (int i = 0; i < resources.length; i++) {

Also available in: Unified diff