I can help with that one ... we make use of Factory Service Provider 
Interface (ie Factory SPI) which makes use of META_INF/services/* (a 
folder in your jar that advertises all the services the jar offers - 
including the length function).

So when you do mvn assembly - you will need to make sure the 
META_INF/services files are all merged up (no I don't know how to do this).

The length function is being called when you make an attribute type; the 
shapefile header has a limitation that strings can only be 256 
characters long; we represent that as a restriction - the restriction 
that "length( . ) < 256".

Cheers,
Jody

[EMAIL PROTECTED] wrote:
> Helllo All,
>
> I have a very simple shapefile reading class based on the example
> (http://docs.codehaus.org/display/GEOTDOC/04+How+to+Read+a+Shapefile). 
>
> Everything works OK when executing w/ "mvn exec:java".  However, when I
> bundle everything up into a executable jar using "mvn
> assembly:assembly", I get a RuntimeException trying to use the generated
> jar file.  I can't understand why there's a problem locating a function
> "length" nor really why it's being called.  Any suggestions?
>
> Thanks!
> --john
>
>
> java -jar ./target/shapefile-reader-jar-with-dependencies.jar
> ~/shapefiles/country.shp
>
> java.lang.RuntimeException: Unable to find function Length
>         at
> org.geotools.filter.FunctionFinder.findFunction(FunctionFinder.java:83)
>         at
> org.geotools.filter.FilterFactoryImpl.function(FilterFactoryImpl.java:423)
>         at
> org.geotools.feature.DefaultAttributeTypeFactory.createAttributeType(DefaultAttributeTypeFactory.java:158)
>         at
> org.geotools.feature.AttributeTypeFactory.newAttributeType(AttributeTypeFactory.java:92)
>         at
> org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:703)
>         at
> org.geotools.data.shapefile.indexed.IndexedShapefileDataStore.getSchema(IndexedShapefileDataStore.java:898)
>         at
> org.geotools.data.shapefile.indexed.IndexedShapefileDataStore.getSchema(IndexedShapefileDataStore.java:892)
>         at
> org.geotools.data.shapefile.indexed.IndexedShapefileDataStore.getFeatureSource(IndexedShapefileDataStore.java:1002)
>         at gov.noaa.eds.App.main(App.java:49)
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> Geotools-gt2-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
>   


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Geotools-gt2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users

Reply via email to