我正在构建一个访问远程服务器的Jenkins插件。作为配置的一部分,用户需要输入服务器的URL并提供访问密钥。然后插件将从服务器检索资源列表,用户需要从html select
输入中选择适当的资源。
我正在使用/ lib / form命名空间创建config.jelly
文件,并使用标记填充select:
<f:entry title="Resource" field="resource">
<f:select />
</f:entry>
在我的Descriptor课程中,我有一个方法:
doFillResourceItems(@QueryParamter final String url, @QueryParameter final String key)
并且订书机似乎在浏览器触发onchange
事件时调用该方法(如预期的那样)。
我的问题出在doCheckResource(@QueryParameter final String value)
方法中。访问ListBoxModel
方法返回的doFillResourceItems()
对象会很有帮助,因为我要向用户显示的错误消息应该是不同的,具体取决于插件是否能够检索资源列表与否。一种选择是简单地将url
和key
字段注入doCheckResource
方法,然后再试一次,但是我们正在检索资源列表两次,这不是'理想的。
为了让Stapler将以前检索过的ListBoxModel
对象注入验证方法调用,我需要做些什么?