Exception is thrown when uploading large image file through the CMS

814 views
Skip to first unread message

Gangel Dávid

unread,
Jan 9, 2016, 11:19:41 AM1/9/16
to Hippo Community
Hi,

I've changed the configuration as described here:

TO:

max.file.size=20M
max.width = 7680
max.height = 4320

web.xml:

<init-param>
  <param-name>upload-limit</param-name>
  <param-value>20480k</param-value>
</init-param>

Latest hippo release.

Reproduction steps:
0. Rebuild the app after the config change.
1. Login to the CMS
2. Select Content from the left.
3. Select Images from the dropdown.
4. Create a folder.
5. Try to upload the following file:

Result:
[INFO] [talledLocalContainer] 17:13:42 INFO  Exporting content/gallery/corporatewebsite/banners.xml to module bootstrap/content
[INFO] [talledLocalContainer] 09.01.2016 17:14:40 WARN  http-nio-8080-exec-5 [PageAccessSynchronizer.lockPage:144] Thread 'http-nio-8080-exec-5' failed to acquire lock to page with id '1', attempted for 1 minute out of allowed 1 minute. The thread that holds the lock has name 'http-nio-8080-exec-9'.
[INFO] [talledLocalContainer] 09.01.2016 17:14:40 WARN  http-nio-8080-exec-5 [Threads.dumpSingleThread:114] "http-nio-8080-exec-9" daemon prio=5 tid=81 state=RUNNABLE 
[INFO] [talledLocalContainer] org.apache.wicket.util.lang.Threads$ThreadDump
[INFO] [talledLocalContainer] at com.sun.imageio.plugins.jpeg.JPEGImageReader.readImage(Native Method)
[INFO] [talledLocalContainer] at com.sun.imageio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:1236)
[INFO] [talledLocalContainer] at com.sun.imageio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:1039)
[INFO] [talledLocalContainer] at javax.imageio.ImageReader.read(ImageReader.java:939)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.ScaleImageOperation.getScaledImage(ScaleImageOperation.java:322)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.ScaleImageOperation.execute(ScaleImageOperation.java:280)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.AbstractImageOperation.execute(AbstractImageOperation.java:53)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.ScaleImageOperation.execute(ScaleImageOperation.java:134)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.processor.ScalingGalleryProcessor.initGalleryResource(ScalingGalleryProcessor.java:101)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.processor.AbstractGalleryProcessor.makeImage(AbstractGalleryProcessor.java:101)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.GalleryWorkflowPlugin.createGalleryItem(GalleryWorkflowPlugin.java:161)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.GalleryWorkflowPlugin.access$100(GalleryWorkflowPlugin.java:75)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.GalleryWorkflowPlugin$UploadDialog.onFileUpload(GalleryWorkflowPlugin.java:97)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.JQueryFileUploadDialog.handleFileUpload(JQueryFileUploadDialog.java:109)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.JQueryFileUploadDialog.access$100(JQueryFileUploadDialog.java:46)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.JQueryFileUploadDialog$2.onFileUpload(JQueryFileUploadDialog.java:90)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.AbstractFileUploadWidget.process(AbstractFileUploadWidget.java:78)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.FileUploadWidget.access$100(FileUploadWidget.java:43)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.FileUploadWidget$1.process(FileUploadWidget.java:82)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.behaviors.AjaxFileUploadBehavior.onRequest(AjaxFileUploadBehavior.java:89)
[INFO] [talledLocalContainer] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO] [talledLocalContainer] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[INFO] [talledLocalContainer] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[INFO] [talledLocalContainer] at java.lang.reflect.Method.invoke(Method.java:497)
[INFO] [talledLocalContainer] at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
[INFO] [talledLocalContainer] at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:250)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:236)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
[INFO] [talledLocalContainer] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.login.ConcurrentLoginFilter.doFilter(ConcurrentLoginFilter.java:54)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
[INFO] [talledLocalContainer] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
[INFO] [talledLocalContainer] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
[INFO] [talledLocalContainer] at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
[INFO] [talledLocalContainer] at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
[INFO] [talledLocalContainer] at java.lang.Thread.run(Thread.java:745)
[INFO] [talledLocalContainer] 09.01.2016 17:14:40 ERROR http-nio-8080-exec-5 [DefaultExceptionMapper.mapUnexpectedExceptions:170] Unexpected error occurred
[INFO] [talledLocalContainer] org.apache.wicket.page.CouldNotLockPageException: Could not lock page 1. Attempt lasted 1 minute
[INFO] [talledLocalContainer] at org.apache.wicket.page.PageAccessSynchronizer.lockPage(PageAccessSynchronizer.java:167)
[INFO] [talledLocalContainer] at org.apache.wicket.page.PageAccessSynchronizer$2.getPage(PageAccessSynchronizer.java:245)
[INFO] [talledLocalContainer] at org.apache.wicket.DefaultMapperContext.getPageInstance(DefaultMapperContext.java:148)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.PageProvider.getStoredPage(PageProvider.java:296)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:261)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.getPage(ListenerInterfaceRequestHandler.java:96)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:157)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
[INFO] [talledLocalContainer] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.login.ConcurrentLoginFilter.doFilter(ConcurrentLoginFilter.java:54)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
[INFO] [talledLocalContainer] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
[INFO] [talledLocalContainer] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
[INFO] [talledLocalContainer] at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
[INFO] [talledLocalContainer] at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
[INFO] [talledLocalContainer] at java.lang.Thread.run(Thread.java:745)
[INFO] [talledLocalContainer] 09.01.2016 17:14:46 WARN  http-nio-8080-exec-2 [PageAccessSynchronizer.lockPage:144] Thread 'http-nio-8080-exec-2' failed to acquire lock to page with id '1', attempted for 1 minute out of allowed 1 minute. The thread that holds the lock has name 'http-nio-8080-exec-9'.
[INFO] [talledLocalContainer] 09.01.2016 17:14:46 WARN  http-nio-8080-exec-2 [Threads.dumpSingleThread:114] "http-nio-8080-exec-9" daemon prio=5 tid=81 state=RUNNABLE 
[INFO] [talledLocalContainer] org.apache.wicket.util.lang.Threads$ThreadDump
[INFO] [talledLocalContainer] at com.sun.imageio.plugins.jpeg.JPEGImageReader.readImage(Native Method)
[INFO] [talledLocalContainer] at com.sun.imageio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:1236)
[INFO] [talledLocalContainer] at com.sun.imageio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:1039)
[INFO] [talledLocalContainer] at javax.imageio.ImageReader.read(ImageReader.java:939)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.ScaleImageOperation.getScaledImage(ScaleImageOperation.java:322)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.ScaleImageOperation.execute(ScaleImageOperation.java:280)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.AbstractImageOperation.execute(AbstractImageOperation.java:53)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.imageutil.ScaleImageOperation.execute(ScaleImageOperation.java:134)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.processor.ScalingGalleryProcessor.initGalleryResource(ScalingGalleryProcessor.java:101)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.processor.AbstractGalleryProcessor.makeImage(AbstractGalleryProcessor.java:101)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.GalleryWorkflowPlugin.createGalleryItem(GalleryWorkflowPlugin.java:161)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.GalleryWorkflowPlugin.access$100(GalleryWorkflowPlugin.java:75)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.gallery.GalleryWorkflowPlugin$UploadDialog.onFileUpload(GalleryWorkflowPlugin.java:97)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.JQueryFileUploadDialog.handleFileUpload(JQueryFileUploadDialog.java:109)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.JQueryFileUploadDialog.access$100(JQueryFileUploadDialog.java:46)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.JQueryFileUploadDialog$2.onFileUpload(JQueryFileUploadDialog.java:90)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.AbstractFileUploadWidget.process(AbstractFileUploadWidget.java:78)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.FileUploadWidget.access$100(FileUploadWidget.java:43)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.multiple.FileUploadWidget$1.process(FileUploadWidget.java:82)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.jquery.upload.behaviors.AjaxFileUploadBehavior.onRequest(AjaxFileUploadBehavior.java:89)
[INFO] [talledLocalContainer] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO] [talledLocalContainer] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[INFO] [talledLocalContainer] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[INFO] [talledLocalContainer] at java.lang.reflect.Method.invoke(Method.java:497)
[INFO] [talledLocalContainer] at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
[INFO] [talledLocalContainer] at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:250)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:236)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
[INFO] [talledLocalContainer] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.login.ConcurrentLoginFilter.doFilter(ConcurrentLoginFilter.java:54)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
[INFO] [talledLocalContainer] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
[INFO] [talledLocalContainer] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
[INFO] [talledLocalContainer] at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
[INFO] [talledLocalContainer] at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
[INFO] [talledLocalContainer] at java.lang.Thread.run(Thread.java:745)
[INFO] [talledLocalContainer] 09.01.2016 17:14:46 ERROR http-nio-8080-exec-2 [DefaultExceptionMapper.mapUnexpectedExceptions:170] Unexpected error occurred
[INFO] [talledLocalContainer] org.apache.wicket.page.CouldNotLockPageException: Could not lock page 1. Attempt lasted 1 minute
[INFO] [talledLocalContainer] at org.apache.wicket.page.PageAccessSynchronizer.lockPage(PageAccessSynchronizer.java:167)
[INFO] [talledLocalContainer] at org.apache.wicket.page.PageAccessSynchronizer$2.getPage(PageAccessSynchronizer.java:245)
[INFO] [talledLocalContainer] at org.apache.wicket.DefaultMapperContext.getPageInstance(DefaultMapperContext.java:148)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.PageProvider.getStoredPage(PageProvider.java:296)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.PageProvider.resolvePageInstance(PageProvider.java:261)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.PageProvider.getPageInstance(PageProvider.java:166)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.getPage(ListenerInterfaceRequestHandler.java:96)
[INFO] [talledLocalContainer] at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:157)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
[INFO] [talledLocalContainer] at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
[INFO] [talledLocalContainer] at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
[INFO] [talledLocalContainer] at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.hippoecm.frontend.plugins.login.ConcurrentLoginFilter.doFilter(ConcurrentLoginFilter.java:54)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
[INFO] [talledLocalContainer] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
[INFO] [talledLocalContainer] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
[INFO] [talledLocalContainer] at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
[INFO] [talledLocalContainer] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
[INFO] [talledLocalContainer] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
[INFO] [talledLocalContainer] at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
[INFO] [talledLocalContainer] at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[INFO] [talledLocalContainer] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[INFO] [talledLocalContainer] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
[INFO] [talledLocalContainer] at java.lang.Thread.run(Thread.java:745)
[INFO] [talledLocalContainer] 17:15:31 INFO  Exporting content/gallery/corporatewebsite/banners.xml to module bootstrap/content

