Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在SpringMVC中使用Tiles配置jasper/jrxmo报告和viewResolver_Java_Spring_Jasper Reports_Tiles - Fatal编程技术网

Java 如何在SpringMVC中使用Tiles配置jasper/jrxmo报告和viewResolver

Java 如何在SpringMVC中使用Tiles配置jasper/jrxmo报告和viewResolver,java,spring,jasper-reports,tiles,Java,Spring,Jasper Reports,Tiles,我是全新的spring配置和jasper report, 设置tiles配置时,调用jrxml的正确文件时出现问题 @Bean public InternalResourceViewResolver setupViewResolver() { InternalResourceViewResolver resolver = new InternalResourceViewResolver (); resolver.setPrefix("/WEB-INF/views/");

我是全新的spring配置和jasper report, 设置tiles配置时,调用jrxml的正确文件时出现问题

@Bean
public InternalResourceViewResolver setupViewResolver() {
    InternalResourceViewResolver resolver = new InternalResourceViewResolver ();
    resolver.setPrefix("/WEB-INF/views/");
    resolver.setSuffix(".jsp");
    resolver.setOrder(2);
    resolver.setViewClass(JstlView.class);
    return resolver;
}

@Bean
public UrlBasedViewResolver urlBasedViewResolver() {
    UrlBasedViewResolver viewResolver = new UrlBasedViewResolver();
    viewResolver.setViewClass(TilesView.class);
    viewResolver.setOrder(1);
    return viewResolver;
}
调用文件时。它将.jsp追加到文件的末尾

我试过这个,但仍然不起作用:

@Autowired
ServletContext servletContext;

@Bean
public XmlViewResolver getXmlViewResolver() {
    XmlViewResolver resolver = new XmlViewResolver();
    Resource resource = new ClassPathResource("classpath:reports/testReport1.jrxml");
    resolver.setLocation(resource);
    resolver.setOrder(0);
    return resolver;
}
您可以尝试以下方法:

@Bean
public JasperReportsViewResolver getJasperReportsViewResolver() {
    JasperReportsViewResolver resolver = new JasperReportsViewResolver();
    resolver.setPrefix("resources/jasperreports/");
    resolver.setSuffix(".jasper");
    resolver.setReportDataKey("datasource");
    resolver.setViewNames(new String[] {"Report_*"});
    resolver.setViewClass(JasperReportsMultiFormatView.class);
    resolver.setOrder(0);
    return resolver;
}
其中:
  • “resources/jasperreports/”是存放所有报告的文件夹
  • “.jasper”是编译的jasper报告的扩展
  • 新字符串[]{“Report_*”}是jasper报告的前缀。