Buggy code:
public class SpringWidgetBuilder implements WidgetBuilder < StaticXmlWidget , StaticSpringMetawidget > { private static final String MAX_LENGTH = "maxlength" ; private static final List < Boolean > LIST_BOOLEAN_VALUES = CollectionUtils . unmodifiableList ( Boolean . TRUE , Boolean . FALSE ) ; public StaticXmlWidget buildWidget ( String elementName , Map < String , String > attributes , StaticSpringMetawidget metawidget ) { if ( TRUE . equals ( attributes . get ( HIDDEN ) ) ) { <START_BUG> return new FormHiddenTag ( ) ; <END_BUG> } if ( ACTION . equals ( elementName ) ) { return new StaticXmlStub ( ) ; } String type = WidgetBuilderUtils . getActualClassOrType ( attributes ) ; if ( type == null ) { type = String . class . getName ( ) ; } Class < ? > clazz = ClassUtils . niceForName ( type ) ; if ( ( Boolean . class . equals ( clazz ) ) && ( TRUE . equals ( REQUIRED ) ) ) { return new FormCheckboxTag ( ) ; } String springLookup = attributes . get ( SPRING_LOOKUP ) ; if ( ( springLookup != null ) && ( ! ( "" . equals ( springLookup ) ) ) ) { return createFormSelectTag ( springLookup , attributes ) ; } String lookup = attributes . get ( LOOKUP ) ; if ( ( lookup != null ) && ( ! ( "" . equals ( lookup ) ) ) ) { return createFormSelectTag ( CollectionUtils . fromString ( lookup ) , CollectionUtils . fromString ( attributes . get ( LOOKUP_LABELS ) ) , attributes ) ; } if ( clazz != null ) { if ( clazz . isPrimitive ( ) ) { if ( boolean . class . equals ( clazz ) ) { return new FormCheckboxTag ( ) ; } if ( char . class . equals ( clazz ) ) { attributes . put ( MAXIMUM_LENGTH , "1" ) ; return createFormInputTag ( attributes ) ; } return createFormInputTag ( attributes ) ; } if ( String . class . equals ( clazz ) ) { if ( TRUE . equals ( attributes . get ( LARGE ) ) ) { return createFormTextareaTag ( attributes ) ; } if ( TRUE . equals ( attributes . get ( MASKED ) ) ) { FormPasswordTag passwordTag = new FormPasswordTag ( ) ; passwordTag . putAttribute ( SpringWidgetBuilder . MAX_LENGTH , attributes . get ( MAXIMUM_LENGTH ) ) ; return passwordTag ; } return createFormInputTag ( attributes ) ; } if ( Character . class . equals ( clazz ) ) { attributes . put ( MAXIMUM_LENGTH , "1" ) ; return createFormInputTag ( attributes ) ; } if ( Date . class . equals ( clazz ) ) { return createFormInputTag ( attributes ) ; } if ( Boolean . class . equals ( clazz ) ) { return createFormSelectTag ( SpringWidgetBuilder . LIST_BOOLEAN_VALUES , null , attributes ) ; } if ( Number . class . isAssignableFrom ( clazz ) ) { return createFormInputTag ( attributes ) ; } if ( Collection . class . isAssignableFrom ( clazz ) ) { return new StaticXmlStub ( ) ; } } if ( TRUE . equals ( attributes . get ( DONT_EXPAND ) ) ) { return createFormInputTag ( attributes ) ; } return null ; } private FormInputTag createFormInputTag ( Map < String , String > attributes ) { } private StaticXmlWidget createFormTextareaTag ( Map < String , String > attributes ) { } private FormSelectTag createFormSelectTag ( String expression , Map < String , String > attributes ) { } private FormSelectTag createFormSelectTag ( List < ? > values , List < String > labels , Map < String , String > attributes ) { } }

Fix:
return new StaticXmlStub ( ) ;