fix a bug in reflection field discovery and add interface for initable resources to implement