Issue Type: Bug Bug
Affects Versions: 1.1.0.Beta3
Assignee: Unassigned
Components: spec-general
Created: 13/Feb/13 12:08 PM
Description:

In 8.1.1.4 we currently say:

The parameter types are specified using their fully qualified name; If the default-package element is configured for the mapping file, any unqualified class names will be resolved using the given default package. Primitive types (int, long etc.) are referenced by specifying the corresponding keyword of the Java language.

This seems a bit vague when it comes to executables with array-typed arguments and var args parameters.

Proposal:

The parameter types are specified by their fully qualified name, using the syntax described in the documentation of java.lang.Class#getName(). Some examples:

  • "java.lang.String" must be specified for a parameter of type java.lang.String
  • "long" must be specified for a parameter of the primitive type long
  • "[Ljava.lang.Object;" must be specified for a parameter of the type java.lang.Object[]

Var args parameters are specified using the corresponding array type, e.g. a parameter "String..." must be specified as "[Ljava.lang.String;"

If the default-package element is configured for the mapping file, any unqualified class names will be resolved using the given default package.

TODO: Should we allow default-package for array types? That would require to parse and expand the given values.

Fix Versions: 1.1.0.next
Project: Bean Validation
Priority: Major Major
Reporter: Gunnar Morling
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira