You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by cr...@apache.org on 2006/09/01 07:50:57 UTC
svn commit: r439193 - in /beehive/trunk:
netui/src/compiler-core/org/apache/beehive/netui/compiler/
netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/
netui/test/src/compilerTests/testsuite/formBeanChecker/
netui/test/src/compilerTest...
Author: crogers
Date: Thu Aug 31 22:50:56 2006
New Revision: 439193
URL: http://svn.apache.org/viewvc?rev=439193&view=rev
Log:
Fix for http://issues.apache.org/jira/browse/BEEHIVE-1127 to run the form bean checker on external form bean classes with declarative validation before entering the generate() phase of the Controller annotation processing.
The commit includes a new compiler test as well as updating other annotations to include the @Jpf.FormBean annotation on the class declaration of form beans with declarative validation annotations.
Tests: NetUI BVT (WinXP pass) and a build of samples.
Added:
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/expectedOutput/
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/expectedOutput/warningsorerrors.expected (with props)
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/Controller.java (with props)
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestBean.java (with props)
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestFormBean.java (with props)
beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/index.jsp (with props)
Modified:
beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java
beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java
beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/diagnostics.properties
beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/PageFlowCoreAnnotationProcessor.java
beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/TwoPhaseCoreAnnotationProcessor.java
beehive/trunk/netui/test/src/junitTests/org/apache/beehive/netui/test/pageflow/validation/Controller.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/escapeXmlChars/Controller.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/overrideMessageBundles/Controller.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/Controller.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/SharedFlow.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/Controller.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/getZip/GetZip.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/Controller.java
beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/getZip/GetZip.java
beehive/trunk/netui/test/webapps/drt/src/validation/argExpressions/Controller.java
beehive/trunk/netui/test/webapps/drt/src/validation/custom/Controller.java
beehive/trunk/netui/test/webapps/drt/src/validation/declarativeValidation/Controller.java
beehive/trunk/netui/test/webapps/drt/src/validation/defaultMessages/DefaultMessagesController.java
beehive/trunk/netui/test/webapps/drt/src/validation/validateExternalBean/Bean1.java
beehive/trunk/netui/test/webapps/tomcat/src/login/Controller.java
beehive/trunk/samples/netui-samples/src/advanced/clientsidevalidation/Controller.java
beehive/trunk/samples/netui-samples/src/fileupload/Controller.java
beehive/trunk/samples/netui-samples/src/loginexample/loginflow/Controller.java
beehive/trunk/samples/netui-samples/src/nesting/chooseairport/ChooseAirport.java
beehive/trunk/samples/netui-samples/src/ui/popup/Controller.java
beehive/trunk/samples/netui-samples/src/validation/Controller.java
Modified: beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java (original)
+++ beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java Thu Aug 31 22:50:56 2006
@@ -542,7 +542,7 @@
if ( annotationName.equals( ACTION_TAG_NAME ) )
{
actionGrammar.check( annotation, null, method );
-
+
if ( ! CompilerUtils.isAssignableFrom( FORWARD_CLASS_NAME, method.getReturnType(), getEnv() ) )
{
getDiagnostics().addError( method, "error.method-wrong-return-type", FORWARD_CLASS_NAME );
@@ -555,13 +555,39 @@
}
}
}
-
- protected void checkInnerClass( ClassDeclaration innerClass )
+
+ /*
+ * Run a check of form bean classes that might not otherwise
+ * be processed. A @FormBean instance will get processed by the
+ * PageFlowCoreAnnotationProcessor and FormBeanChecker. Otherwise,
+ * run the class through the FormBeanChecker for other possible errors.
+ */
+ private void checkInnerClass(ClassDeclaration jclass)
throws FatalCompileTimeException
{
- _formBeanChecker.check( innerClass );
+ boolean noFormBeanAnnotation = true;
+ if (CompilerUtils.getAnnotation(jclass, FORM_BEAN_TAG_NAME, true) != null) {
+ noFormBeanAnnotation = false;
+ }
+ else {
+ //
+ // check the methods for validatable property annotations that
+ // would be processed elsewhere.
+ //
+ MethodDeclaration[] methods = CompilerUtils.getClassMethods(jclass, null);
+ for (int i = 0; i < methods.length && noFormBeanAnnotation; i++) {
+ MethodDeclaration method = methods[i];
+ if (CompilerUtils.getAnnotation(method, VALIDATABLE_PROPERTY_TAG_NAME) != null) {
+ noFormBeanAnnotation = false;
+ }
+ }
+ }
+
+ if (noFormBeanAnnotation) {
+ _formBeanChecker.check(jclass);
+ }
}
-
+
private void checkExceptionHandlerMethod( MethodDeclaration method )
{
if ( ! CompilerUtils.isAssignableFrom( FORWARD_CLASS_NAME, method.getReturnType(), getEnv() ) )
Modified: beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java (original)
+++ beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java Thu Aug 31 22:50:56 2006
@@ -48,8 +48,9 @@
throws FatalCompileTimeException
{
GetterValidatablePropertyGrammar validatablePropertyGrammar = new GetterValidatablePropertyGrammar();
- boolean isFormBeanClass = CompilerUtils.getAnnotation( jclass, FORM_BEAN_TAG_NAME, true ) != null;
-
+ boolean hasFormBeanAnnotation = CompilerUtils.getAnnotation( jclass, FORM_BEAN_TAG_NAME, true ) != null;
+ boolean isFormBeanClass = hasFormBeanAnnotation;
+
// Look for ValidationField annotations on the methods; if there are some present, then we consider this
// a form bean class, even if it's not annotated as such.
MethodDeclaration[] methods = CompilerUtils.getClassMethods( jclass, null );
@@ -94,7 +95,12 @@
getDiagnostics().addError( jclass, "error.form-no-default-constructor" );
}
}
-
+
+ // check that a class with declarative validation uses a FormBean annotation
+ if (isFormBeanClass && !hasFormBeanAnnotation) {
+ getDiagnostics().addWarning(jclass, "warning.validatable-formbean-use-formbean",
+ ANNOTATION_INTERFACE_PREFIX + FORM_BEAN_TAG_NAME);
+ }
// Check to see if this class extends the (deprecated) FormData class and overrides its validate() method.
// If so, then declarative validation annotations won't work unless the override calls super.validate().
Modified: beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/diagnostics.properties
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/diagnostics.properties?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/diagnostics.properties (original)
+++ beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/diagnostics.properties Thu Aug 31 22:50:56 2006
@@ -141,6 +141,9 @@
The enclosing {0} annotation does not have a {1} value. Without a {1}, the validation annotations on the form bean \
of type {2} will have no effect.
+warning.validatable-formbean-use-formbean = \
+Form beans using declarative validation annotations should have a {0} annotation on the class declaration.
+
error.validatable-field-property-name-not-allowed = \
The {0} attribute is not allowed here. The property name is inferred from the getter method name.
Modified: beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/PageFlowCoreAnnotationProcessor.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/PageFlowCoreAnnotationProcessor.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/PageFlowCoreAnnotationProcessor.java (original)
+++ beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/PageFlowCoreAnnotationProcessor.java Thu Aug 31 22:50:56 2006
@@ -22,9 +22,16 @@
import org.apache.beehive.netui.compiler.typesystem.declaration.AnnotationInstance;
import org.apache.beehive.netui.compiler.typesystem.declaration.AnnotationTypeDeclaration;
import org.apache.beehive.netui.compiler.typesystem.declaration.ClassDeclaration;
+import org.apache.beehive.netui.compiler.typesystem.declaration.Declaration;
+import org.apache.beehive.netui.compiler.typesystem.declaration.MethodDeclaration;
+import org.apache.beehive.netui.compiler.typesystem.declaration.TypeDeclaration;
import org.apache.beehive.netui.compiler.typesystem.env.CoreAnnotationProcessorEnv;
import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
public class PageFlowCoreAnnotationProcessor
@@ -37,17 +44,57 @@
super( annotationTypeDecls, env );
}
+ /*
+ * Run the checkers on classes including form beans with declarative
+ * validation annotations. This override will find class declarations
+ * for classes that may only have method level declarative validation
+ * annotations.
+ */
+ protected void check(Collection decls)
+ throws FatalCompileTimeException
+ {
+ ArrayList classDecls = new ArrayList();
+ HashSet classNames = new HashSet();
+ for (Iterator i = decls.iterator(); i.hasNext();) {
+ Declaration decl = (Declaration) i.next();
+ if (decl instanceof ClassDeclaration) {
+ ClassDeclaration jclass = (ClassDeclaration) decl;
+ if (!classNames.contains(jclass.getQualifiedName())) {
+ classNames.add(jclass.getQualifiedName());
+ classDecls.add(jclass);
+ }
+ }
+ else if (decl instanceof MethodDeclaration) {
+ //
+ // Declarative validation annotations on a method. Include as a
+ // possible form bean that does not have the @FormBean annotation.
+ //
+ MethodDeclaration methodDecl = (MethodDeclaration) decl;
+ TypeDeclaration type = methodDecl.getDeclaringType();
+ if (type instanceof ClassDeclaration) {
+ ClassDeclaration jclass = (ClassDeclaration) type;
+ if (!classNames.contains(jclass.getQualifiedName())) {
+ classNames.add(jclass.getQualifiedName());
+ classDecls.add(jclass);
+ }
+ }
+ }
+ }
+
+ super.check(classDecls);
+ }
+
public BaseChecker getChecker( ClassDeclaration classDecl, Diagnostics diagnostics )
{
CoreAnnotationProcessorEnv env = getAnnotationProcessorEnvironment();
-
+
if ( CompilerUtils.isAssignableFrom( JPF_BASE_CLASS, classDecl, env ) )
{
if ( expectAnnotation( classDecl, CONTROLLER_TAG_NAME, JPF_FILE_EXTENSION_DOT, JPF_BASE_CLASS, diagnostics ) )
{
FlowControllerInfo fcInfo = new FlowControllerInfo( classDecl );
setSourceFileInfo( classDecl, fcInfo );
-
+
return new PageFlowChecker( env, diagnostics, fcInfo );
}
}
@@ -58,7 +105,7 @@
{
FlowControllerInfo fcInfo = new FlowControllerInfo( classDecl );
setSourceFileInfo( classDecl, fcInfo );
-
+
return new SharedFlowChecker( env, fcInfo, diagnostics );
}
}
@@ -69,7 +116,7 @@
{
FlowControllerInfo fcInfo = new FlowControllerInfo( classDecl );
setSourceFileInfo( classDecl, fcInfo );
-
+
return new SharedFlowChecker( env, fcInfo, diagnostics );
}
}
@@ -86,30 +133,31 @@
else
{
AnnotationInstance ann = CompilerUtils.getAnnotation( classDecl, CONTROLLER_TAG_NAME );
-
+
if ( ann != null )
{
diagnostics.addError( ann, "error.annotation-invalid-base-class2",
CONTROLLER_TAG_NAME, JPF_BASE_CLASS, SHARED_FLOW_BASE_CLASS );
}
-
+
ann = CompilerUtils.getAnnotation( classDecl, FACES_BACKING_TAG_NAME );
-
+
if ( ann != null )
{
diagnostics.addError( ann, "error.annotation-invalid-base-class",
FACES_BACKING_TAG_NAME, FACES_BACKING_BEAN_CLASS );
}
}
-
- return null;
+
+ // check the class as a form bean for declarative validation annotations
+ return new FormBeanChecker(getAnnotationProcessorEnvironment(), diagnostics);
}
public BaseGenerator getGenerator( ClassDeclaration classDecl, Diagnostics diags )
{
CoreAnnotationProcessorEnv env = getAnnotationProcessorEnvironment();
SourceFileInfo sourceFileInfo = getSourceFileInfo( classDecl );
-
+
if ( CompilerUtils.isAssignableFrom( JPF_BASE_CLASS, classDecl, env ) )
{
assert sourceFileInfo != null : classDecl.getQualifiedName();
@@ -128,7 +176,7 @@
assert sourceFileInfo instanceof FacesBackingInfo : sourceFileInfo.getClass().getName();
return new FacesBackingGenerator( env, sourceFileInfo, diags );
}
-
+
return null;
}
}
Modified: beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/TwoPhaseCoreAnnotationProcessor.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/TwoPhaseCoreAnnotationProcessor.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/TwoPhaseCoreAnnotationProcessor.java (original)
+++ beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/processor/TwoPhaseCoreAnnotationProcessor.java Thu Aug 31 22:50:56 2006
@@ -25,6 +25,9 @@
import org.apache.beehive.netui.compiler.typesystem.env.CoreAnnotationProcessorEnv;
import org.apache.beehive.netui.compiler.typesystem.declaration.AnnotationTypeDeclaration;
import org.apache.beehive.netui.compiler.typesystem.declaration.Declaration;
+import org.apache.beehive.netui.compiler.typesystem.declaration.ClassDeclaration;
+import org.apache.beehive.netui.compiler.typesystem.declaration.MethodDeclaration;
+import org.apache.beehive.netui.compiler.typesystem.declaration.TypeDeclaration;
import org.apache.beehive.netui.compiler.Diagnostics;
import org.apache.beehive.netui.compiler.FatalCompileTimeException;
import org.apache.beehive.netui.compiler.CompilerUtils;
@@ -138,13 +141,16 @@
}
}
- //
// Now, check the declarations.
- //
- for ( Iterator i = declsToCheck.iterator(); i.hasNext(); )
- {
- Declaration decl = ( Declaration ) i.next();
- check( decl );
+ check(declsToCheck);
+ }
+
+ protected void check(Collection decls)
+ throws FatalCompileTimeException
+ {
+ for (Iterator i = decls.iterator(); i.hasNext();) {
+ Declaration decl = (Declaration) i.next();
+ check(decl);
}
}
Added: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/expectedOutput/warningsorerrors.expected
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/expectedOutput/warningsorerrors.expected?rev=439193&view=auto
==============================================================================
--- beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/expectedOutput/warningsorerrors.expected (added)
+++ beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/expectedOutput/warningsorerrors.expected Thu Aug 31 22:50:56 2006
@@ -0,0 +1,32 @@
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\Controller.java:190: This value must be a primitive Class, e.g. int.class.
+ public String getName() { return name; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\Controller.java:198: The propertyName attribute is not allowed here. The property name is inferred from the getter method name.
+ public String getId() { return id; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\Controller.java:182: warning: Form beans using declarative validation annotations should have a Jpf.FormBean annotation on the class declaration.
+ public static class MyBean implements Serializable {
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\TestFormBean.java:34: This value must be a primitive Class, e.g. int.class.
+ public String getName() { return name; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\TestFormBean.java:43: The propertyName attribute is not allowed here. The property name is inferred from the getter method name.
+ public String getId() { return id; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\Controller.java:169: This value must be a primitive Class, e.g. int.class.
+ public String getName() { return name; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\Controller.java:177: The propertyName attribute is not allowed here. The property name is inferred from the getter method name.
+ public String getId() { return id; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\TestBean.java:33: This value must be a primitive Class, e.g. int.class.
+ public String getName() { return name; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\TestBean.java:42: The propertyName attribute is not allowed here. The property name is inferred from the getter method name.
+ public String getId() { return id; }
+ ^
+[LOCAL_PATH]\WEB-INF\.tmpbeansrc\formBeanChecker\TestBean.java:23: warning: Form beans using declarative validation annotations should have a Jpf.FormBean annotation on the class declaration.
+public class TestBean implements java.io.Serializable {
+ ^
+8 errors
+2 warnings
Propchange: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/expectedOutput/warningsorerrors.expected
------------------------------------------------------------------------------
svn:eol-style = native
Added: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/Controller.java?rev=439193&view=auto
==============================================================================
--- beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/Controller.java (added)
+++ beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/Controller.java Thu Aug 31 22:50:56 2006
@@ -0,0 +1,201 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+package formBeanChecker;
+
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+import org.apache.beehive.netui.pageflow.Forward;
+
+import java.io.Serializable;
+
+@Jpf.Controller(
+ validatableBeans={
+ @Jpf.ValidatableBean(
+ type=Controller.MyBean.class,
+ validatableProperties={
+ @Jpf.ValidatableProperty(
+ propertyName="id",
+ displayName="This field",
+ validateRequired=@Jpf.ValidateRequired(),
+ validateMinLength=@Jpf.ValidateMinLength(chars=2)
+ )
+ }
+ )
+ },
+ simpleActions = {
+ @Jpf.SimpleAction(name = "begin", path = "index.jsp")
+ })
+public class Controller extends PageFlowController {
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testExternalFormBean(TestFormBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testExternalFormBeanAgain(TestFormBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testExternalBean(TestBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testExternalAgainBean(TestBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testInnerFormBean(MyFormBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testInnerFormBeanAgain(MyFormBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testInnerBean(MyBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+ @Jpf.Action(
+ validationErrorForward = @Jpf.Forward(
+ name="validationFailure",
+ path="index.jsp"),
+ forwards = {
+ @Jpf.Forward(
+ name = "success",
+ path = "index.jsp")
+ })
+ public Forward testInnerBeanAgain(MyBean form) {
+ Forward forward = new Forward("success");
+ return forward;
+ }
+
+ // also test inner form bean class...
+ @Jpf.FormBean()
+ public static class MyFormBean implements Serializable {
+ private String name = "Form Bean";
+ private String id = "12345";
+
+ @Jpf.ValidatableProperty(
+ displayName = "name",
+ validateType = @Jpf.ValidateType(type=String.class)
+ )
+ public String getName() { return name; }
+ public void setName(String n) { name = n; }
+
+ @Jpf.ValidatableProperty(
+ propertyName = "id",
+ displayName = "ID",
+ validateType=@Jpf.ValidateType(type=int.class)
+ )
+ public String getId() { return id; }
+ public void setId(String i) { id = i; }
+ }
+
+ // also test inner class...
+ public static class MyBean implements Serializable {
+ private String name = "Form One";
+ private String id = "12345";
+
+ @Jpf.ValidatableProperty(
+ displayName = "name",
+ validateType = @Jpf.ValidateType(type=String.class)
+ )
+ public String getName() { return name; }
+ public void setName(String n) { name = n; }
+
+ @Jpf.ValidatableProperty(
+ propertyName = "id",
+ displayName = "ID",
+ validateType=@Jpf.ValidateType(type=int.class)
+ )
+ public String getId() { return id; }
+ public void setId(String i) { id = i; }
+ }
+}
Propchange: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/Controller.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestBean.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestBean.java?rev=439193&view=auto
==============================================================================
--- beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestBean.java (added)
+++ beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestBean.java Thu Aug 31 22:50:56 2006
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+package formBeanChecker;
+
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+public class TestBean implements java.io.Serializable {
+
+ private String name;
+ private String id = "12345";
+
+ @Jpf.ValidatableProperty(
+ displayName = "Name",
+ validateType=@Jpf.ValidateType(type=String.class)
+ )
+
+ public String getName() { return name; }
+ public void setName(String n) { name = n; }
+
+ @Jpf.ValidatableProperty(
+ propertyName = "bogus",
+ displayName = "ID",
+ validateType=@Jpf.ValidateType(type=int.class)
+ )
+
+ public String getId() { return id; }
+ public void setId(String i) { id = i; }
+}
Propchange: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestBean.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestFormBean.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestFormBean.java?rev=439193&view=auto
==============================================================================
--- beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestFormBean.java (added)
+++ beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestFormBean.java Thu Aug 31 22:50:56 2006
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+package formBeanChecker;
+
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+@Jpf.FormBean()
+public class TestFormBean implements java.io.Serializable {
+
+ private String name;
+ private String id = "12345";
+
+ @Jpf.ValidatableProperty(
+ displayName = "Name",
+ validateType=@Jpf.ValidateType(type=String.class)
+ )
+
+ public String getName() { return name; }
+ public void setName(String n) { name = n; }
+
+ @Jpf.ValidatableProperty(
+ propertyName = "bogus",
+ displayName = "ID",
+ validateType=@Jpf.ValidateType(type=int.class)
+ )
+
+ public String getId() { return id; }
+ public void setId(String i) { id = i; }
+}
Propchange: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/TestFormBean.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/index.jsp
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/index.jsp?rev=439193&view=auto
==============================================================================
--- beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/index.jsp (added)
+++ beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/index.jsp Thu Aug 31 22:50:56 2006
@@ -0,0 +1,31 @@
+<%--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ $Header:$
+--%>
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib uri="http://beehive.apache.org/netui/tags-html-1.0" prefix="netui"%>
+<netui:html>
+ <head>
+ <title>Web Application Page</title>
+ <netui:base/>
+ </head>
+ <netui:body>
+ <p>
+ New Web Application Page
+ </p>
+ </netui:body>
+</netui:html>
Propchange: beehive/trunk/netui/test/src/compilerTests/testsuite/formBeanChecker/formBeanChecker/index.jsp
------------------------------------------------------------------------------
svn:eol-style = native
Modified: beehive/trunk/netui/test/src/junitTests/org/apache/beehive/netui/test/pageflow/validation/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/src/junitTests/org/apache/beehive/netui/test/pageflow/validation/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/src/junitTests/org/apache/beehive/netui/test/pageflow/validation/Controller.java (original)
+++ beehive/trunk/netui/test/src/junitTests/org/apache/beehive/netui/test/pageflow/validation/Controller.java Thu Aug 31 22:50:56 2006
@@ -58,7 +58,8 @@
{
return new Forward( "index" );
}
-
+
+ @Jpf.FormBean()
public static class AnyBeanForm
implements Serializable, Validatable
{
@@ -82,7 +83,8 @@
errors.add( "foo", new ActionMessage( "message1" ) );
}
}
-
+
+ @Jpf.FormBean()
public static class FormDataForm
extends FormData
{
@@ -109,7 +111,8 @@
return errors;
}
}
-
+
+ @Jpf.FormBean()
public static class ValidatableFormDataForm
extends FormData
implements Validatable
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/escapeXmlChars/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/escapeXmlChars/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/escapeXmlChars/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/escapeXmlChars/Controller.java Thu Aug 31 22:50:56 2006
@@ -48,6 +48,7 @@
return new Forward("index");
}
+ @Jpf.FormBean()
public static class MyForm implements java.io.Serializable
{
private String _foo;
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/overrideMessageBundles/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/overrideMessageBundles/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/overrideMessageBundles/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/overrideMessageBundles/Controller.java Thu Aug 31 22:50:56 2006
@@ -42,6 +42,7 @@
return new Forward("index");
}
+ @Jpf.FormBean()
public static class MyForm implements java.io.Serializable
{
private String _foo;
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/Controller.java Thu Aug 31 22:50:56 2006
@@ -25,6 +25,7 @@
return null;
}
+ @Jpf.FormBean()
public static class MyForm
{
@Jpf.ValidatableProperty(
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/SharedFlow.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/SharedFlow.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/SharedFlow.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/sharedFlowMessageKeys/SharedFlow.java Thu Aug 31 22:50:56 2006
@@ -35,6 +35,7 @@
throw new Exception2();
}
+ @Jpf.FormBean()
public static class MyForm
{
@Jpf.ValidatableProperty(
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/Controller.java Thu Aug 31 22:50:56 2006
@@ -67,6 +67,7 @@
}
+ @Jpf.FormBean()
public static class SubmitForm implements Serializable
{
private String _name;
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/getZip/GetZip.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/getZip/GetZip.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/getZip/GetZip.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNested/getZip/GetZip.java Thu Aug 31 22:50:56 2006
@@ -55,6 +55,7 @@
}
+ @Jpf.FormBean()
public static class ZipForm implements Serializable
{
private String _zip;
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/Controller.java Thu Aug 31 22:50:56 2006
@@ -44,6 +44,7 @@
}
+ @Jpf.FormBean()
public static class SubmitForm
implements Serializable
{
Modified: beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/getZip/GetZip.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/getZip/GetZip.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/getZip/GetZip.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/miniTests/updateFormFromNestedPopup/getZip/GetZip.java Thu Aug 31 22:50:56 2006
@@ -72,6 +72,7 @@
return new Forward( "done" );
}
+ @Jpf.FormBean()
public static class ZipForm implements Serializable
{
private String _state;
Modified: beehive/trunk/netui/test/webapps/drt/src/validation/argExpressions/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/validation/argExpressions/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/validation/argExpressions/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/validation/argExpressions/Controller.java Thu Aug 31 22:50:56 2006
@@ -63,6 +63,7 @@
}
}
+ @Jpf.FormBean()
public static class Form2
{
@Jpf.ValidatableProperty(
Modified: beehive/trunk/netui/test/webapps/drt/src/validation/custom/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/validation/custom/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/validation/custom/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/validation/custom/Controller.java Thu Aug 31 22:50:56 2006
@@ -35,6 +35,7 @@
return new Forward( "success" );
}
+ @Jpf.FormBean()
public static class MyForm
{
private String _val;
Modified: beehive/trunk/netui/test/webapps/drt/src/validation/declarativeValidation/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/validation/declarativeValidation/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/validation/declarativeValidation/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/validation/declarativeValidation/Controller.java Thu Aug 31 22:50:56 2006
@@ -445,6 +445,7 @@
}
}
+ @Jpf.FormBean()
public static class ValidatedForm implements Serializable
{
private String _validWhenPageFlowProp;
Modified: beehive/trunk/netui/test/webapps/drt/src/validation/defaultMessages/DefaultMessagesController.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/validation/defaultMessages/DefaultMessagesController.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/validation/defaultMessages/DefaultMessagesController.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/validation/defaultMessages/DefaultMessagesController.java Thu Aug 31 22:50:56 2006
@@ -51,6 +51,7 @@
}
+ @Jpf.FormBean()
public static class TheForm implements Serializable
{
private String _required;
Modified: beehive/trunk/netui/test/webapps/drt/src/validation/validateExternalBean/Bean1.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/drt/src/validation/validateExternalBean/Bean1.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/drt/src/validation/validateExternalBean/Bean1.java (original)
+++ beehive/trunk/netui/test/webapps/drt/src/validation/validateExternalBean/Bean1.java Thu Aug 31 22:50:56 2006
@@ -3,6 +3,7 @@
import org.apache.beehive.netui.pageflow.annotations.Jpf;
import java.io.Serializable;
+@Jpf.FormBean()
public class Bean1
implements Serializable
{
Modified: beehive/trunk/netui/test/webapps/tomcat/src/login/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/netui/test/webapps/tomcat/src/login/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/netui/test/webapps/tomcat/src/login/Controller.java (original)
+++ beehive/trunk/netui/test/webapps/tomcat/src/login/Controller.java Thu Aug 31 22:50:56 2006
@@ -58,6 +58,7 @@
return new Forward( "success" );
}
+ @Jpf.FormBean()
public static class LoginForm
{
private String _username;
Modified: beehive/trunk/samples/netui-samples/src/advanced/clientsidevalidation/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/samples/netui-samples/src/advanced/clientsidevalidation/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/samples/netui-samples/src/advanced/clientsidevalidation/Controller.java (original)
+++ beehive/trunk/samples/netui-samples/src/advanced/clientsidevalidation/Controller.java Thu Aug 31 22:50:56 2006
@@ -49,6 +49,7 @@
/**
* The form bean, with validation annotations on its properties.
*/
+ @Jpf.FormBean()
public static class MyForm implements java.io.Serializable {
private String _fullName;
private String _email;
Modified: beehive/trunk/samples/netui-samples/src/fileupload/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/samples/netui-samples/src/fileupload/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/samples/netui-samples/src/fileupload/Controller.java (original)
+++ beehive/trunk/samples/netui-samples/src/fileupload/Controller.java Thu Aug 31 22:50:56 2006
@@ -70,6 +70,7 @@
return fwd;
}
+ @Jpf.FormBean()
public static class UploadForm
implements Serializable, Validatable {
Modified: beehive/trunk/samples/netui-samples/src/loginexample/loginflow/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/samples/netui-samples/src/loginexample/loginflow/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/samples/netui-samples/src/loginexample/loginflow/Controller.java (original)
+++ beehive/trunk/samples/netui-samples/src/loginexample/loginflow/Controller.java Thu Aug 31 22:50:56 2006
@@ -52,6 +52,7 @@
return new Forward("success");
}
+ @Jpf.FormBean()
public static class LoginForm implements java.io.Serializable {
private String _username;
private String _password;
Modified: beehive/trunk/samples/netui-samples/src/nesting/chooseairport/ChooseAirport.java
URL: http://svn.apache.org/viewvc/beehive/trunk/samples/netui-samples/src/nesting/chooseairport/ChooseAirport.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/samples/netui-samples/src/nesting/chooseairport/ChooseAirport.java (original)
+++ beehive/trunk/samples/netui-samples/src/nesting/chooseairport/ChooseAirport.java Thu Aug 31 22:50:56 2006
@@ -105,6 +105,7 @@
/**
* This is the form bean that works with findairport.jsp.
*/
+ @Jpf.FormBean()
public static class SearchForm
implements Serializable
{
Modified: beehive/trunk/samples/netui-samples/src/ui/popup/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/samples/netui-samples/src/ui/popup/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/samples/netui-samples/src/ui/popup/Controller.java (original)
+++ beehive/trunk/samples/netui-samples/src/ui/popup/Controller.java Thu Aug 31 22:50:56 2006
@@ -62,6 +62,7 @@
}
+ @Jpf.FormBean()
public static class SubmitForm
implements Serializable {
Modified: beehive/trunk/samples/netui-samples/src/validation/Controller.java
URL: http://svn.apache.org/viewvc/beehive/trunk/samples/netui-samples/src/validation/Controller.java?rev=439193&r1=439192&r2=439193&view=diff
==============================================================================
--- beehive/trunk/samples/netui-samples/src/validation/Controller.java (original)
+++ beehive/trunk/samples/netui-samples/src/validation/Controller.java Thu Aug 31 22:50:56 2006
@@ -82,6 +82,7 @@
* inside the @Jpf.Controller annotation). A form bean class can also define its <i>own</i>
* message bundle through the @Jpf.FormBean annotation.
*/
+ @Jpf.FormBean()
public static class MyForm
implements Serializable {
private String _value;