Jeroen Reijn

unread,
Jan 11, 2016, 3:57:03 AM1/11/16
to hippo-c...@googlegroups.com
Hi David,

the message you get comes from Apache Wicket, the framework the CMS is built in. It states that the total request time takes more than 1 minute for the upload / post request. That's probably because the image is 10 MB and the CMS needs to create X number of variants for that image. This can depends on many factors, like Memory, CPU, etc.

Jeroen 

--
Hippo Community Group: The place for all discussions and announcements about Hippo CMS (and HST, repository etc. etc.)
 
To post to this group, send email to hippo-c...@googlegroups.com
RSS: https://groups.google.com/group/hippo-community/feed/rss_v2_0_msgs.xml?num=50
---
You received this message because you are subscribed to the Google Groups "Hippo Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hippo-communi...@googlegroups.com.
Visit this group at https://groups.google.com/group/hippo-community.
For more options, visit https://groups.google.com/d/optout.



--
Jeroen Reijn
Hippo

Hippo Amsterdam office - Oosteinde 11, 1017 WT Amsterdam
Hippo USA, Inc. - 71 Summer Street, 2nd Floor, Boston, MA 02110 

US +1 877 414 4776 (toll free)
Europe +31(0)20 522 4466
www.onehippo.com

Gangel Dávid

