illegal access to getter method getmessage
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-05-2020 09:59 AM
This script is on a workflow approval activity, the workflow properties is on the task [task] table, the new fields are on the sysapproval_approver table. when I run the workflow the approval is not created and the error "illegal access to getter method getmessage in class org.mozilla.javascript.rhino exception" comes up. Any help is appreciated.
// Set the variable 'answer' to a comma-separated list of user ids and/or group ids or an array of user/group ids to add as approvers.
//
// For example:
// answer = [];
// answer.push('id1');
// answer.push('id2');
sysapproval.u_release_short_description = 'HRD_PPSD_PSB_Branch_Chief';
sysapproval.u_approval_release_date = current.sysapproval.work_end;
var gdt = new GlideDateTime(sysapproval.u_approval_release_date);
gdt.addDays(-2); //change this to change the number of days
sysapproval.u_approval_end_date = gdt;
- Labels:
-
User Interface (UI)

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-05-2020 10:25 AM
Is that your full script?
Let me make sure I am following. You're using a workflow activity on a task, which table is it? Is it sc_req_item, or just task? So current will be whichever table you're running the workflow from, unless it's sysapproval_approver you don't have access to that table yet. You'll need to GlideRecord to it in order to set values and update the record in your script.
Also I see you're using sysapproval which isn't the full table name.
When using GlideRecord, use Getters and Setters instead of '=' to avoid Pass By Reference, so something like:
var apprGr = new GlideRecord ('sysapproval_approver');
apprGr.addQuery('whatever you need to get here');
apprGr.query();
if (apprGr.next()) {
apprGr.setValue('u_release_short_description', 'Your short description');
apprGr.update();
}