Annotation Interface UrlEncoding
@Documented
@Target({TYPE,FIELD,METHOD})
@Retention(RUNTIME)
@Inherited
@Repeatable(Array.class)
@ContextApply(Apply.class)
public @interface UrlEncoding
Annotation that can be applied to classes, fields, and methods to tweak how they are handled by
 
UrlEncodingSerializer and UrlEncodingParser.
 Can be used in the following locations:
- Marshalled classes/methods/fields.
- @Rest -annotated classes and- @RestOp -annotated methods when an- on()value is specified.
See Also:
- 
Optional Element SummaryOptional ElementsModifier and TypeOptional ElementDescriptionString[]Optional description for the exposed API.booleanWhen true, bean properties of type array or Collection will be expanded into multiple key/value pairings.String[]Dynamically apply this annotation to the specified classes/methods/fields.Class<?>[]Dynamically apply this annotation to the specified classes.
- 
Element Details- 
descriptionOptional description for the exposed API.- Returns:
- The annotation value.
- Since:
- 9.2.0
 - Default:
- {}
 
- 
expandedParamsboolean expandedParamsWhen true, bean properties of type array or Collection will be expanded into multiple key/value pairings.This annotation is identical in behavior to using the UrlEncodingSerializer.Builder.expandedParams()andUrlEncodingParser.Builder.expandedParams()properties, but applies to only instances of this bean.- Returns:
- The annotation value.
 - Default:
- false
 
- 
onDynamically apply this annotation to the specified classes/methods/fields.Used in conjunction with BeanContext.Builder.applyAnnotations(Class...)to dynamically apply an annotation to an existing class/method/field. It is ignored when the annotation is applied directly to classes/methods/fields.Valid patterns:- Classes:
      - Fully qualified:
            - "com.foo.MyClass" 
 
- Fully qualified inner class:
            - "com.foo.MyClass$Inner1$Inner2" 
 
- Simple:
            - "MyClass" 
 
- Simple inner:
            - "MyClass$Inner1$Inner2" 
- "Inner1$Inner2" 
- "Inner2" 
 
 
- Fully qualified:
            
- Methods:
      - Fully qualified with args:
            - "com.foo.MyClass.myMethod(String,int)" 
- "com.foo.MyClass.myMethod(java.lang.String,int)" 
- "com.foo.MyClass.myMethod()" 
 
- Fully qualified:
            - "com.foo.MyClass.myMethod" 
 
- Simple with args:
            - "MyClass.myMethod(String,int)" 
- "MyClass.myMethod(java.lang.String,int)" 
- "MyClass.myMethod()" 
 
- Simple:
            - "MyClass.myMethod" 
 
- Simple inner class:
            - "MyClass$Inner1$Inner2.myMethod" 
- "Inner1$Inner2.myMethod" 
- "Inner2.myMethod" 
 
 
- Fully qualified with args:
            
- Fields:
      - Fully qualified:
            - "com.foo.MyClass.myField" 
 
- Simple:
            - "MyClass.myField" 
 
- Simple inner class:
            - "MyClass$Inner1$Inner2.myField" 
- "Inner1$Inner2.myField" 
- "Inner2.myField" 
 
 
- Fully qualified:
            
- A comma-delimited list of anything on this list.
 See Also:- Returns:
- The annotation value.
 - Default:
- {}
 
- Classes:
      
- 
onClassDynamically apply this annotation to the specified classes.Identical to on()except allows you to specify class objects instead of a strings.See Also:- Returns:
- The annotation value.
 - Default:
- {}
 
 
-