Jody, I think Vladislav is just starting out with GeoTools, plus he
told us that English is not his language, so your reply might seem a
bit mysterious :)

Vladislav, can you post your code to the list please or if it is very
large post it to Jody or myself privately.

Michael


On 3 October 2011 10:25, Jody Garnett <jody.garn...@gmail.com> wrote:
> Well that is looking more like a bug; since it is happening inside the
> "commit" and not inside code you control.
> Is there any chance that the "fid" (or FeatureId) is null (in the feature
> collection you are writing out?)
> The code looks like the following:
>     /**
>      * Writes the current fidIndex. Writes to the same place in the file
> each time. Only
>      * {@link #next()} moves forward in the file.
>      *
>      * @throws IOException
>      * @see #next()
>      * @see #remove()
>      */
>     public void write() throws IOException {
>         if (current == -1)
>             throw new IOException("Current fid index is null, next must be
> called before write()");
>         ....
> Which eventually was called from the commit() method like follows:
>     public void close() throws IOException {
>         if (featureReader == null) {
>             throw new IOException("Writer closed");
>         }
>         // make sure to write the last feature...
>         if (currentFeature != null) {
>             write();
>         }
> So something must be odd here?
> a) is your feature ID null? Or did something fail writing this out?
> b) did you get the feature collection from a database or something? If so
> you sometimes need to preprocess the data to match shapefile abilities
> (string length; geometry type; etc...)
> c) is your feature collection empty?
> Next step is to report an issue; with the detail you have provided in this
> email thread; and create a test case showing the problem so a developer can
> work on it. If you are up against a deadline I encourage you to look at our
> support options to get this moving.
> Cheers
> --
> Jody Garnett
>
> On Monday, 3 October 2011 at 1:30 AM, filippov70 wrote:
>
> ОК,
> java.io.IOException: Current fid index is null, next must be called before
> write()
> at
> org.geotools.data.shapefile.indexed.IndexedFidWriter.write(IndexedFidWriter.java:251)
> at
> org.geotools.data.shapefile.indexed.IndexedShapefileFeatureWriter.write(IndexedShapefileFeatureWriter.java:101)
> at
> org.geotools.data.shapefile.ShapefileFeatureWriter.close(ShapefileFeatureWriter.java:230)
> at
> org.geotools.data.shapefile.indexed.IndexedShapefileFeatureWriter.close(IndexedShapefileFeatureWriter.java:109)
> at
> org.geotools.data.TransactionStateDiff.applyDiff(TransactionStateDiff.java:276)
> at
> org.geotools.data.TransactionStateDiff.commit(TransactionStateDiff.java:147)
> at org.geotools.data.DefaultTransaction.commit(DefaultTransaction.java:182)
> at org.tomskgislab.landprocessor.MainForm.SaveToShape(MainForm.java:295)
>
>
> ------------------------------------------------------------------------------
> All of the data generated in your IT infrastructure is seriously valuable.
> Why? It contains a definitive record of application performance, security
> threats, fraudulent activity, and more. Splunk takes this data and makes
> sense of it. IT sense. And common sense.
> http://p.sf.net/sfu/splunk-d2dcopy2
> _______________________________________________
> Geotools-gt2-users mailing list
> Geotools-gt2-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
>
>

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
Geotools-gt2-users mailing list
Geotools-gt2-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users

Reply via email to