Revision 46050 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/main/java/org/gvsig/fmap/dal/feature/impl/DefaultFeature.java

View differences:

DefaultFeature.java
912 912
//            int index = featureAttributeDescriptor.getIndex();
913 913
//            value = this.data.get(index);
914 914
//            if( value==null ) {
915
            value = emulator.get(this);
915
            value = this.getExtraValue(featureAttributeDescriptor.getName());
916
            if (value==null) {
917
                value = emulator.get(this);
918
            }
916 919
//                this.data.set(index,value);
917 920
//            }
918 921
        } else {
......
1346 1349
    @Override
1347 1350
    public String getLabelOfValue(String name) {
1348 1351
        FeatureAttributeDescriptor attrdesc = this.data.getType().getAttributeDescriptor(name);
1349
        if (attrdesc == null) {
1350
            throw new IllegalArgumentException("Attribute name '" + name + "' not found in the feature.");
1352
        Object value;
1353
        if (attrdesc == null) { // extra column
1354
            FeatureExtraColumns extraColumns = this.data.getType().getExtraColumns();
1355
            if (extraColumns==null) {
1356
                return name;
1357
            }
1358
            attrdesc = extraColumns.get(name);
1359
            if(attrdesc==null) {
1360
                return name;
1361
            }
1362
           value = this.get(name);
1363
        } else {
1364
           value = this.get(attrdesc.getIndex());
1351 1365
        }
1352
        Object value = this.get(attrdesc.getIndex());
1353 1366
        String label = attrdesc.getLabelOfValue(value);
1354 1367
        return label;
1355 1368
    }

Also available in: Unified diff