@ Override public String marshal ( BoundType v ) throws Exception { Class < ? extends Object > type = v . getClass ( ) ; if ( ! Types . isUserDefinedValueType ( type ) ) { throw new IllegalArgumentException ( "Type [" + type + "] must be an user-defined value type; " + "@XmlJavaTypeAdapter(ValueTypeXmlAdapter.class) " + "can be annotated to user-defined value type and field only" ) ; } Converter converter = ConvertUtils . lookup ( type ) ; if ( ( converter != null && converter instanceof AbstractConverter ) ) { String string = ( String ) ConvertUtils . convert ( v , String . class ) ; if ( string != null ) { return string ; } } return v . toString ( ) ; }
Marshals the specified user - defined value type object to single XML value string representation .