unread,
Jan 13, 2016, 9:12:07 AM1/13/16
to Hippo Community
Hi,

this wasn't the case with Hippo CMS 10.0.2, using the same image and Virtual Machines.
...

Kunz, Jan

unread,
Jan 15, 2016, 3:48:27 AM1/15/16
to hippo-c...@googlegroups.com

Hello

 

It’s my understanding that enterprise forms were developed to have forms on the website and if someone fills them out an email is triggered.

 

We have a half-hearty solution in place that was developed a while ago by a software company for us. This saves the information as a document in Hippo but does not trigger an email.

This is OK if you only have a small amount of data to save or look at.

 

But now people use this for contests and we’re talking about 5-7000 people who actually enter these contests. That leaves us with a lot of data in Hippo that we actually don’t really need there. At least not for long.

There is a rudimentary export feature to create CSV files, which works more or less. Depending on what people enter - the export files have correct columns in Excel but sometimes not. Then the data is a bit scrambled and people have to straighten the files out.

 

Of course we could send the form data by email but nobody wants to open 6000 Emails. So we need a solution to store this information in a simple way. Normally we don’t need to keep the data after a couple of weeks. Once the contest period is over and we have exported everything in Excel this information goes into our Email marketing tool and that’s it. So no need to keep it in Hippo longer than necessary.

 

But deleting the data in Hippo means to go to the console and delete the nodes which takes quite some time.

 

So I would be interested to hear if anyone out there has a good idea how that sort of information could be stored in an easy way (and deleted).

 

