Can shale-clay be used as a shared library?

2007-08-03 Thread Ryan Wynn
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?

2007-08-03 Thread Gary VanMatre
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?

2007-08-03 Thread Ryan Wynn
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