SelectionLab NPE

Description

From email:

While running the SelectionLab example with 11-RC1, I get a null pointer exception when I use the ‘select tool’ to click on a feature. Specifically, the exception is raised on the call to selectedFeatures.features(); I’ve traced it to the ExtractBoundsFilterVisitor.visit function returning null. Does this look like a bug?

from SelectionLab.java:

AffineTransform screenToWorld = mapFrame.getMapPane().getScreenToWorldTransform();
Rectangle2D worldRect = screenToWorld.createTransformedShape(screenRect).getBounds2D();
ReferencedEnvelope bbox = ReferencedEnvelope(
worldRect,
mapFrame.getMapPane().getMapContent().getCoordinateReferenceSystem());

/*

  • Create a Filter to select features that intersect with

  • the bounding box
    */
    Filter filter = ff.intersects(ff.property(geometryAttributeName), ff.literal(bbox));


/*

  • Use the filter to identify the selected features
    */
    {
    SimpleFeatureCollection selectedFeatures =
    featureSource.getFeatures(filter);


SimpleFeatureIterator iter = selectedFeatures.features();

From ExtractBoundsFilterVisitor

@Override
data) {
;
}

Here’s the stack trace:

Mouse click at: DirectPosition2D[6349881.5871864, 2029348.2224553742]
java.lang.NullPointerException
at org.geotools.data.shapefile.ShapefileFeatureSource.getReaderInternal(ShapefileFeatureSource.java:237)
at org.geotools.data.shapefile.ShapefileFeatureStore.getReaderInternal(ShapefileFeatureStore.java:126)
at org.geotools.data.store.ContentFeatureSource.getReader(ContentFeatureSource.java:563)
at org.geotools.data.store.ContentFeatureCollection.features(ContentFeatureCollection.java:165)
at com.aseg.StyleLab.SelectionLab.selectFeatures(SelectionLab.java:217)
at com.aseg.StyleLab.SelectionLab$1$1.onMouseClicked(SelectionLab.java:161)
at org.geotools.swing.event.DefaultMapMouseEventDispatcher.mouseClicked(DefaultMapMouseEventDispatcher.java:99)
at java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
at java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
at java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)

Environment

None

Assignee

Unassigned

Reporter

codehaus

Triage

None

Components

Fix versions

Affects versions

Priority

Medium
Configure