
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-02-2017 03:36 PM
Hi Community,
I need to convert an attachment in a Bytes array to pass it as parameter of a REST API, I using the following code, but it looks is not working if you can give me some help. Please be aware I cannot encode using base64 due the endpoint only accept binary for REST.
var gr = new GlideRecord('sys_attachment');
gr.addQuery('table_sys_id', current.sys_id);
gr.addQuery('table_name', current.getTableName());
gr.query();
var StringUtil = new GlideStringUtil();
var sa = new GlideSysAttachment();
var binData = sa.getBytes(gr);
var stringData = String(binData);
gs.log("String Data "+stringData);
Result
String Data: [B@d6897a
Thanks for the help you can provide.
Regards,
Solved! Go to Solution.
- Labels:
-
Integrations
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-02-2017 04:23 PM
I have used this before:
var gsa = new GlideSysAttachment();
var bytes = gsa.getBytes('sys_attachment', 'sys_id_of_attachment'); // can also use a GlideRecord
var str = Packages.java.lang.String(bytes); // Java/Rhino conversion
str = String(str); // JavaScript conversion
gs.log('Bytes as string: ' + str);

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-02-2017 04:23 PM
I have used this before:
var gsa = new GlideSysAttachment();
var bytes = gsa.getBytes('sys_attachment', 'sys_id_of_attachment'); // can also use a GlideRecord
var str = Packages.java.lang.String(bytes); // Java/Rhino conversion
str = String(str); // JavaScript conversion
gs.log('Bytes as string: ' + str);

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2019 12:04 PM
Hi Geoffrey--I'm getting an error with that script. Have you run into this before?
Javascript compiler exception: The choice of Java constructor java.lang.String matching JavaScript argument types (null) is ambiguous; candidate constructors are: String(java.lang.StringBuilder) String(java.lang.StringBuffer) String(byte[]) String(char[]) String(java.lang.String) (null.null.script; line 3) in: var gsa = new GlideSysAttachment(); var bytes = gsa.getBytes('sys_attachment', 'f6cf2f914f3b63004ce80ad14210c763'); // can also use a GlideRecord var str = Packages.java.lang.String(bytes); // Java/Rhino conversion str = String(str); // JavaScript conversion gs.log('Bytes as string: ' + str);