Revision 47474

View differences:

trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.h2spatial/org.gvsig.h2spatial.h2gis132/org.gvsig.h2spatial.h2gis132.provider/src/main/java/org/gvsig/fmap/dal/store/h2/H2SpatialSQLBuilder.java
474 474
   
475 475
    @Override
476 476
    public Disposable setParameters(PreparedStatement st, FeatureProvider feature) {
477
        String name = null;
477 478
        try {
478 479
            FeatureType featureType = feature.getType();
479 480
            List<Object> values = new ArrayList<>();
......
481 482
                if (parameter.is_constant()) {
482 483
                    values.add(parameter.value());
483 484
                } else {
484
                    String name = parameter.name();
485
                    name = parameter.name();
485 486
                    FeatureAttributeDescriptor descriptor = featureType.getAttributeDescriptor(name);
486 487
                    switch( descriptor.getType() ) {
487 488
                    case DataTypes.DATE:
......
506 507
                }
507 508
            }
508 509
            return this.setStatementParameters(st, values, this.geometry_support_type());
509
        } catch (SQLException | CreateGeometryException ex) {
510
        } catch (Exception ex) {
510 511
            String f = "unknow";
511 512
            try {
512 513
                f = feature.toString();
trunk/org.gvsig.desktop/org.gvsig.desktop.plugin/org.gvsig.h2spatial/org.gvsig.h2spatial.h2gis132/org.gvsig.h2spatial.h2gis132.provider/src/test/java/org/gvsig/fmap/dal/store/h2/operations/sql/TestCreateTable.java
2 2

  
3 3
import java.util.List;
4 4
import junit.framework.TestCase;
5
import org.gvsig.fmap.dal.feature.EditableFeatureAttributeDescriptor;
6
import org.gvsig.fmap.dal.feature.EditableFeatureType;
7
import org.gvsig.fmap.dal.feature.FeatureAttributeDescriptor;
5 8
import org.gvsig.fmap.dal.feature.FeatureStore;
6 9
import org.gvsig.fmap.dal.feature.FeatureType;
7 10
import org.gvsig.fmap.dal.store.h2.TestUtils;
......
70 73
      }
71 74
  }
72 75

  
76
  public void testCreateTableWithDefaultDynamicText() throws Exception {
77
      try {
78
        JDBCHelper helper = TestUtils.createJDBCHelper();
79
        JDBCSQLBuilderBase sqlbuilder = helper.createSQLBuilder();
80
        OperationsFactory operations = helper.getOperations();
81

  
82
        List<String> expectedSQLs = TestUtils.getSQLs("createTable.sql");
83

  
84
        FeatureStore sourceStore = TestUtils.openSourceStore1();
85

  
86
        TableReference table = operations.createTableReference(
87
                "dbtest", 
88
                sqlbuilder.default_schema(), 
89
                "test", 
90
                null
91
        );
92
        FeatureType featureType = sourceStore.getDefaultFeatureType();
93
        EditableFeatureType eft = featureType.getEditable();
94
        EditableFeatureAttributeDescriptor date_attr = (EditableFeatureAttributeDescriptor) eft.getAttributeDescriptor("Date");
95
        date_attr.setDefaultValue("'<%=CURRENT_TIMESTAMP()%>'");
96
        CreateTableOperation createTable = operations.createTable(
97
                table,
98
                eft,
99
                null,
100
                null
101
        );
102
        List<String> SQLs = createTable.getSQLs();
103
        assertEquals("CreateTable num. SQLs", expectedSQLs.size(), SQLs.size());
104
        for (int i = 0; i < expectedSQLs.size(); i++) {
105
          assertEquals("CreateTable SQL "+i, expectedSQLs.get(i), SQLs.get(i));
106
        }
107
      } catch(Exception ex) {
108
          LOGGER.warn("Error",ex);
109
          throw ex;
110
      }
111
  }
112
  
73 113
}

Also available in: Unified diff