[
https://jira.jboss.org/browse/JBAS-8035?page=com.atlassian.jira.plugin.sy...
]
Stan Silvert commented on JBAS-8035:
------------------------------------
Pete, I think I misunderstood you. You are saying that we can have the JSF API globally
available, but not the impl. In theory I think that would work but I'm very hesitant
to have the Mojarra version available globally and end up mixing, for instance, Mojarra
2.0 API with MyFaces 1.1 impl. Also, it doesn't seem right that web teir API's
would be available outside the web tier.
For the Weld Deployer, I think the solution is to move weld-jboss-webteir.jar out of the
weld.deployer root. Then make sure that this jar is added to each deployment that needs
it individually.
Weld Deployer not working with new JSF Deployer
-----------------------------------------------
Key: JBAS-8035
URL:
https://jira.jboss.org/browse/JBAS-8035
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Weld/CDI
Affects Versions: 6.0.0.M4
Reporter: Stan Silvert
Assignee: Marius Bogoevici
I think this will require Weld Deployer changes, so assigning to Ales for now.
I've integrated the JSF Deployer into AS but now the Weld tests are failing. If you
deploy a Weld app you will see:
18:58:51,956 ERROR
[org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/weld-numberguess]]
Exception sending context initialized event to listener
instance of class org.jboss.web.jsf.integration.config.JBossJSFConfigureListener
: java.lang.NoClassDefFoundError: javax/faces/application/ApplicationFactory
The JSF deployer is much more selective about adding JSF to the classpath. It looks like
JSF is probably trying to load
org.jboss.weld.integration.webtier.jsf.WeldApplicationFactory that is defined in
weld.deployer/lib-int/faces/META-INF/faces-config.xml. I think what happens is that this
WeldApplicationFactory is loaded from weld.deployer/weld-jboss-int-webteir.jar. Then it
references a JSF core class and it can't find it because the classloader for that
doesn't see JSF.
The tricky part is that you can't just add JSF to the classloader for that jar. Each
WAR can have a different JSF Implementation if it wants. So this sort of thing must be
done for each individual deployment.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira