2017-04-17 10 views
0

JasperReportSpring MVCを使用しますが、処理方法としてInternalResourceViewResolverを使用します。私の報告方法を呼び出すと、pdfReport.jspページの検索が始まり、404 not foundと表示されます。しかし、私は.jspページではなく、開いているレポートファイルが必要です!JasperレポートとInternalResourceViewResolver - 404が見つかりませんでした。エラー

私のコントローラメソッド:

@RequestMapping(method = RequestMethod.GET, value = "/report/{id}") 
public ModelAndView generatePdfReport(ModelAndView modelAndView) { 
    LOG.debug("--------------generate PDF report----------"); 

    Map<String, Object> parameterMap = new HashMap<String, Object>(); 
    java.util.List<Node> nodeList = nodeService.list(); 
    JRDataSource JRdataSource = new JRBeanCollectionDataSource(nodeList); 
    parameterMap.put("datasource", JRdataSource); 

    // pdfReport bean has ben declared in the spring configuration 
    return new ModelAndView("pdfReport", parameterMap); 
} 

私の春のXMLファイルの構成:

1)follwing追加:

<mvc:annotation-driven/> 
<tx:annotation-driven/> 
<context:component-scan base-package="com.datum.fnd"> 
    <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> 
</context:component-scan> 

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <property name="contentType" value="text/html; charset=UTF-8" /> 
    <property name="prefix" value="/WEB-INF/pages/"/> 
    <property name="suffix" value=".jsp"/> 
</bean> 

<!-- Report pages beans -->  
<bean id="pdfReport" 
     class="org.springframework.web.servlet.view.jasperreports.JasperReportsPdfView" 
     p:url="classpath:reportTest.jrxml" 
     p:reportDataKey="datasource" /> 

答えて

0

私はいくつかの変更をして私の問題を解決しましたspring xml設定ファイルのコード:

<!-- Jasper report --> 
<import resource="jasper-views.xml"/> 

<bean class="org.springframework.web.servlet.view.XmlViewResolver"> 
    <property name="location" value="/WEB-INF/spring/jasper-views.xml"/> 
    <property name="order" value="0"/> 
</bean> 

2)、新しい碧玉-views.xmlファイルを作成してコピーし、それにコードを貼り付けるfollwing:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:p="http://www.springframework.org/schema/p" 
    xmlns:util="http://www.springframework.org/schema/util" 
    xsi:schemaLocation=" 
    http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
    http://www.springframework.org/schema/util 
    http://www.springframework.org/schema/util/spring-util-3.0.xsd"> 

<!--here all the url value should contains the valid path for the jrxml file--> 

<bean id="pdfReport" 
     class="org.springframework.web.servlet.view.jasperreports.JasperReportsPdfView" 
     p:url="classpath:reportTest.jrxml" 
     p:reportDataKey="datasource" /> 
</beans> 
関連する問題