Ok, in my LoginModule class, I outputed the results from using
getClass().getClassLoader().getResources("META-INF/services" + ...);
This works fine. But, this doesn't help me as internally Resteasy uses
the thread context classloader to find services files. How can I change
resteasy so that it uses the correct classloader *internally* in all
environments? From a WAR deployment I need to find META-INF/services
located both in the deployment and in any imported modules.
Read this did not help me:
https://community.jboss.org/wiki/ModuleCompatibleClassloadingGuide
Didn't help because I'm looking for resources spread out in different
jars, so I don't have a classloader rrefernce point to use other than
the context class loader.
On 9/12/2012 11:59 AM, Bill Burke wrote:
Thing is, this works for regular Resteasy WAR deployments.
Thread.currentThread().getContextClassloader().
On 9/12/2012 11:51 AM, Rob Cernich wrote:
> I don't believe the context classloader is what you want. You may have better
luck with something like getClass().getClassLoader().
>
> Best,
> Rob
>
> ----- Original Message -----
>>
>>
>> On 9/12/2012 11:23 AM, David M. Lloyd wrote:
>>> On 09/12/2012 10:18 AM, Bill Burke wrote:
>>>> I'm creating a custom login-module that is declared within
>>>> standalone.xml. This module references a new module that I have
>>>> deployed (see below). The login-module class uses Resteasy to
>>>> make
>>>> invocations. The problem is that Resteasy is not able to find and
>>>> register built-in providers. Resteasy does this by doing:
>>>>
>>>> Enumeration<URL> en =
>>>>
Thread.currentThread().getContextClassLoader().getResources("META-INF/services/"
>>>> + Providers.class.getName());
>>>> while (en.hasMoreElements())
>>>> {
>>>> URL url = en.nextElement();
>>>>
>>>>
>>>> No URLs are turning up when calling cl.getResources(). Is there
>>>> some
>>>> configuration switch I don't know about?
>>>
>>> Yeah - any time you have a dependency on a module whose
>>> "META-INF/services" you want to access, you have to add
>>> "services="import"" to that dependency, else that
directory is
>>> filtered out.
>>
>> <dependencies>
>> <module
name="org.jboss.resteasy.resteasy-jackson-provider"
>> services="import"/>
>> </dependencies>
>>
>> Still doesn't work.
>>
>> Bill
>>
>> --
>> Bill Burke
>> JBoss, a division of Red Hat
>>
http://bill.burkecentral.com
>> _______________________________________________
>> jboss-as7-dev mailing list
>> jboss-as7-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>
--
Bill Burke
JBoss, a division of Red Hat
http://bill.burkecentral.com