myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jan-Kees van Andel <jankeesvanan...@gmail.com>
Subject Re: MyFaces shipping with JBoss AS6?
Date Thu, 05 Aug 2010 16:58:11 GMT
MyFaces has an AnnotationConfigurator [1] which scans the classpath using a
simple bytecode scanning mechanism [2] (comparable with the one in
Javassist). It's pretty fast, but it's true that classes might be scanned
twice.

Regards,
Jan-Kees

[1]
http://svn.apache.org/repos/asf/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java
[2]
http://svn.apache.org/repos/asf/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/config/annotation/_ClassByteCodeAnnotationFilter.java


2010/8/5 <ssilvert@redhat.com>

> Quoting David Jencks <david_jencks@yahoo.com>:
>
>  I haven't and wont look at the mojarra code but I think you are looking
>> for
>>
>> org.apache.myfaces.config.annotation.LifecycleProvider
>>
>>
> Looks like that takes care of spec section 5.4 (injection, @PreDestroy,
> @PostConstruct).
>
> How do you deal with section 11.5?  This is for finding resource
> annotations like @ManagedBean or @FacesValidator.  I'm assuming that MyFaces
> does this on its own, but if so it would mean that a lot of stuff gets
> scanned multiple times by various components like Tomcat.
>
> Stan
>
>
>  Geronimo has been trying to get everyone to standardize on this  style of
>> interface as it lets the implementor support constructor  injection
>> transparently.
>>
>> Geronimo's implementations of this use xbean-reflect which provides  a
>> handy way to stuff in all the properties and get a fully  configured object
>> back.
>>
>> thanks
>> david jencks
>>
>>
>> On Aug 5, 2010, at 5:12 AM, Matthias Wessendorf wrote:
>>
>>  Somehow I think there was already work/discussion about it, based on a
>>> Tomcat interface.
>>> It for sure does bring back some fragile memory. Let me think...
>>>
>>> On Thu, Aug 5, 2010 at 2:09 PM, Matthias Wessendorf  <matzew@apache.org>
>>> wrote:
>>>
>>>> Well, looking at the RI is for sure not OK.
>>>>
>>>> I didn't see a problem with the previous provided links (the JBoss
>>>> code), however
>>>> I have not opened any of the provided links yet.
>>>>
>>>> -Matthias
>>>>
>>>> On Thu, Aug 5, 2010 at 1:54 PM,  <ssilvert@redhat.com> wrote:
>>>>
>>>>> That's OK.  I guess I can do the SPI implementations on my end  but it
>>>>> might
>>>>> not make it into JBoss AS6 GA. Let's concentrate on the MyFaces SPI's
>>>>> for
>>>>> now.  How does MyFaces handle the SPI's like Mojarra has?  I'm  sure
>>>>> it's OK
>>>>> to look at Mojarra code since it's GPL2, right?  If not, you can look
>>>>> at
>>>>> JavaDoc.  We need something similar to:
>>>>>
>>>>> com.sun.faces.spi.InjectionProvider
>>>>>
>>>>> https://mojarra.dev.java.net/source/browse/mojarra/trunk/jsf-ri/src/main/java/com/sun/faces/spi/InjectionProvider.java
>>>>>
>>>>> com.sun.faces.spi.AnnotationProvider
>>>>>
>>>>> https://mojarra.dev.java.net/source/browse/mojarra/trunk/jsf-ri/src/main/java/com/sun/faces/spi/AnnotationProvider.java
>>>>>
>>>>> Stan
>>>>>
>>>>> Quoting Matthias Wessendorf <matzew@apache.org>:
>>>>>
>>>>>  At Apache we can not have code that contains (L)GPL code; or depends
>>>>>> on
>>>>>> it.
>>>>>>
>>>>>> We had discussion(s) about this in the past. The below link contains
>>>>>>  references
>>>>>> to other (Apache) documents:
>>>>>>
>>>>>> http://markmail.org/message/qtc4g6vsracgzbok
>>>>>>
>>>>>> -Matthias
>>>>>>
>>>>>> On Thu, Aug 5, 2010 at 9:55 AM, Jan-Kees van Andel
>>>>>> <jankeesvanandel@gmail.com> wrote:
>>>>>>
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> Great news! It would be very nice if JBoss ships with MyFaces
2. This
>>>>>>> also
>>>>>>> opens up possibilities to do some enhancements to increase developer
>>>>>>> productivity in JBoss, like better resource reloading and so
 on. Or
