You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lu...@apache.org on 2013/08/17 00:21:48 UTC
svn commit: r1514909 - in /myfaces/core/trunk/impl/src:
main/java/org/apache/myfaces/config/annotation/
test/java/org/apache/myfaces/view/facelets/test/component/
test/resources/org/apache/myfaces/view/facelets/test/component/
Author: lu4242
Date: Fri Aug 16 22:21:48 2013
New Revision: 1514909
URL: http://svn.apache.org/r1514909
Log:
MYFACES-3756 @FacesComponent and @FacesValidator value are now optional
Added:
myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel3.java
- copied, changed from r1509781, myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel1.java
myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel3.xhtml
- copied, changed from r1509781, myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel2.xhtml
Modified:
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java
myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/FacesComponentAnnotationMyFacesRequestTestCase.java
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java?rev=1514909&r1=1514908&r2=1514909&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/config/annotation/AnnotationConfigurator.java Fri Aug 16 22:21:48 2013
@@ -119,13 +119,19 @@ public class AnnotationConfigurator
log.finest("addComponent(" + comp.value() + ","
+ clazz.getName() + ")");
}
-
- facesConfig.addComponent(comp.value(), clazz.getName());
+ String value = comp.value();
+ if ( value == null ||
+ (value != null && value.length() <= 0))
+ {
+ String simpleName = clazz.getSimpleName();
+ value = Character.toLowerCase(simpleName.charAt(0)) + simpleName.substring(1);
+ }
+ facesConfig.addComponent(value, clazz.getName());
if (comp.createTag())
{
- facesConfig.addComponentTagDeclaration(comp.value(),
- new ComponentTagDeclarationImpl(comp.value(),
+ facesConfig.addComponentTagDeclaration(value,
+ new ComponentTagDeclarationImpl(value,
comp.namespace(), comp.tagName()));
}
}
@@ -188,7 +194,14 @@ public class AnnotationConfigurator
log.finest("addValidator(" + val.value() + "," + clazz.getName()
+ ")");
}
- facesConfig.addValidator(val.value(), clazz.getName());
+ String value = val.value();
+ if ( value == null ||
+ (value != null && value.length() <= 0))
+ {
+ String simpleName = clazz.getSimpleName();
+ value = Character.toLowerCase(simpleName.charAt(0)) + simpleName.substring(1);
+ }
+ facesConfig.addValidator(value, clazz.getName());
if (val.isDefault())
{
Application app = null;
@@ -200,7 +213,7 @@ public class AnnotationConfigurator
{
app = (Application) facesConfig.getApplications().get(0);
}
- app.addDefaultValidatorId(val.value());
+ app.addDefaultValidatorId(value);
}
}
}
Modified: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/FacesComponentAnnotationMyFacesRequestTestCase.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/FacesComponentAnnotationMyFacesRequestTestCase.java?rev=1514909&r1=1514908&r2=1514909&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/FacesComponentAnnotationMyFacesRequestTestCase.java (original)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/FacesComponentAnnotationMyFacesRequestTestCase.java Fri Aug 16 22:21:48 2013
@@ -76,4 +76,22 @@ public class FacesComponentAnnotationMyF
tearDownRequest();
}
+
+ @Test
+ public void testUIPanel3() throws Exception
+ {
+ setupRequest("/testMyUIPanel3.xhtml");
+ processLifecycleExecuteAndRender();
+
+ UIComponent comp = facesContext.getViewRoot().findComponent("panel3");
+ Assert.assertNotNull(comp);
+ Assert.assertTrue(comp instanceof MyUIPanel3);
+
+ // Check component type
+ MyUIPanel3 comp2 = (MyUIPanel3)
+ facesContext.getApplication().createComponent("myUIPanel3");
+ Assert.assertNotNull(comp2);
+
+ tearDownRequest();
+ }
}
Copied: myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel3.java (from r1509781, myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel1.java)
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel3.java?p2=myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel3.java&p1=myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel1.java&r1=1509781&r2=1514909&rev=1514909&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel1.java (original)
+++ myfaces/core/trunk/impl/src/test/java/org/apache/myfaces/view/facelets/test/component/MyUIPanel3.java Fri Aug 16 22:21:48 2013
@@ -25,11 +25,11 @@ import javax.faces.component.UIPanel;
*
* @author Leonardo Uribe
*/
-@FacesComponent(value="oam.my.UIPanel1", createTag=true, tagName="myUIPanel1")
-public class MyUIPanel1 extends UIPanel
+@FacesComponent(createTag=true, tagName="myUIPanel3")
+public class MyUIPanel3 extends UIPanel
{
- public MyUIPanel1()
+ public MyUIPanel3()
{
super();
}
Copied: myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel3.xhtml (from r1509781, myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel2.xhtml)
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel3.xhtml?p2=myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel3.xhtml&p1=myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel2.xhtml&r1=1509781&r2=1514909&rev=1514909&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel2.xhtml (original)
+++ myfaces/core/trunk/impl/src/test/resources/org/apache/myfaces/view/facelets/test/component/testMyUIPanel3.xhtml Fri Aug 16 22:21:48 2013
@@ -16,10 +16,10 @@
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:custom="http://my.coolorganization.org/tags">
-<custom:myUIPanel2 id="panel1">
+ xmlns:custom="http://xmlns.jcp.org/jsf/component">
+<custom:myUIPanel3 id="panel3">
Hello World
-</custom:myUIPanel2>
+</custom:myUIPanel3>
</ui:composition>