fix bugs on name controller and make easier application of component annotation