This issue has been created
There is 1 update.
 
 
Holiday Request / cid:jira-generated-image-avatar-dcd4f156-57ff-40a3-9563-8f5b0d9660c6 HOLIDAYREQ-43 Open

Cannot invoke "String.toUpperCase()" because "style" is null

 
View issue   ·   Add comment
 

Issue created

 
cid:jira-generated-image-avatar-9f390174-8729-429a-83c8-ebee430125d4 Paul Militzke created this issue on 25/Dec/24 12:39
 
Summary: Cannot invoke "String.toUpperCase()" because "style" is null
Issue Type: cid:jira-generated-image-avatar-dcd4f156-57ff-40a3-9563-8f5b0d9660c6 Bug
Affects Versions: 1.3.2
Assignee: Unassigned
Attachments: full_error.txt
Created: 25/Dec/24 12:39
Environment: docker container on synology
Labels: data format problem,
Priority: cid:jira-generated-image-static-major-14163c26-2859-4be9-8e30-0a82d10a84a9 Major
Reporter: Paul Militzke
Original Estimate: 30 minutes
Remaining Estimate: 30 minutes
Difficulty: Trivial
Duration (Work Hours): 6
keywords: null exception
Description:

Happy christmas everybody.

I just did a fresh install of xwiki a few days ago and found the holiday request extension which I was excited to try out, but sadly I cant get arround the error:

Cannot invoke "String.toUpperCase()" because "style" is null.

I thought it has something to do with my date format under localization, which is: dd/MM/yyyy, but it didnt matter if I changed it or the code written in the extension. I wanted to try to disable the protection to see if thats the issue, but wasn't able to do that either.

Maby someone here has idea how I could tackle this. THANKS!

Paul

The Velocity code on the page that gives the error when I try to open a new holiday request is:

​{{include document="AppWithinMinutes.DynamicMessageTool" context="new" /}} {{velocity}} $xwiki.ssx.use("HolidayRequest.SkinExtension") ## Load the User Picker style for the Employee and Manager columns #set($discard = $xwiki.ssfx.use('uicomponents/widgets/userpicker/userPicker.css')) #if ($request.createHR == 'true') #set($count = $doc.getValue('count')) #set($defaultDateStyle = 'medium') #set($title="Request_$datetool.format('yyyy-M-d H:m:s',$datetool.getDate())") #set($newHRReference = $services.model.createDocumentReference('', 'HolidayRequest', $title)) $response.sendRedirect($xwiki.getURL($newHRReference, 'edit', "$!{request.queryString}&title='New Holiday Request'")) #end #if($isGuest) $msg.get('contrib.hr.guest') #else {{html wiki="true"}} <form action="" id="newHR"> <div> <input type="hidden" name="parent" value="HolidayRequest.WebHome" /> <input type="hidden" name="template" value="HolidayRequest.HolidayRequestTemplate" /> <input type="hidden" name="createHR" value="true" /> <span class="buttonwrapper"> <input class="button" type="submit" value="$msg.get('contrib.hr.new.submit')" /> </span> </div> </form> {{/html}} #end #set($originalMsg = $msg) #set($msg = $services.dynamicMessageToolFactory.createDynamicMessageTool($msg, { 'holidayrequest.livetable.employee': $msg.get('contrib.hr.WebHome.employee'), 'holidayrequest.livetable.startDate': $msg.get('contrib.hr.WebHome.startDate'), 'holidayrequest.livetable.endDate': $msg.get('contrib.hr.WebHome.endDate'), 'holidayrequest.livetable.manager': $msg.get('contrib.hr.WebHome.manager'), 'holidayrequest.livetable.numberDays' : $msg.get('contrib.hr.numberDays'), 'holidayrequest.livetable.office' : $msg.get('contrib.hr.office'), 'holidayrequest.livetable.comment' : $msg.get('contrib.hr.comment'), 'holidayrequest.livetable.status': $msg.get('contrib.hr.WebHome.status') })) #set($columnsProperties = { '_action': {'type': 'none', 'link' : 'view'}, 'employee': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true, 'link' : 'view'}, 'startDate': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'endDate': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'numberDays': {'type': 'number', 'size':10, 'filterable':true, 'sortable':true, 'html': true}, 'manager': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'status': {'type': 'list', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'office': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'comment': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, '_actions': {'sortable': false, 'filterable': false, 'html': true, 'actions': ['edit', 'delete']} }) #set($options = { 'className': 'HolidayRequest.HolidayRequestClass', 'resultPage' : 'AppWithinMinutes.LiveTableGenerator', 'translationPrefix': 'holidayrequest.livetable.', 'tagCloud': true, 'rowCount': 15, 'maxPages': 10, 'selectedColumn': 'startDate', 'defaultOrder': 'desc' }) #set($columns = ['_action', 'employee', 'startDate', 'endDate', 'numberDays', 'manager', 'office', 'comment', 'status', '_actions']) #livetable('holidayrequest' $columns $columnsProperties $options) #set($msg = $originalMsg) #if(!$isGuest) {{html wiki="true"}} <form action="Summary" id="overview" style="display:inline;"> <span class="buttonwrapper"> <input class="button" type="submit" value="$msg.get('contrib.hr.summary')" /> </span> </form> <form action="Calendar" id="overview" style="display:inline;"> <span class="buttonwrapper"> <input class="button" type="submit" value="$msg.get('contrib.hr.calendar')" /> </span> </form> {{/html}} #end {{/velocity}}

