Can shale-clay be used as a shared library?
I am attempting to move shale-clay.jar outside the of the web application into a shared library. It looks to me from the code that this is probably not supported. I am guessing that multiple applications would clash because the ConfigBeanFactory would not be able to distinguish which application it is serving anymore since it would be shared by all applications. Is there a way that the config bean factory could be keyed by the context classloader such that it can handle multiple applications pulling from it? I think something like this was done in the myfaces javax.faces.FactoryFinder. Thanks, Ryan
Re: Can shale-clay be used as a shared library?
From: Ryan Wynn [EMAIL PROTECTED] I am attempting to move shale-clay.jar outside the of the web application into a shared library. It looks to me from the code that this is probably not supported. I am guessing that multiple applications would clash because the ConfigBeanFactory would not be able to distinguish which application it is serving anymore since it would be shared by all applications. Is there a way that the config bean factory could be keyed by the context classloader such that it can handle multiple applications pulling from it? I think something like this was done in the myfaces javax.faces.FactoryFinder. We have a couple factories [1][2] that we would need to look at besides common chains. I believe that we would also need to look at our static reference to logger and the Message (bundle wrapper). So, it would require a bunch of refactoring. [1] http://svn.apache.org/viewvc/shale/framework/trunk/shale-clay/src/main/java/org/apache/shale/clay/config/beans/ConfigBeanFactory.java?view=markup [2] http://svn.apache.org/viewvc/shale/framework/trunk/shale-clay/src/main/java/org/apache/shale/clay/parser/builder/BuilderFactory.java?view=markup Thanks, Ryan Gary
Re: Can shale-clay be used as a shared library?
So you're saying there's a chance. Well, it turns out it might not be a problem for us. IBM Portal has a mechanism to attach a shared library to every application classloader. So each app will get it's own version of those factories, without having to have clay packaged inside each war. Thanks, though. On 8/3/07, Gary VanMatre [EMAIL PROTECTED] wrote: From: Ryan Wynn [EMAIL PROTECTED] I am attempting to move shale-clay.jar outside the of the web application into a shared library. It looks to me from the code that this is probably not supported. I am guessing that multiple applications would clash because the ConfigBeanFactory would not be able to distinguish which application it is serving anymore since it would be shared by all applications. Is there a way that the config bean factory could be keyed by the context classloader such that it can handle multiple applications pulling from it? I think something like this was done in the myfaces javax.faces.FactoryFinder. We have a couple factories [1][2] that we would need to look at besides common chains. I believe that we would also need to look at our static reference to logger and the Message (bundle wrapper). So, it would require a bunch of refactoring. [1] http://svn.apache.org/viewvc/shale/framework/trunk/shale-clay/src/main/java/org/apache/shale/clay/config/beans/ConfigBeanFactory.java?view=markup [2] http://svn.apache.org/viewvc/shale/framework/trunk/shale-clay/src/main/java/org/apache/shale/clay/parser/builder/BuilderFactory.java?view=markup Thanks, Ryan Gary