NullException khi sử dụng field có @EzyAutoBind trong constructor
Mình sử dụng một trường có annotation @EzyAutoBind ở trong constructor của class thì bị NullException. Có cách nào để workaround không nhỉ mọi người?
singleton
Remain: 5
2 Answers
tvd12
Beginner
tvd12
Beginner
Nếu lớp của anh chỉ có các field là các singleton khác thì anh có thể dùng kiểu này:
@EzySingleton @AllArgsConstructor public class ProjectValidator { private final ProjectService projectService; private final ProjectCategoryService categoryService; }
Còn nếu lớp của anh chứa các field khác không phải là singleton thì anh bắt buộc sử dụng @EzyAutoBind anh ạ:
@Setter @EzyConfigurationAfter public class PrepareDataConfig implements EzyBeanConfig { @EzyProperty private String prefix; @EzyAutoBind private ProjectCategoryService categoryService; }
-
0
Tuan Nguyen
Beginner
Tuan Nguyen
Beginner
Thank em. Hoặc là anh có thể sử dụng Factory design pattern để sử dụng No Args constructor nhỉ? Sau đó thì initialize các field sử dụng method khác sau, như vậy lúc này các @EzyAutoBind field đều được assign value rồi.
-
0