validator中注入service失败

    直接上代码

public class UserValidator extends BaseValidator {
    @Inject
    UserService userService;
    
    //static UserService userService = Aop.get(UserService.class);
}

  用@Inject报错

四月 23, 2019 11:28:21 上午 com.jfinal.core.ActionHandler error
严重: /api/member/user/userinfoPut/
java.lang.NullPointerException
	at validator.user.UserValidator.validate(UserValidator.java:29)

用aop方式就没问题。

评论区

要输就输给追求

2019-04-23 14:43

因为Jfinal只管Controller和Interceptor 的属性自动注入

JFinal

2019-04-23 15:21

@要输就输给追求 jfinal 3.8 版本开始才支持 Validator 中注入,升级到 3.8 即可

xiaoming1234

2019-04-25 11:19

@JFinal 好的,已升级。

JFinal

2019-04-25 11:21

@xiaoming1234 有某些地方,由于对象的创建并非 jfinal 接管的,所以无法使用 @Inject 注入,此时可以使用 Aop.get(...) 来实现,例如:

public class UserValidator extends BaseValidator {
UserService userService = Aop.get(UserService.class);
...
}

热门反馈

扫码入社