Normally that sort of thing would be perfect in a small mysql database. But that’s not an option in our case.

 

Jan

Wim Lustenhouwer

unread,
Jan 15, 2016, 4:30:04 AM1/15/16
to hippo-c...@googlegroups.com
Hi Jan,

Aside from rebuilding the entire thing the Enterprise way, you may want to look at the following two pages:


Using a custom workflow will enable you to trigger the email when saving a document.


Updater scripts can be used to do bulk deletes, so you don’t have to go to the console and delete stuff node for node. This is incredibly useful for all kinds of bulk changes, deleting, updating publishing or republishing you name it.

Depending on you availability though, starting over from scratch could be a better solution in the long run. Saving the results as hippoducments defeats the purpose of the formdata node. So which option you go for is dependent on your time and budget.

Good luck
Wim

marijan milicevic

unread,
Jan 15, 2016, 4:34:30 AM1/15/16
to hippo-c...@googlegroups.com
Hi Jan,

for deletion you could use form data cleanup module, see [1]. 

I am confused with: " the export files have correct columns in Excel but sometimes not" ,
is this something triggered by implementation on your of our part? In case of the later, please file an issue so we can look at it. 
cheers
marijan


 

 

Normally that sort of thing would be perfect in a small mysql database. But that’s not an option in our case.

 

Jan

--

Kunz, Jan

unread,
Jan 15, 2016, 8:57:47 AM1/15/16
to hippo-c...@googlegroups.com

Thank you Marijan and Wim for the quick responses to my questions. These approaches look promising. And since I am not the developer, but the “man-in-the-middle” I will ask our new development team to have a look. As I have said before our current solution is not very good, it might be really a good point now to start from scratch. Sometimes that approach is way cheaper in the long run. At least now I have some pointers and ideas of how to start this, which I am grateful for.

 

I was not aware of the workflow option. And I didn’t know about the updater scripts. We would have plenty of areas to use those.

 

>I am confused with: " the export files have correct columns in Excel but sometimes not" ,is this something triggered by implementation on your of our part? In case of the later, please file an issue so we can look at it. 

 

That’s not easy for me to answer, since I have never seen the code. But it must be something in the code, may be it has to do with the implementation and how  the Text Files are created. As we know, Excel needs correct column markers. And if that column delimiter is supposed to be a comma but someone puts in a comma in a text field, that might lead to problems in Excel. I suspect something like that to be the reason.

 

Thanks

 

Jan

Martijn van der Vorst

unread,
Jan 15, 2016, 9:13:52 AM1/15/16
to Hippo Community, jk...@weleda.ch
Is google groups messing up, or do we have 2 issues here? uploading large images and enterprise forms?
I opened https://groups.google.com/forum/#!topic/hippo-community/4ZvXVsNd-9c "Exception is thrown when uploading large image file through the CMS"

Wim Lustenhouwer

unread,
Jan 15, 2016, 9:16:39 AM1/15/16
to hippo-c...@googlegroups.com
Hi Martijn.

seems like a mess up of google groups, I’m using my mail client (max osx mail) and I’m only seeing the enterprise forms issue, chasing your link does get me a merged discussion of two issues (these issues are separate in my mail client)

Martijn van der Vorst

unread,
Jan 15, 2016, 9:20:14 AM1/15/16
to Hippo Community
Hi Wim,

Interestingly I cannot find your issue as a seperate topic within the google groups site. It seems google groups is having some 'interesting' issues with their mailing list.

Jeroen Reijn

unread,
Jan 15, 2016, 9:46:01 AM1/15/16
to hippo-c...@googlegroups.com
Hmm then that's interesting and requires further investigation. Can you create a JIRA issue for this?

Jeroen

Bartosz Oudekerk

unread,
Jan 15, 2016, 10:17:28 AM1/15/16
to Hippo Community

The first message with this subject, was in reply to the other thread,
so it's correct that it shows as a single thread.

You can check the "References", and "In-Reply-To" headers of the first
e-mail with subject "[hippo-community] Re: Enterprise forms / storing
data". They refer to the last e-mail with subject "[hippo-community]
Exception is thrown when uploading large image file through the CMS"

I'd say the clients showing them as two separate threads are the ones
messing up.

Kind regards,
Bartosz
--
Amsterdam - Oosteinde 11, 1017 WT Amsterdam
Boston - 745 Atlantic Ave, Third Floor, Boston MA 02111

US +1 877 414 4776 (toll free)
Europe +31(0)20 522 4466
http://www.onehippo.com/

