i work on the opensso project where we are (trying) to build a new admin
console based on JSF. our product needs to run on many different web
containers.
i've suddenly found that the code fragment,
FacesContext fcontext = FacesContext.getCurrentInstance();
ELResolver resolver = fcontext.getELContext().getELResolver();
Object o = resolver.getValue(fcontext.getELContext(), null, name);
has started throwing an exception on JSF 1.2_04. this is the default
version for GF 2.1 and SWS 7u6, and probably others which i have yet to
discover. on GF 2.1 i fixed the problem by replacing the container's JSF
with 1.2_12. however, on SWS that doesn't work as it appears the version
of xerces in SWS is too old.
i understand one approach to beat these problems is to reverse the class
loader delegation order. the first problem is that the approach to set
this is different on every container. the second problem is as i
mentioned above, it won't help if the the bundled JSF's dependencies do
not match that of the container ... well then you start going down the
path of bundling other dependencies, and deps of deps, and so on.
so, i'm looking for other approaches to battle this problem. any help is
appreciated.
--