>>>>>>> doing
>>>>>>> some things more efficient by plugging into the JBoss infrastructure.
>>>>>>> Just
>>>>>>> thinking out loud... :)
>>>>>>>
>>>>>>> One thing about the JBoss SVN link Stan sent. I took a quick
peek at
>>>>>>> the
>>>>>>> license header in a Java file and saw that it's LGPL licensed.
AFAIK,
>>>>>>> this
>>>>>>> is not compatible with ASL, so I suggest to not look at the code
>>>>>>> while
>>>>>>> implementing the stuff Stan asked for.
>>>>>>>
>>>>>>> WDYT?
>>>>>>>
>>>>>>> Regards,
>>>>>>> Jan-Kees
>>>>>>>
>>>>>>>
>>>>>>> 2010/8/5 Matthias Wessendorf <matzew@apache.org>
>>>>>>>
>>>>>>>>
>>>>>>>> Hello Stan,
>>>>>>>>
>>>>>>>> welcome back. We do understand that you can not make any
 promise on
>>>>>>>> that
>>>>>>>> topic.
>>>>>>>> The fact that some folks at JBoss are thinking about shipping
>>>>>>>> MyFaces
>>>>>>>> (as an alternative option)
>>>>>>>> is a good news for this entire community here. Especially
it is a
>>>>>>>> great motivation for the
>>>>>>>> folks that did the main work on ensuring Apache MyFaces 2.x
is a
>>>>>>>> great
>>>>>>>> success.
>>>>>>>>
>>>>>>>> On the missing pieces: I am sure that there will be some
interested
>>>>>>>> in
>>>>>>>> working on them.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Matthias Wessendorf
>>>>>>>> PMC Chair Apache MyFaces
>>>>>>>>
>>>>>>>> On Wed, Aug 4, 2010 at 8:42 PM,  <ssilvert@redhat.com>
wrote:
>>>>>>>>
>>>>>>>>> Hi guys,
>>>>>>>>>
>>>>>>>>> Would you like to see MyFaces Core ship with JBoss AS6?
 If so,
>>>>>>>>> read
>>>>>>>>> on.
>>>>>>>>>
>>>>>>>>> If you've been around MyFaces awhile, you probably remember
that
>>>>>>>>> JBoass
>>>>>>>>> AS
>>>>>>>>> used to ship with MyFaces instead of Mojarra.  It was
regrettable,
>>>>>>>>> but
>>>>>>>>> at
>>>>>>>>> the time Mojarra was far ahead spec-wise and the powers
that be
>>>>>>>>> decided
>>>>>>>>> my
>>>>>>>>> time would be better spent integrating Mojarra instead
of improving
>>>>>>>>> MyFaces.
>>>>>>>>>
>>>>>>>>> However, with JBoss AS6 M4, this is no longer an "either
or"
>>>>>>>>> proposition.
>>>>>>>>>  Both MyFaces and Mojarra can live side-by-side.  The
application
>>>>>>>>> can
>>>>>>>>> decide
>>>>>>>>> which implementation to use:
>>>>>>>>> http://community.jboss.org/wiki/JSFonJBossAS6
>>>>>>>>>
>>>>>>>>> What's more, changing the default JSF implementation
for AS6 is
>>>>>>>>> just a
>>>>>>>>> matter of changing the defaultJSFConfig property in an
XML file.
>>>>>>>>>
>>>>>>>>> I've talked internally at JBoss about adding MyFaces
to the JBoss
>>>>>>>>> AS
>>>>>>>>> community distribution.  Some were for it, and some were
very, very
>>>>>>>>> for
>>>>>>>>> it.
>>>>>>>>>  Nobody so far is against it.
>>>>>>>>>
>>>>>>>>> The good part is that I don't think it's a lot of work.
 It's
