Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
Community Members
Community Events
Community Groups

Scriptrunner JIRA cloud - POST attachment - filename encoding issue


Hi everyone,

I am facing an issue with bad filename encoding while posting attachment to an issue.

The code I use:

def attachmentContentData = get("/rest/api/3/attachment/content/10078") // get attachment binary data

InputStream stream = new ByteArrayInputStream(attachmentContentData.getBytes()) // create binary stream

def attachmentMetadata = get("/rest/api/3/attachment/10078") // get attachment metadata

String fileName = attachmentMetadata["filename"] // define filename as String

def sendAttachment = post("/rest/api/3/issue/XXX-77/attachments") // send attachment
.header("Accept", "application/json")
.header("X-Atlassian-Token", "no-check")
.field("file", stream, fileName)

println sendAttachment


Body: [{"self":"","id":"10197","filename":"?RA-obr?zek.png","author":...

When the attachment's filename contains non ASCII characters, the characters are changed into the question marks, eg. "?esk?_Republika.png" vs. "Česká_Republika.png".

The problem probably arises when json is created.

When I

println fileName

it correctly returns "Česká_Republika.png".

I tried as much options to fix the issue as I could, including various ways of string transcoding.

Thank you in advance for your help.

0 answers

Suggest an answer

Log in or Sign up to answer

Atlassian Community Events