extract url generation to abstract router
remove validate method from domain service
lazy injection
inject lazy proxy when encounter @Lazy in parameter