Create a new package org.apache.myfaces.spi and implement Providers for
integration points with application containers
----------------------------------------------------------------------------------------------------------------------
Key: MYFACES-2863
URL: https://issues.apache.org/jira/browse/MYFACES-2863
Project: MyFaces Core
Issue Type: Improvement
Components: JSR-314
Affects Versions: 2.0.1
Reporter: Leonardo Uribe
Assignee: Leonardo Uribe
Priority: Critical
On jsf 1.2 and earlier, it was only necessary one point for integrate an
application container, an that was LifecycleProvider2, to handle @PostConstruct
and @PreDestroy annotations.
But on jsf 2.0, many stuff has been introduced that requires provide spi
interfaces, so application containers could integrate better.
One problem is how to handle jsf libraries outside WEB-INF/lib directory, or
how to customize some algorithms that requires knowledge of the container
protocols.
It is also known protocols like "jar:" to cause problems, when you try to scan
files, because it is necessary to open a jar file and scan all entries to find
just one file (see MYFACES-2583 and MYFACES-2833 for details).
I think we should introduce two new packages called org.apache.myfaces.spi and
org.apache.myfaces.spi.impl to deal with this stuff.
Based on the class names found on com.sun.faces.spi package, we should provide
the following points:
- Handling of @PostConstruct and @PreDestroy (done in LifecycleProvider2)
- Annotation scanning: containers could have this code duplicated or a
framework to deal with stuff like that, so it should be a possibility to
override/extend.
- faces-config.xml and facelet-taglib.xml additions: It should be possible to
add resource files to be included in the process.
- Serialization (partially done on SerialFactory interface) : Jboss provide its
own serialization solution.
At this time it is not very clear how this interfaces should looks like. I'll
provide a proposal for this stuff, but it will take some time, because it is
necessary to think carefully each interface.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.