Jira 自定义脚本验证器:检查输入文本框是否存在
Jira custom script validator: check if input textbox exists
我是 Jira 的新手。事实上,我什至不知道从哪里开始。我去了 jira atlassian 网站,但没有得到足够可靠的帮助。我想验证输入到文本框中的信息是否已经存在。我在 jira 周围单击并最终出现在下面的屏幕上:
现在我想了解一下:
- Which programming language should be used for validation ? Is it Java
- 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。
我是 Jira 的新手。事实上,我什至不知道从哪里开始。我去了 jira atlassian 网站,但没有得到足够可靠的帮助。我想验证输入到文本框中的信息是否已经存在。我在 jira 周围单击并最终出现在下面的屏幕上:
现在我想了解一下:
- Which programming language should be used for validation ? Is it Java
- 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。