Jira 自定义脚本验证器:检查输入文本框是否存在

Jira custom script validator: check if input textbox exists

我是 Jira 的新手。事实上,我什至不知道从哪里开始。我去了 jira atlassian 网站,但没有得到足够可靠的帮助。我想验证输入到文本框中的信息是否已经存在。我在 jira 周围单击并最终出现在下面的屏幕上:

现在我想了解一下:

  1. Which programming language should be used for validation ? Is it Java
  2. If the name of the custom field(of type Textbox) is XYZ and I wanna if check if value entered into XYZ already exist, how do I go about doing that ? Can I just write conditional statements in Java ?

我写了一些东西但没有任何效果。

这是 Script Runner add-on 的屏幕截图。

这里有 custom validators 的一些文档和示例。

您还可以找到一个 example here,它展示了如何从 groovy 脚本查询 JIRA(或外部)数据库。即:

import com.atlassian.jira.component.ComponentAccessor
import groovy.sql.Sql
import org.ofbiz.core.entity.ConnectionFactory
import org.ofbiz.core.entity.DelegatorInterface

import java.sql.Connection

def delegator = (DelegatorInterface) ComponentAccessor.getComponent(DelegatorInterface)
String helperName = delegator.getGroupHelperName("default");

def sqlStmt = """
    SELECT     project.pname, COUNT(*) AS kount
    FROM       project
               INNER JOIN jiraissue ON project.ID = jiraissue.PROJECT
    GROUP BY project.pname
    ORDER BY kount DESC
"""

Connection conn = ConnectionFactory.getConnection(helperName);
Sql sql = new Sql(conn)

try {
    StringBuffer sb = new StringBuffer()
    sql.eachRow(sqlStmt) {
        sb << "${it.pname}\t${it.kount}\n"
    }
    log.debug sb.toString()
}
finally {
    sql.close()
}

对于任何变得有点复杂的东西,在 groovy 文件中实现脚本并通过文件系统使其可供 Script Runner 使用会更容易。这也允许您使用像 git 这样的 vcs 来轻松地 push/pull 您的更改。关于如何去做的更多信息,是 here