sharikaep Posted October 21, 2014 Share Posted October 21, 2014 Jasper is not able to export files when data size is huge. For my applications, i need to pull out year long data, and when i do that jasper displays the data but I am not able to export it in any way.[none of the format works when data size is huge]. I am able to export data when I query month long data.Is there a possible workaround for this issue?I am using jaspersoft 5.0.0 This is the error in catalina.out when I try to export data :stack trace of exception that redirected to errorPage.jspClientAbortException: java.net.SocketException: Broken pipe at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:373) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:356) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:396) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:385) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:93) at java.io.ByteArrayOutputStream.writeTo(ByteArrayOutputStream.java:154) at com.jaspersoft.jasperserver.api.metadata.common.domain.util.FileBufferedOutputStream.writeData(FileBufferedOutputStream.java:201) at com.jaspersoft.jasperserver.war.action.AbstractReportExporter.exportBuffered(AbstractReportExporter.java:151) at com.jaspersoft.jasperserver.war.action.AbstractReportExporter.export(AbstractReportExporter.java:91) at com.jaspersoft.jasperserver.war.action.ReportExporterAction.export(ReportExporterAction.java:124) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.springframework.webflow.action.DispatchMethodInvoker.invoke(DispatchMethodInvoker.java:98) at org.springframework.webflow.action.MultiAction.doExecute(MultiAction.java:123) at org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188) at org.springframework.webflow.execution.AnnotatedAction.execute(AnnotatedAction.java:145) at org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:51) at org.springframework.webflow.action.EvaluateAction.doExecute(EvaluateAction.java:77) at org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188) at org.springframework.webflow.execution.AnnotatedAction.execute(AnnotatedAction.java:145) at org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:51) at org.springframework.webflow.engine.ActionList.execute(ActionList.java:155) at org.springframework.webflow.engine.State.enter(State.java:193) at org.springframework.webflow.engine.Transition.execute(Transition.java:227) at org.springframework.webflow.engine.impl.FlowExecutionImpl.execute(FlowExecutionImpl.java:393) at org.springframework.webflow.engine.impl.RequestControlContextImpl.execute(RequestControlContextImpl.java:214) at org.springframework.webflow.engine.TransitionableState.handleEvent(TransitionableState.java:119) at org.springframework.webflow.engine.Flow.handleEvent(Flow.java:555) at org.springframework.webflow.engine.impl.FlowExecutionImpl.handleEvent(FlowExecutionImpl.java:388) at org.springframework.webflow.engine.impl.RequestControlContextImpl.handleEvent(RequestControlContextImpl.java:210) Link to comment Share on other sites More sharing options...
ernestoo Posted October 21, 2014 Share Posted October 21, 2014 Are you using a virtualizer to avoid OOM errors? Link to comment Share on other sites More sharing options...
djohnson53 Posted October 21, 2014 Share Posted October 21, 2014 If you can export a month, but not a year, can you export 6 months? A possible workaround is to export whatever size chunks you can. Twelve month-chunks seems to be worse case. Link to comment Share on other sites More sharing options...
sharikaep Posted October 24, 2014 Author Share Posted October 24, 2014 From my experience, weather I can export a year long data or 6 months really depends on the data size i'm exporting. Some of the reports with lighter loads can be exported even for two years. Moreover, my logic gets screwed up at that point[if I have to export data in chunks]. My client needs data throughout the year since they also need to see the total age on network for the customers[and other relevant calculations based on the data] ps: this is what my catalina.out throws when I try to export heavy load: ClientAbortException: java.net.SocketException: Broken pipe at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:373) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:356) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:396) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:385) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:93) at java.io.ByteArrayOutputStream.writeTo(ByteArrayOutputStream.java:154) at com.jaspersoft.jasperserver.api.metadata.common.domain.util.FileBufferedOutputStream.writeData(FileBufferedOutputStream.java:201) at com.jaspersoft.jasperserver.war.action.AbstractReportExporter.exportBuffered(AbstractReportExporter.java:151) at com.jaspersoft.jasperserver.war.action.AbstractReportExporter.export(AbstractReportExporter.java:91) at com.jaspersoft.jasperserver.war.action.ReportExporterAction.export(ReportExporterAction.java:124) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.springframework.webflow.action.DispatchMethodInvoker.invoke(DispatchMethodInvoker.java:98) at org.springframework.webflow.action.MultiAction.doExecute(MultiAction.java:123) at org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188) at org.springframework.webflow.execution.AnnotatedAction.execute(AnnotatedAction.java:145) at org.springframework.webflow.execution.ActionExecutor.execute(ActionExecutor.java:51) at org.springframework.webflow.action.EvaluateAction.doExecute(EvaluateAction.java:77) at org.springframework.webflow.action.AbstractAction.execute(AbstractAction.java:188) Link to comment Share on other sites More sharing options...
sharikaep Posted October 24, 2014 Author Share Posted October 24, 2014 Hey!I have the default config for virtualizer in applicationcontext.xml <!-- report virtualizers --> <bean id="fileVirtualizerFactory" class="com.jaspersoft.jasperserver.api.engine.common.service.impl.FileVirtualizerFactory"> <property name="maxSize" value="300"></property> <property name="directory" value="${java.io.tmpdir}"></property> </bean> Is there anything I can do here? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now