Jenkins plugin 开发过程中,当需要对空间对应的值进行校验时:
在内部实现的DescriptorImpl类中,增加doCheckFIELD()函数,来进行配置信息的检查。在参数上可以增加@QueryParameter注解来传入附近位置的数据。
调试过程中一直报:
java.lang.NullPointerException
原因是:没有给装饰器传参,形参名是临时取的,和jelly文件中的field字段不一样,导致找不到要check的filed。
原理:装饰器不传参时,则check的字段依赖于形参,所以形参名必须和jelly文件中的field字段保持一致。
目前调研+测试得到两种方式。
1. 装饰器传参
Java code as:
public FormValidation doCheckPath(@QueryParameter("path") String dir)
throws IOException, ServletException{
if (dir.isEmpty())
return FormValidation.error("path is null!!!");
return FormValidation.ok();
}
Jelly code as:
<f:en