fixed: createComponents always called (even if nonexistent)