Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- I get following error:
- message "Cannot cast object 'com.atlassian.plugin.servlet.PluginHttpRequestWrapper@631bb09c' with class 'com.sun.proxy.$Proxy2885' to class 'groovy.lang.Closure'"
- stack-trace "org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'com.atlassian.plugin.servlet.PluginHttpRequestWrapper@631bb09c' with class 'com.sun.proxy.$Proxy2885' to class 'groovy.lang.Closure'\n\tat com.onresolve.scriptrunner.runner.rest.common.CustomEndpointDelegate.methodMissing(CustomEndpointDelegate.groovy:20)\n\tat Script559$_run_closure1.doCall(Script559.groovy:30)\n\tat com.onresolve.scriptrunner.runner.rest.common.UserCustomScriptEndpoint.doEndpoint(UserCustomScriptEndpoint.groovy:308)\n\tat com.onresolve.scriptrunner.runner.rest.common.UserCustomScriptEndpoint.getUserEndpoint(UserCustomScriptEndpoint.groovy:193)\n"
- status-code "INTERNAL_SERVER_ERROR"
- With this script:
- import com.atlassian.jira.component.ComponentAccessor
- import com.atlassian.jira.issue.search.SearchProvider
- import com.atlassian.jira.jql.parser.JqlQueryParser
- import com.atlassian.jira.web.bean.PagerFilter
- import com.atlassian.jira.user.util.DefaultUserManager
- import com.atlassian.crowd.embedded.api.User
- import com.atlassian.jira.component.ComponentAccessor
- import com.atlassian.jira.issue.Issue
- import com.atlassian.jira.ComponentManager
- import java.text.SimpleDateFormat
- import java.util.Date
- import com.atlassian.jira.component.ComponentAccessor
- import com.atlassian.sal.api.user.UserManager
- import com.onresolve.scriptrunner.runner.rest.common.CustomEndpointDelegate
- import groovy.json.JsonBuilder
- import groovy.transform.BaseScript
- import javax.servlet.http.HttpServletRequest
- import javax.ws.rs.core.Response
- import javax.ws.rs.core.MultivaluedMap
- @BaseScript CustomEndpointDelegate delegate
- retrieveReleaseNotes(
- httpMethod: "GET", groups: ["jira-administrators"]
- ) { MultivaluedMap queryParams, String body, HttpServletRequest request ->
- def extraPath2 = getAdditionalPath(request)
- def extraPath = "test"
- def jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser)
- def searchProvider = ComponentAccessor.getComponent(SearchProvider)
- def issueManager = ComponentAccessor.getIssueManager()
- def userManager = ComponentAccessor.getUserManager();
- // Adjust HERE the buildnumber to a certain version, where you want to retrieve all closed devs
- def buildNumber = 49
- def user = ComponentAccessor.getJiraAuthenticationContext().loggedInUser
- def query = jqlQueryParser.parseQuery('project = DIV AND issuetype = Development AND status = Closed AND fixVersion = 2.8 AND "Build Number" ~ ' + buildNumber.toString())
- def results = searchProvider.search(query, user, PagerFilter.getUnlimitedFilter())
- def closedDevs = "";
- def closedDevList = [];
- def featureList = [];
- def bugList = [];
- results.getIssues().each {issue ->
- Issue parentIssue = issue.parentObject;
- def issueName = parentIssue.getIssueType().name.toUpperCase();
- def issueSummary = issue.getSummary();
- if (issueSummary.substring(0, 8) == "[DEV] - ")
- issueSummary = issueSummary.substring(8, issueSummary.length());
- closedDevs += "* {{$issueName}} " + issueSummary + " {{JIRA|$issue.key}}<br>";
- def text = "* {{$issueName}} " + issueSummary + " {{JIRA|$issue.key}}";
- if (issueName == "FEATURE")
- featureList << text;
- else
- bugList << text;
- }
- def metadata = "=== Version 2.8.0 - Build $buildNumber ===<br>";
- metadata += "<br>";
- metadata += "Release: " + new Date().format('YYYY-MM-dd') + "<br><br>";
- featureList.each {
- metadata += "${it}<br>";
- }
- bugList.each {
- metadata += "${it}<br>";
- }
- return Response.ok(new JsonBuilder([releaseNotes: metadata, extra: extraPath]).toString()).build();
- }
- The error seems to be because of
- def extraPath2 = getAdditionalPath(request)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement