使用spring在jasper html报告中显示图像

时间:2012-06-01 07:57:16

标签: spring jasper-reports

我正在开发 Spring JasperReports 。我的 Spring 版本是 3.0.5 RELEASE iReport-4.5.0

我使用http://chathurangat.blogspot.in/2012/02/jasperreport-with-spring-mvc-fully.html链接作为示例来生成报告。为此,每件事都很好。但是当我将报告导出为html时,我无法获取图像。为此,我在 web.xml IMAGES_URI IMAGES_DIR_NAME IS_OUTPUT_IMAGES_TO_DIR IS_USING_IMAGES_TO_ALIGN中配置了imageservlet jasper-views.xml 文件中的参数。

以下是我在 jasper-views.xml web.xml 中的代码配置。

如果我运行报告,请使用此配置,我将获得500 Error as no jasperprint document found on the httpsession

如果我配置 DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE 属性,那么我就会得到图像。但我没有得到如何在 jasper-views.xml 文件中配置它。此属性需要 JasperPrint 对象,但我没有创建任何 JasperPrint 对象

任何人都可以帮我解决这个问题。我为此苦苦挣扎。如果您想要更多信息,我会给你。

这是我的 jasper-views.xml 配置:

        <util:map id="exportParameterMap">
                <entry key="net.sf.jasperreports.engine.export.JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN">
                        <value>false</value>
                </entry>
                 <entry key="net.sf.jasperreports.engine.export.JRHtmlExporterParameter.IS_OUTPUT_IMAGES_TO_DIR">
                        <value>true</value>
                </entry> 
                 <entry key="net.sf.jasperreports.engine.export.JRHtmlExporterParameter.IMAGES_URI">
                    <value>images?image=</value>
                 </entry> 
                 <entry key="net.sf.jasperreports.engine.export.JRHtmlExporterParameter.IMAGES_DIR_NAME">
                    <value>/home/rupa/Workspace/sample/src/main/webapp/images/rupa</value>
                 </entry> 
        </util:map>
         <bean id="ipHtmlReport"
          class="org.springframework.web.servlet.view.jasperreports.JasperReportsHtmlView"
          p:url="classpath:reports/ggsnreport.jrxml"
          p:reportDataKey="datasource"
          p:exporterParameters-ref="exportParameterMap">

         </bean>

这是我的 web.xml 配置:

        <servlet>
                   <servlet-name>image</servlet-name>
                   <servlet-class>net.sf.jasperreports.j2ee.servlets.ImageServlet</servlet-class>
                   <load-on-startup>2</load-on-startup>
        </servlet>

        <servlet-mapping>
                   <servlet-name>image</servlet-name>
                   <url-pattern>/images</url-pattern>

        </servlet-mapping>

1 个答案:

答案 0 :(得分:0)

我没有采用纯粹的Spring方法。我有Spring的部分网站,但报告是使用传统的Servlet生成的。

如果它对您有帮助,您可以查看this answer I wrote以查找类似问题。