I have back ported the fix to stable and maintenance releases.
--
Jody Garnett
On 23 April 2015 at 09:12, Jim Hughes <[email protected]> wrote:
> Jody,
>
> No problem, it looks great now. As a sanity check, I did the following:
>
> I pulled the head of GeoTools master, verified that it had the reflection
> fix, and built GeoTools locally.
>
> Then, I built a branch of GeoMesa which pointed to 14-SNAPSHOT. I sorted
> a build error related to an updated interface and noted a failing test
> where we were doing something with GML without a proper namespace.
>
> From our unit tests, I noted the following messages:
>
> Logging JAI messages: javax.media.jai logger redirected
> Logging JAI messages: Unable to redirect to javax.media.jai
>
> Since we expect to 'work with' JAI at times, the first message is expected
> in our modules which have jai_core as a test dependency. Otherwise,
> without JAI as a test dependency, the other message was observed.
>
> I think this covers things thoroughly; there may be some more GeoMesa work
> to help users know when they are doing something which requires JAI.
>
> Thanks,
>
> Jim
>
>
> On 04/22/2015 10:40 PM, Jody Garnett wrote:
>
> Cleaned up to be pure reflection based, merged in and a note added to the
> docs:
> http://docs.geotools.org/latest/userguide/library/metadata/geotools.html
>
> (I would of course love you to test this one, you should be able to
> watch it redirect by adding -DLOGGING_TRACE=true on the command line)
>
> --
> Jody Garnett
>
> On 21 April 2015 at 12:37, Jody Garnett <[email protected]> wrote:
>
>> I would like to revert to the reflection based solution, just so it stays
>> solved. I know it is not pretty, but since when is logging code pretty.
>>
>> --
>> Jody Garnett
>>
>> On 21 April 2015 at 11:44, Jim Hughes <[email protected]> wrote:
>>
>>> Hi all,
>>>
>>> As a background, I'm trying to use GeoTools while excluding jai-core as
>>> a dependency. This will likely be the required state of LocationTech
>>> projects using GeoTools.
>>>
>>> I goofed testing Jody's initial solution to the problem after a final
>>> commit was added which used less reflection. I definitely appreciate
>>> the goal of relying on reflection as little as possible, but it may be
>>> one of the easier solutions to this problem.
>>>
>>> Anyhow, as I was testing, if a call to jai.setImagingListener is present
>>> without jai-core on the class path, then any calls into
>>> org.geotools.util.logging.Logging will throw an ClassNotFound for
>>> javax.media.jai.util.ImagingListener.*
>>>
>>> As I see it, there are two options:
>>>
>>> 1. Use reflection. I pushed up a PR which does that here:
>>> https://github.com/geotools/geotools/pull/826.**
>>>
>>> 2. Construct a second class (say JAILogging) which will have a static
>>> method to configure JAI. In Logging.java, if Class.forName succeeds,
>>> delegate to a static method in that makes the actual call to
>>> setImagingListener. I haven't tried this out, but it may work since the
>>> ClassLoader will never try to look for ImagingListener. Plus side, less
>>> reflection. Downside, we'd have to be careful about calling that class
>>> from outside of a 'safe' scope.
>>>
>>> Anyhow, I apologize for not testing correctly in the first place.
>>>
>>> Thoughts?
>>>
>>> Jim
>>>
>>> *
>>>
>>> https://github.com/geotools/geotools/blob/master/modules/library/metadata/src/main/java/org/geotools/util/logging/Logging.java#L122
>>>
>>> NB: I tried adding Class.forName("javax.media.jai.util.ImagingListener")
>>> and that didn't help.
>>>
>>> Original PR: https://github.com/geotools/geotools/pull/731
>>>
>>>
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
>>> Develop your own process in accordance with the BPMN 2 standard
>>> Learn Process modeling best practices with Bonita BPM through live
>>> exercises
>>> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-
>>> event?utm_
>>> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
>>> _______________________________________________
>>> GeoTools-Devel mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>>>
>>
>>
>
>
>
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live
> exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-
> event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> GeoTools-Devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>
>
------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
GeoTools-Devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel