Hi everybody,
our OpenOLAT 9.3.5 install started to throw an exception when I try to access the storage folder of a specific course via the course editor GUI. Unlike other crash info I encountered so far, this one does not provide further helpful info, just the call stack and “null” as the message. I checked that the “coursefolder” folder is present in the bcroot/course/resource-ID directory, and that it has the same permissions as storage folders from other courses which are working as expected.
Weirdly enough, I can see the folders’ contents through the GUI when I try to change e.g. the HTML page of a course element: select element in course tree > “page content” > “replace page” > “choose file from storage folder” lists all items from the course folder. No other courses are affected.
Might be related: I recently had to restore the editortreemodel.xml of this course from a backup because the disk was full at the moment the course was saved.
Any help is greatly appreciated!
Action:
Open course, switch to course editor, click “storage folder” under “editor tools”.
Expected behavior:
Show the storage folder’s content.
Actual behavior:
Fatal error (error numbers randomly change from N1-E4 to E20), user has to log in again. Exception text below.
Throwable: org.olat.core.logging.OLATRuntimeException
logmsg:exception while rendering component 'foldercomp' (org.olat.core.commons.modules.bc.components.FolderComponent) listener:[org.olat.core.commons.modules.bc.FolderRunController [cListener:org.olat.core.commons.fullWebApp.LayoutMain3ColsController, ]]
Message of exception: null
message:exception while rendering component 'foldercomp' (org.olat.core.commons.modules.bc.components.FolderComponent) listener:[org.olat.core.commons.modules.bc.FolderRunController [cListener:org.olat.core.commons.fullWebApp.LayoutMain3ColsController, ]]
Message of exception: null,org.olat.core.logging.OLATRuntimeException
at org.olat.core.gui.components.Window.handleDirties(Window.java:963)
at org.olat.core.gui.components.Window.dispatchRequest(Window.java:439)
at org.olat.core.gui.components.Window.doDispatchRequest(Window.java:228)
at org.olat.core.gui.components.Component.dispatchRequest(Component.java:192)
at org.olat.dispatcher.AuthenticatedDispatcher.processValidDispatchURI(AuthenticatedDispatcher.java:241)
at org.olat.dispatcher.AuthenticatedDispatcher.execute(AuthenticatedDispatcher.java:197)
at org.olat.core.servlets.OpenOLATServlet.executeUserRequest(OpenOLATServlet.java:261)
at org.olat.core.servlets.OpenOLATServlet.doGet(OpenOLATServlet.java:197)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at org.olat.core.servlets.OpenOLATServlet.service(OpenOLATServlet.java:153)
1. cause:
message:null,java.lang.NullPointerException
at org.olat.core.commons.modules.bc.components.ListRenderer.appendRenderedFile(ListRenderer.java:233)
at org.olat.core.commons.modules.bc.components.ListRenderer.render(ListRenderer.java:210)
at org.olat.core.commons.modules.bc.components.FolderComponentRenderer.renderList(FolderComponentRenderer.java:211)
at org.olat.core.commons.modules.bc.components.FolderComponentRenderer.render(FolderComponentRenderer.java:89)
at org.olat.core.gui.render.Renderer.render(Renderer.java:257)
at org.olat.core.gui.render.Renderer.render(Renderer.java:189)
at org.olat.core.gui.render.velocity.VelocityRenderDecorator.doRender(VelocityRenderDecorator.java:601)
at org.olat.core.gui.render.velocity.VelocityRenderDecorator.render(VelocityRenderDecorator.java:290)
at sun.reflect.GeneratedMethodAccessor208.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)