The full Error says: ​is attached

 
 
 

1 update

 
cid:jira-generated-image-avatar-9f390174-8729-429a-83c8-ebee430125d4 Changes by Paul Militzke on 25/Dec/24 12:40
 
Description: Happy christmas everybody.

I just did a fresh install of xwiki a few days ago and found the holiday request extension which I was excited to try out, but sadly I cant get arround the error:

Cannot invoke "String.toUpperCase()" because "style" is null.

I thought it has something to do with my date format under localization, which is: dd/MM/yyyy, but it didnt matter if I changed it or the code written in the extension. I wanted to try to disable the protection to see if thats the issue, but wasn't able to do that either.

Maby someone here has idea how I could tackle this. THANKS!

Paul

The Velocity code on the page that gives the error when I try to open a new holiday request is:
{code:java}
​{{include document="AppWithinMinutes.DynamicMessageTool" context="new" /}} {{velocity}} $xwiki.ssx.use("HolidayRequest.SkinExtension") ## Load the User Picker style for the Employee and Manager columns #set($discard = $xwiki.ssfx.use('uicomponents/widgets/userpicker/userPicker.css')) #if ($request.createHR == 'true') #set($count = $doc.getValue('count')) #set($defaultDateStyle = 'medium') #set($title="Request_$datetool.format('yyyy-M-d H:m:s',$datetool.getDate())") #set($newHRReference = $services.model.createDocumentReference('', 'HolidayRequest', $title)) $response.sendRedirect($xwiki.getURL($newHRReference, 'edit', "$!{request.queryString}&title='New Holiday Request'")) #end #if($isGuest) $msg.get('contrib.hr.guest') #else {{html wiki="true"}} <form action="" id="newHR"> <div> <input type="hidden" name="parent" value="HolidayRequest.WebHome" /> <input type="hidden" name="template" value="HolidayRequest.HolidayRequestTemplate" /> <input type="hidden" name="createHR" value="true" /> <span class="buttonwrapper"> <input class="button" type="submit" value="$msg.get('contrib.hr.new.submit')" /> </span> </div> </form> {{/html}} #end #set($originalMsg = $msg) #set($msg = $services.dynamicMessageToolFactory.createDynamicMessageTool($msg, { 'holidayrequest.livetable.employee': $msg.get('contrib.hr.WebHome.employee'), 'holidayrequest.livetable.startDate': $msg.get('contrib.hr.WebHome.startDate'), 'holidayrequest.livetable.endDate': $msg.get('contrib.hr.WebHome.endDate'), 'holidayrequest.livetable.manager': $msg.get('contrib.hr.WebHome.manager'), 'holidayrequest.livetable.numberDays' : $msg.get('contrib.hr.numberDays'), 'holidayrequest.livetable.office' : $msg.get('contrib.hr.office'), 'holidayrequest.livetable.comment' : $msg.get('contrib.hr.comment'), 'holidayrequest.livetable.status': $msg.get('contrib.hr.WebHome.status') })) #set($columnsProperties = { '_action': {'type': 'none', 'link' : 'view'}, 'employee': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true, 'link' : 'view'}, 'startDate': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'endDate': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'numberDays': {'type': 'number', 'size':10, 'filterable':true, 'sortable':true, 'html': true}, 'manager': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'status': {'type': 'list', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'office': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, 'comment': {'type': 'text', 'size': 10, 'filterable': true, 'sortable': true, 'html': true}, '_actions': {'sortable': false, 'filterable': false, 'html': true, 'actions': ['edit', 'delete']} }) #set($options = { 'className': 'HolidayRequest.HolidayRequestClass', 'resultPage' : 'AppWithinMinutes.LiveTableGenerator', 'translationPrefix': 'holidayrequest.livetable.', 'tagCloud': true, 'rowCount': 15, 'maxPages': 10, 'selectedColumn': 'startDate', 'defaultOrder': 'desc' }) #set($columns = ['_action', 'employee', 'startDate', 'endDate', 'numberDays', 'manager', 'office', 'comment', 'status', '_actions']) #livetable('holidayrequest' $columns $columnsProperties $options) #set($msg = $originalMsg) #if(!$isGuest) {{html wiki="true"}} <form action="Summary" id="overview" style="display:inline;"> <span class="buttonwrapper"> <input class="button" type="submit" value="$msg.get('contrib.hr.summary')" /> </span> </form> <form action="Calendar" id="overview" style="display:inline;"> <span class="buttonwrapper"> <input class="button" type="submit" value="$msg.get('contrib.hr.calendar')" /> </span> </form> {{/html}} #end {{/velocity}}{code}


The full Error
says: ​is attached
{code:java}
 {code}