Thanks for the hints:
https://github.com/geoHeil/jai-packaging-problem/tree/master/files
<https://github.com/geoHeil/jai-packaging-problem/tree/master/files> shows the
contents of the jar and
https://github.com/geoHeil/jai-packaging-problem/blob/master/build.sbt#L82-L86
<https://github.com/geoHeil/jai-packaging-problem/blob/master/build.sbt#L82-L86>
shows that indeed the specific registries you mentioned are merged.
I want to point out a plain standalone jar / java application works just fine
(even from the fat jar) only when run as a spark job or from NiFi I see the
problems.
So far it looks like the Vectorize operation is not registered even though it
is here:
https://github.com/geoHeil/jai-packaging-problem/blob/master/files/registryFile.jai#L83-L89
<https://github.com/geoHeil/jai-packaging-problem/blob/master/files/registryFile.jai#L83-L89>
could it be that having 3 registry files (registry.jai,
registry.jaiExt,javax.media.jai.registryFile.ja
<https://github.com/geoHeil/jai-packaging-problem/blob/master/files/javax.media.jai.registryFile.jai>)
? I tried to merge them manually into a single file but was not successful
Regards,
Georg
> Am 04.06.2017 um 11:38 schrieb Georg Heiler <e1225...@student.tuwien.ac.at>:
>
> Hi,
>
> I want to use a library (JAI) with spark to parse some spatial raster files.
> Unfortunately, there are some strange issues. JAI only works when running via
> the build tool i.e. `sbt run` when executed in spark.
> When executed via spark-submit the error is:
>
> java.lang.IllegalArgumentException: The input argument(s) may not be null.
> at
> javax.media.jai.ParameterBlockJAI.getDefaultMode(ParameterBlockJAI.java:136)
> at javax.media.jai.ParameterBlockJAI.<init>(ParameterBlockJAI.java:157)
> at javax.media.jai.ParameterBlockJAI.<init>(ParameterBlockJAI.java:178)
> at
> org.geotools.process.raster.PolygonExtractionProcess.execute(PolygonExtractionProcess.java:171)
>
> Which looks like some native dependency is not there correctly.
> Assuming something is wrong with the class path I tried to run a plain
> java/scala function. but this one works just fine.
> Is spark messing with the class paths? Actually when trying to run the jar in
> NiFi, I see the same problem.
>
> I created a minimal example here:
> https://github.com/geoHeil/jai-packaging-problem
> <https://github.com/geoHeil/jai-packaging-problem>
>
> Are you aware of any other library which can read ESRi ASCII Grid files and
> polygonize them?
>
> I think so far the problem could be tracked down to the instantiation of
> new ParameterBlockJAI("Vectorize") which is returning null i.e. the
> JAI.registry not finding the desired operation but returning a different
> error when the one you usually get.
>
> Regards,
> Georg
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel