On Mon, Jul 26, 2010 at 9:30 PM, Jakob Korherr <jakob.korh...@gmail.com> wrote:
> Hehe, yeah I maybe forgot 10 "many".
>
> I can provide a wiki page for the general idea and the approach used on
> myfaces-test.

+1

> Then everyone can adopt this idea and see how it works.

great. I have that on my agenda as well, for Trinidad but a
new release is more important, today...

>
> "RIP _shared? :)"
> --> yes!

I thought so. Yes! :)

>
> Regards,
> Jakob
>
> 2010/7/26 Matthias Wessendorf <mat...@apache.org>
>>
>> On Mon, Jul 26, 2010 at 8:56 PM, Jakob Korherr <jakob.korh...@gmail.com>
>> wrote:
>> > Hi guys,
>> >
>> > Working on the tests for FlashImpl, I ran into a problem with the
>> > AbstractAttributeMap (MYFACES-2840). After fixing it, I needed to copy
>> > my
>> > changes over to myfaces-test to be able to use the new version in the
>> > test
>> > case (MYFACESTEST-21). And this copying really sucks...
>>
>> +1
>>
>> >
>> > If you think about it there are many, many, many different places in the
>>
>> you forgot a many :-)
>>
>> > whole MyFaces project where we have duplicate code, for example
>> > package-private, unspecified classes on myfaces-api which also exist in
>> > myfaces-impl, classes of myfaces-impl which are used for the mock
>> > implementations of myfaces-test, or the biggest one: the shared project.
>> >
>> > An introduction to the maven-shade-plugin: This plugin lets you use a
>> > dependency to another project and then at build time it copies all
>> > needed
>> > classes to the created jar file, removes the dependency from the pom.xml
>> > and
>> > changes the imports in the class files. Thus you work with the real
>> > classes
>> > at development time and then at build time the used classes are copied
>> > into
>> > the artifact and the development dependency is gone. Furthermore you can
>> > make all kinds of alterations to those classes (e.g. change package).
>> >
>> > We successfully use the maven-shade-plugin in MyFaces CODI to reuse
>> > functionaltiy between the JSF 1.2 and 2.0 modules. In addition, I have
>> > locally already used it to fix MYFACESTEST-21: I use it to get the
>> > AbstractAttributeMap and all its related classes from myfaces-impl to
>> > myfaces-test. And it really works like a calm.
>> >
>> > However I have to be honest, one thing currently has a bug: filters are
>> > only
>> > applied to the binary and not also to the sources jar (see
>> > http://jira.codehaus.org/browse/MSHADE-83), but I already provided a
>> > patch
>> > and a test case for it, so I guess it will be fixed very soon.
>> >
>> > So if there are no objects, I would like to introduce the
>> > maven-shade-plugin
>> > on myfaces-test at first, to show you guys how awesome it is.
>> > Afterwards,
>> > and of course if you all like it, I would really like to use it on
>> > several
>> > places in MyFaces. This would for example be the chance to get rid of
>> > the
>> > shared project once and for all.
>> >
>> > Opinions, suggestions and tomatoes are welcome!
>>
>> +1 on this approach. I'd like to see the *adoption* (kinda)
>> documented, so that other (sub) projects can *learn* from your efforts!
>>
>> RIP _shared? :)
>>
>> -Matthias
>>
>>
>> >
>> > Regards,
>> > Jakob
>> >
>> > --
>> > Jakob Korherr
>> >
>> > blog: http://www.jakobk.com
>> > twitter: http://twitter.com/jakobkorherr
>> > work: http://www.irian.at
>> >
>>
>>
>>
>> --
>> Matthias Wessendorf
>>
>> blog: http://matthiaswessendorf.wordpress.com/
>> sessions: http://www.slideshare.net/mwessendorf
>> twitter: http://twitter.com/mwessendorf
>
>
>
> --
> Jakob Korherr
>
> blog: http://www.jakobk.com
> twitter: http://twitter.com/jakobkorherr
> work: http://www.irian.at
>



-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf

Reply via email to