>>>>>>>>> probably
>>>>>>>>> just
>>>>>>>>> three or four classes that implement SPI's that I'm guessing
>>>>>>>>> MyFaces
>>>>>>>>> already
>>>>>>>>> has.
>>>>>>>>>
>>>>>>>>> So this is where the MyFaces Dev group comes in.  MyFaces
Core 2.0
>>>>>>>>> will
>>>>>>>>> run
>>>>>>>>> OK on JBoss AS6 right now.  However, there is some integration
work
>>>>>>>>> that
>>>>>>>>> is
>>>>>>>>> needed for full JEE5 and JEE6 compliance.  We need:
>>>>>>>>> * An injection provider SPI similar to Mojarra's
>>>>>>>>> com.sun.faces.spi.InjectionProvider.
>>>>>>>>> * The JBoss/MyFaces implementation of the SPI.  I expect
this will
>>>>>>>>> be
>>>>>>>>> very
>>>>>>>>> similar to
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> org.jboss.web.jsf.integration.injection.JBossDelegatingInjectionProvider.
>>>>>>>>> * An AnnotationProvider SPI similar to Mojarra's
>>>>>>>>> com.sun.faces.spi.AnnotationProvider.
>>>>>>>>> * A JBoss/MyFaces implementation of the SPI similar to
>>>>>>>>> org.jboss.web.jsf.integration.config.JBossAnnotationProvider.
>>>>>>>>> * A ServletContextListener class to call for initialization.
 I
>>>>>>>>> expect
>>>>>>>>> this
>>>>>>>>> will extend from MyFacesServletContextListener and be
very similar
>>>>>>>>> to
>>>>>>>>>
>>>>>>>>> org.jboss.web.jsf.integration.config.JBossMojarra20ConfigureListener.
>>>>>>>>>
>>>>>>>>> If MyFaces Dev decides to take this on, then the code
will probably
>>>>>>>>> live
>>>>>>>>> at
>>>>>>>>> Apache and I'll bring it into JBoss AS using Maven. 
I don't have
>>>>>>>>> time
>>>>>>>>> to
>>>>>>>>> write and maintain the code myself but I'm happy to help
out with
>>>>>>>>> guidance
>>>>>>>>> and to do some refactoring of my code to make this easier.
 BTW,
>>>>>>>>> the
>>>>>>>>> JBoss/Mojarra integration code lives here:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> http://anonsvn.jboss.org/repos/jbossas/projects/jboss-jsf-int/trunk/jboss-faces/
>>>>>>>>>
>>>>>>>>> Lastly, let me say that I can't make hard promises right
now.  I
>>>>>>>>> don't
>>>>>>>>> know
>>>>>>>>> if someone at JBoss/RedHat will come along and nix the
idea.
>>>>>>>>>  However,
>>>>>>>>> even
>>>>>>>>> if we can't ship MyFaces you will have all the integration
points
>>>>>>>>> ready
>>>>>>>>> and
>>>>>>>>> have an easy way to "drop in" MyFaces whenever you want
to use it
>>>>>>>>> with
>>>>>>>>> JBoss
>>>>>>>>> AS.
>>>>>>>>>
>>>>>>>>> WDYT??
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Matthias Wessendorf
>>>>>>>>
>>>>>>>> blog: http://matthiaswessendorf.wordpress.com/
>>>>>>>> sessions: http://www.slideshare.net/mwessendorf
>>>>>>>> twitter: http://twitter.com/mwessendorf
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Matthias Wessendorf
>>>>>>
>>>>>> blog: http://matthiaswessendorf.wordpress.com/
>>>>>> sessions: http://www.slideshare.net/mwessendorf
>>>>>> twitter: http://twitter.com/mwessendorf
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Matthias Wessendorf
>>>>
>>>> blog: http://matthiaswessendorf.wordpress.com/
>>>> sessions: http://www.slideshare.net/mwessendorf
>>>> twitter: http://twitter.com/mwessendorf
>>>>
>>>>
>>>
>>>
>>> --
>>> Matthias Wessendorf
>>>
>>> blog: http://matthiaswessendorf.wordpress.com/
>>> sessions: http://www.slideshare.net/mwessendorf
>>> twitter: http://twitter.com/mwessendorf
>>>
>>
>>
>>
>
>
>
>
>

Mime
View raw message