Gangel Dávid

unread,
Jan 18, 2016, 5:18:49 AM1/18/16
to Hippo Community

Oscar Scholten

unread,
Jan 19, 2016, 4:03:30 AM1/19/16
to hippo-c...@googlegroups.com
Hi Jan,

On Fri, Jan 15, 2016 at 9:48 AM, Kunz, Jan <jk...@weleda.ch> wrote:

Hello

 

It’s my understanding that enterprise forms were developed to have forms on the website and if someone fills them out an email is triggered.


Enterprise Forms was designed with a lot of flexibility in mind. Yes, it is possible to have an email sent back when a form is submitted, but ...

The actions that are performed when a form is submitted is configurable for each different form. You can choose any combination of so-called "pluggable behaviors": sending emails, storing the form in Hippo, sending the form to a 3rd party service, etc. For more information, have a look at:


Cheers, Oscar
--
Amsterdam - Oosteinde 11, 1017 WT Amsterdam
Boston - 745 Atlantic Ave, 8th Floor, MA 02111

Europe +31(0)20 522 4466

Jasper Floor

unread,
Jan 19, 2016, 4:49:44 AM1/19/16
to Hippo Community
Hi,

I think eforms is the way to go, but you can also duplicate the functionality yourself. I think it would be better long term to use eforms as you don't have to maintain that yourself.

Also have a look at:
http://www.onehippo.org/library/concepts/component-development/hst-2-forms.html

The workflow mentioned is only on the cms side, not on the site. Not sure if that is the way to go.

Depending on what you want you can write your data direct to excel, to an intermediate db (any flavor you like), text file...You could save the data in the cms and implement an export feature from there. 

Looking at your requirements I would use eforms with a custom behavior to write the data to a csv or excel document and mail that to the right person. It could also be saved to the file system if you write to a generally accessible folder. You can do this without eforms if you want.

mvg,
Jasper

Brian Snijders

unread,
Mar 3, 2016, 10:23:01 AM3/3/16
to hippo-c...@googlegroups.com
Hi Jan,

A little late, but maybe it's still useful. I'm currently on an exact same scenario as you are. My approach is:
- Go for a standard Hippo Enterprise Forms setup (as suggested by Jasper et al.)
- Create a custom pluggable behaviour to pickup your form data on submission and either (1) inject it into a database (e.g. using Spring Framework or direct JDBC calls) or (2) deliver it using HTTP to a REST-ful endpoint storing/processing your data.

My chosen strategy is to offload formdata to a separate MongoDB database, using direct HTTP REST-calls on the MongoDB API layer.

HTH, have a nice day,
Brian

Brian Snijders
Consultant online

e:  brian.s...@incentro.com
t:  +31102020544
m:  +31645540083
w:  www.incentro.com

rotterdam office | van nelle ontwerpfabriek
van nelleweg 2429  |  3044 bc  |  rotterdam

incentro

incentro news

Ard Schrijvers

unread,
Mar 3, 2016, 10:30:18 AM3/3/16
to hippo-c...@googlegroups.com
Hey Brian,

On Thu, Mar 3, 2016 at 4:22 PM, Brian Snijders
<brian.s...@incentro.com> wrote:
>
> Hi Jan,
>
> A little late, but maybe it's still useful. I'm currently on an exact same scenario as you are. My approach is:
> - Go for a standard Hippo Enterprise Forms setup (as suggested by Jasper et al.)
> - Create a custom pluggable behaviour to pickup your form data on submission and either (1) inject it into a database (e.g. using Spring Framework or direct JDBC calls) or (2) deliver it using HTTP to a REST-ful endpoint storing/processing your data.
>
> My chosen strategy is to offload formdata to a separate MongoDB database, using direct HTTP REST-calls on the MongoDB API layer.

Excellent solution and a solution I really recommend in general (if
the formdata becomes too big). Would you be willing to write a
(small...or large :-) ) lab post about your solution and some code
snippets so we add it to http://www.onehippo.org/labs

Regards Ard
Hippo Netherlands, Oosteinde 11, 1017 WT Amsterdam, Netherlands
Hippo USA, Inc. 71 Summer Street, 2nd Floor Boston, MA 02110, United
states of America.

Brian Snijders

unread,
Mar 9, 2016, 9:26:23 AM3/9/16
to hippo-c...@googlegroups.com
Hi Ard,

Sure, not a problem. I'm still in early PoC stages, so far from production ready, but I'll add it to my todolist :)

Kind regards,
Brian

incentro

incentro news

Reply all
Reply to author
Forward
0 new messages