Not sure what might be going on since I haven't used URLClassLoader myself. 
FWIW, the Theme class uses the JAR service provider mechanism to look up a 
concrete theme provider:

http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html#Service%20Provider

It uses the org.apache.pivot.util.Service class to perform the lookup. You may 
need to step through the code to see why it is failing to find a suitable 
provider. The static block at the beginning of the Theme class is where the 
theme is loaded, so that's where I'd start. Set a breakpoint there and see what 
you can find out.

Hope this helps.
Greg


On Apr 29, 2010, at 7:53 AM, Scott Lanham wrote:

> Hi Greg,
> 
> All Jars are encapsulated in a single jar file and the application runs fine 
> from that Jar file. The error occurs when I load the same Jar file using 
> URLClassLoader from within a different application.
> 
> On Thu, 29 Apr 2010 09:48:19 pm Greg Brown wrote:
>> This exception is being thrown because the Theme class can't find a
>> suitable theme provider. Is the Terra JAR on your classpath?
>> 
>> On Apr 28, 2010, at 11:11 PM, Scott Lanham wrote:
>>> I missed an important bit:
>>> 
>>> Caused by: org.apache.pivot.wtk.ThemeNotFoundException: A theme could not
>>> be located.
>>>       at org.apache.pivot.wtk.Theme.<clinit>(Theme.java:76)
>>> 
>>> On Thu, 29 Apr 2010 11:50:21 am Scott Lanham wrote:
>>>> Hello,
>>>> 
>>>> I am dynamically loading a pivot (1.4) app  from a basic "launcher" app
>>>> using URLClassLoader. It is throwing the exception detailed below. I was
>>>> wondering if anyone has had experience with this kind of problem?
>>>> 
>>>> If you are wondering why I would do such a crazy thing, it is all in the
>>>> name of auto-updating the app in Windows ( without using webstart ).
>>>> 
>>>> Thanks,
>>>> 
>>>> Scott.
>>>> 
>>>> Exception in thread "AWT-EventQueue-0"
>>>> java.lang.ExceptionInInitializerError at
>>>> org.apache.pivot.wtk.Component.installThemeSkin(Component.java:737) at
>>>> org.apache.pivot.wtk.Window.<init>(Window.java:393)
>>>>       at org.apache.pivot.wtk.Window.<init>(Window.java:388)
>>>>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>> Method)
>>>>       at
>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA
>>>> cce ssorImpl.java:39) at
>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons
>>>> tru ctorAccessorImpl.java:27) at
>>>> java.lang.reflect.Constructor.newInstance(Constructor.java:513) at
>>>> java.lang.Class.newInstance0(Class.java:355)
>>>>       at java.lang.Class.newInstance(Class.java:308)
>>>>       at
>>>> org.apache.pivot.wtkx.WTKXSerializer.processStartElement(WTKXSerializer.
>>>> jav a:617) at
>>>> org.apache.pivot.wtkx.WTKXSerializer.readObject(WTKXSerializer.java:449)
>>>>       at
>>>> org.apache.pivot.wtkx.WTKXSerializer.readObject(WTKXSerializer.java:405)
>>>>       at
>>>> org.apache.pivot.wtkx.WTKXSerializer.readObject(WTKXSerializer.java:392)
>>>>       at
>>>> org.apache.pivot.wtkx.WTKXSerializer.readObject(WTKXSerializer.java:379)
>> 

Reply via email to