Hello Stan,
Thanks for writing back so quickly. It was not clear on the wiki that the forced JSF was
due to JEE5 compliance efforts, which is why I took such an incredulous tone. Regardless,
you are correct about JEE5, I read the spec and sure enough, it requires JSF 1.2. Wow,
I'm floored, that's a pretty gutsy move on their part ... And they are making your
life difficult because then I see they say some seemingly contradictory things...
From section EE.11.1, it states:
anonymous wrote : Compatibility
is a core value of the Java EE platform. A Java EE product is required to support portable
applications written to previous versions of the platform.
... but then at then end of that section, they get a bit dodgy with this:
anonymous wrote : Portable applications depend only on the APIs and behavior required by
the Java EE specifications. In general, portable applications written to a previous
version of the platform will continue to work without change and with identical behavior
on the current version of the platform.
|
So, what does "in general" mean? Does that mean you are required or you are not
required to host older J2EE applications? What percentage of the time is "in
general"? 50%? 99.9%?
And from section EE.6.1.2, where it discusses that you must include JSF 1.2, it states:
anonymous wrote : All classes and interfaces required by the specifications for the APIs
must be provided by the Java EE containers. In some cases, a Java EE product is not
required to provide objects that implement interfaces intended to be implemented by an
application server, nevertheless, the definitions of such interfaces must be included in
the Java EE platform.
So, our app is a J2EE 1.4 app, not a 1.5 app. And by this spec, you're supposed to
support apps written to those older versions WHILE loading JSF 1.2. I think they must
mean for you to dynamically load JSF for web applications if the deployment descriptor
identifies the app as JEE5, and to NOT load JSF otherwise (since it wasn't required
for J2EE 1.4 and below.) Is this your interpretation as well?
I can tell you right now, it's going to be a long time before we upgrade to JEE5. So,
for now, we are bundling our own JSF libraries and deploying to other vendor's
platforms without trouble. We can't deploy our app to JBoss 4.2+ where our deployment
descriptor indicates J2EE 1.4 (servlet 2.4 indicated in web.xml) and JSF 1.2 also gets
pre-loaded for us. For my situation, if you could give me a way to override or mask off
your JSF libraries from being loaded using the jboss-web.xml, that would be fine.
This is a difficult situation for JBoss. Sorry for being so harsh in my original message,
I had no idea what was happening in JEE5 and how that was affecting you.
I will try to deploy to Glassfish and see how it does. We do not consider Glassfish to be
a "force" in the market yet like JBoss is, but it will be an interesting
experiment to see how well it does deploying our app. Geronimo was our initial platform
only because its rich classloader controls made prototyping easy for other parts of our
app.
Thanks,
gDarius
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4041127#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...