Bean UtilsRelease Notes

Bean Utils is a support library that aids Fantom-Factory Ltd in the development of other libraries, frameworks and applications. Though you are welcome to use it, you may find features are missing and the documentation incomplete.

Realease Notes


  • Bug: Coercing ordered Maps could result in error.


  • Chg: Converted protected methods in TypeCoercer and TypeLookup to public virtual to allow for more customisation.


  • New: afBeanUtils now available as a SkySpark extension.
  • New: BeanBuilder replaces BeanFactory
  • New: Some ReflectUtil methods now take an optional matchArity arg.
  • Chg: Renamed BeanIdentity to BeanEquality and updated methods to take field list. (Breaking change.)
  • Chg: Removed TypeNotFoundErr in favour of using the generic ArgNotFound.
  • Chg: Deleted OneShotLock from BeanFactory.
  • Bug: Fixed NPE in TypeCoercer when creating coercion funcs in JS.


  • Chg: ArgNotFoundErr now extends Err and is available in Javascript.


  • Bug: BeanFactory and TypeCoercer now work in Javascript.
  • Chg: Removed Javascript implemenation of BeanProperties due to Fantom's Func.toImmutable() bug.


  • Chg: More nullable options in ReflectUtils.
  • Chg: TypeCoercer.canCoerce() may now take nulls.
  • Chg: Added TypeLookup.types().
  • Bug: Property makeFuncs could not return null.
  • Bug: NotFoundErr.availableValues could not hold null.


  • New: Added ArgNotFoundErr, a handy impl of NotFoundErr.
  • New: Added NotFoundErr.valueMsg() so you can customise the msg.


  • Chg: BeanProperties.create() takes a factoryFunc so IoC may instantiate the objects.


  • New: Bean Utils is now available in JavaScript. (Added @Js to all classes.)
  • New: Use BeanProperties.create() to instantiate entire trees of objects from property expressions!
  • New: Use BeanFactory to reflectivly create instances of Lists, Maps and other Objects.
  • New: Added findFields(), findCtors() and findMethods() to ReflectUtils.
  • New: Added BeanFactory.defaultValue(type) as a replacement for Type.make.


  • New: Preview release.