Notes on the MyFaces Core 2.0.0-beta-2 Release




Here's how you can help us test the distribution.

Download a nightly build of the distribution assemblies:

Configure a <repository> for Maven 2:

           <name>Apache Snapshot Repository</name>

And declare a dependency on the 2.0.0-beta-2 snapshots:


Note: Maven 2.0.4 will not download a new version if one is already present in your local repository. You will need to delete $M2_REPO/org/apache/myfaces/core to force Maven to download the new version. (Usually, $M2_REPO is <your home directory>/.m2/repository .)

Test your application, then, let us know the results (good or bad!) on dev -at- (You must be subscribed to post. See:


Proposed Release Announcement


1.1 Preparing test 1.0.0-beta

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=1_0_0_beta -DdryRun=true

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=1_0_0_beta -Dresume=false

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=1_0_0_beta -Dresume=false

1.2 Preparing shared 4.0.1-beta-2

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=4_0_1_beta_2 -DdryRun=true

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=4_0_1_beta_2 -Dresume=false

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=4_0_1_beta_2 -Dresume=false

2. Preparing core 2.0.0-beta-2

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=2_0_0_beta_2 -DdryRun=true

mvn release:prepare -DtagBase= -Dusername=lu4242 -Dscm.password=??? -Dtag=2_0_0_beta_2 -Dresume=false

3. Deploy on local repo

mvn clean deploy -DperformRelease=true -DaltDeploymentRepository=myfaces-local-staging::default::scp://localhost/home/lu4242/stage/repo200beta2 -Psign-artifacts -Dpassphrase=??? 

   cd home/lu4242/stage/repo200beta2
   scp -p -r org

4. JIRA Release Management

5. Next step is the TCK

6. Generate assembly

cd 2_0_0_beta_2
mvn install -Pgenerate-assembly
cd assembly
mvn package

openssl md5 myfaces-core-2.0.0-beta-2-src.tar.gz > myfaces-core-2.0.0-beta-2-src.tar.gz.md5
openssl md5 >
openssl sha1 myfaces-core-2.0.0-beta-2-src.tar.gz > myfaces-core-2.0.0-beta-2-src.tar.gz.sha1
openssl sha1 >
gpg --armor --output myfaces-core-2.0.0-beta-2-src.tar.gz.asc --detach-sig myfaces-core-2.0.0-beta-2-src.tar.gz
gpg --armor --output --detach-sig

openssl md5 myfaces-core-2.0.0-beta-2-bin.tar.gz > myfaces-core-2.0.0-beta-2-bin.tar.gz.md5
openssl md5 >
openssl sha1 myfaces-core-2.0.0-beta-2-bin.tar.gz > myfaces-core-2.0.0-beta-2-bin.tar.gz.sha1
openssl sha1 >
gpg --armor --output myfaces-core-2.0.0-beta-2-bin.tar.gz.asc --detach-sig myfaces-core-2.0.0-beta-2-bin.tar.gz
gpg --armor --output --detach-sig

scp -p -r myfaces-core-2.0.0-beta-2-bin*
scp -p -r myfaces-core-2.0.0-beta-2-src*



I was running the needed tasks to get the 2.0.0-beta-2 release of Apache
MyFaces core out.

This artifacts are very close to pass all TCK tests. 

Please note that this vote concerns all of the following parts:
 1. Maven artifact group "org.apache.myfaces.shared" v4.0.1-beta-2  [1]
 2. Maven artifact group "org.apache.myfaces.core" v2.0.0-beta-2  [1]
 3. Maven artifact group "org.apache.myfaces.test" v1.0.0-beta [1]

The artifacts are deployed to my private Apache account ([1] and [3] for binary and source packages).

The release notes could be found at [4].

Also the clirr test does not show binary incompatibilities with myfaces-api.

Please take a look at the "2.0.0-beta-2" artifacts and vote!

Please note: This vote is "majority approval" with a minimum of three
+1 votes (see [3]).

[ ] +1 for community members who have reviewed the bits
[ ] +0
[ ] -1 for fatal flaws that should cause these bits not to be released,
 and why..............

Leonardo Uribe


8. Clirr report to check binary incompatibilities success

9. Vote closed, starting distribution

cd /home/lu4242/public_html/myfaces200beta2binsrc/sources
cp * /www/
cd /home/lu4242/public_html/myfaces200beta2binsrc/binaries
cp * /www/

Alternative for manual copy:

mvn clean deploy -DaltDeploymentRepository=myfaces-staging::default::scpexe:// -Psign-artifacts -DperformRelease=true -Dpassphrase=???

Alternative for manual copy:

mvn clean deploy -DaltDeploymentRepository=myfaces-staging::default::scpexe:// -Psign-artifacts -DperformRelease=true -Dpassphrase=???

10. Announce

Subject: [ANNOUNCE] MyFaces Core v2.0.0-beta-2 Release

The Apache MyFaces team is pleased to announce the release of MyFaces Core 2.0.0-beta-2.

MyFaces Core is a JavaServer(tm) Faces 2.0 implementation as specified by JSR-314. 

MyFaces Core 2.0.0-beta-2 is available in both binary and source distributions.


MyFaces Core is also available in the central Maven repository under Group ID "org.apache.myfaces.core".

Release Notes - MyFaces Core - Version 2.0.0-beta-2


    * [MYFACES-2480] - @ResourceDependencies does not work on custom behaviors
    * [MYFACES-2500] - ResponseWriter clone should not include itself
    * [MYFACES-2507] - onClick on commandLink does not trigger loading of required jsf.js
    * [MYFACES-2516] - Allow any child for f:event in the case of a PreRenderViewEvent
    * [MYFACES-2517] - Problem with flash and GET
    * [MYFACES-2520] - UnsupportedOperationException when launching Trinidad 2 w/ MyFaces2 in Jetty
    * [MYFACES-2522] - f:event wrong attribute name
    * [MYFACES-2525] - Split javax.faces package in OSGi
    * [MYFACES-2526] - javax.faces.view.facelets.ResourceResolver support
    * [MYFACES-2527] - Support for decorator design pattern: RenderKit(s)
    * [MYFACES-2530] - ActionSourceRule does not deal with jsf 1.1 ActionSouce instances
    * [MYFACES-2532] - getClientId() should not be called from listener registering tree changes on DefaultFaceletsStateManagementStrategy and PostAddToViewEvent
    * [MYFACES-2533] - FaceletViewDeclarationLanguage call StateManager.saveView() before write document
    * [MYFACES-2534] - ComponentSupport.addFacet adds a panel when there is only one component as a child
    * [MYFACES-2535] - view-param on navigation case redirects not being handled properly
    * [MYFACES-2537] - FacesConfigurator.sortRelativeOrderingList() algorithm is broken trying to resolve some examples
    * [MYFACES-2540] - Facelets server state saving does not work
    * [MYFACES-2541] - Support for actionlistener method without ActionEvent parameter
    * [MYFACES-2544] - UIViewRoot skips uncorrectly encodeBegin
    * [MYFACES-2547] - FacesConfigurator absolute ordering does not handle files with no name correctly
    * [MYFACES-2551] - Set charset=iso-8859-1 using <f:view> in facelets page makes current page not being rendered
    * [MYFACES-2553] - Handle MethodExpressions on <composite:attribute> correctly
    * [MYFACES-2556] - FaceletViewDeclarationLanguage should use javax.faces.event.ActionEvent instead of java.awt.event.ActionEvent
    * [MYFACES-2557] - AbortProcessingExceptions must be handled by the ExceptionHandler
    * [MYFACES-2558] - composite:attributes action, actionListener, validator and valueChangeListener don't need the attribute method-signature


    * [MYFACES-2510] - Remove RendererUtils.NOTHING
    * [MYFACES-2545] - ProjectStage can be set via System Property and ProjectStage!=Production should create a log entry
    * [MYFACES-2548] - META-INF resource lookup in OSGi environment
    * [MYFACES-2549] - Support for valueChangeListener method without ValueChangeEvent parameter

New Feature

    * [MYFACES-2531] - Support for name/library attributes with h:commandButton
    * [MYFACES-2542] - Don't throw exception if no SelectItems found


    * [MYFACES-2483] - Find a way to allow c:if work with partial state saving enabled
    * [MYFACES-2502] - Component state is lost for composite component childs of facets relocated by composite:insertChildren or composite:insertFacet
    * [MYFACES-2503] - f:event should support no arg method on listener attribute
    * [MYFACES-2511] - Handle javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR correctly
    * [MYFACES-2512] - Ensure invocation of nextHandler.apply() in ValidatorTagHandlerDelegate when in wrapping-mode
    * [MYFACES-2514] - An empty <default-validators> in faces-config should disable default validators
    * [MYFACES-2518] - BeanValidator should not be installed if bean validation is not available
    * [MYFACES-2519] - f:event could be registered twice if it is child of UIViewRoot
    * [MYFACES-2524] - Change ExternalSpecifications to enable using it in automated tests
    * [MYFACES-2538] - Remove resourceVersion and libraryVersion from resource identifiers


Leonardo Uribe