Java JasperReports:未显示下载对话框
我的Java web应用程序(WebLogic 10.3.5、Spring 3.1和JasperReports 5.0.1)有问题我想导出Excel报告,但在操作结束时,下载对话框不会出现。在Tomcat中,一切正常,但在WebLogic中则不然 带有导出按钮的Jsp代码:Java JasperReports:未显示下载对话框,java,spring,web-applications,jasper-reports,weblogic,Java,Spring,Web Applications,Jasper Reports,Weblogic,我的Java web应用程序(WebLogic 10.3.5、Spring 3.1和JasperReports 5.0.1)有问题我想导出Excel报告,但在操作结束时,下载对话框不会出现。在Tomcat中,一切正常,但在WebLogic中则不然 带有导出按钮的Jsp代码: <a title="Export" href="javascript:window.location.replace('<%=path %>/admin/export.com');">Export&l
<a title="Export" href="javascript:window.location.replace('<%=path %>/admin/export.com');">Export</a>
Spring MVC控制器:
@RequestMapping("/export.com")
public ModelAndView exportAction(@ModelAttribute("model") UserModel model, HttpServletRequest request) throws Exception{
SearchBean searchForm = model.getSearchForm();
Map<String,Object> parameterMap = new HashMap<String,Object>();
List<User>usersList = iReportService.getUsers(searchForm,null).getResults();
JRDataSource JRdataSource = new JRBeanCollectionDataSource(usersList);
parameterMap.put("datasource", JRdataSource);
return new ModelAndView("XlsUserReport",parameterMap);
}
@RequestMapping(“/export.com”)
public ModelAndView exportAction(@ModelAttribute(“model”)UserModel模型,HttpServletRequest请求)引发异常{
SearchBean searchForm=model.getSearchForm();
Map参数Map=newhashmap();
ListusersList=iReportService.getUsers(searchForm,null).getResults();
JRDataSource JRDataSource=新的JRBeanCollectionDataSource(usersList);
parameterMap.put(“数据源”,JRdataSource);
返回新模型和视图(“XlsUserReport”,参数映射);
}
pom.xml
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>5.0.1</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.7.0</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.6</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
net.sf.jasperreports
jasperreports
5.0.1
薛西斯
干细胞移植
xml API
xml API
org.codehaus.groovy
groovy all
1.7.0
org.apache.poi
poi
3.6
罐子
编译
fe-servlet.xml
org.springframework.web.servlet.view.tiles2.TilesView
report.xml
<?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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
<bean id="XlsUserReport"
class="org.springframework.web.servlet.view.jasperreports.JasperReportsXlsView"
p:url="classpath:report/report/user.jrxml"
p:reportDataKey="datasource">
<property name="headers">
<props>
<prop key="Content-Disposition">
attachment; filename=users.xls
</prop>
</props>
</property>
</bean>
</beans>
附件filename=users.xls
在相同的spring上下文中,我使用了两个不同的解析器(UrlBasedViewResolver和XmlViewResolver),所以这可能会产生问题正如我所说,在Tomcat As中,会出现下载对话框,但当我在WebLogic中部署web应用程序时,在导出后,会出现一个空白页面(URL是…/export.com)@Fra83
jasper下载对话框不会出现
-关于您正在谈论的对话框?下载对话框
<?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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
<bean id="XlsUserReport"
class="org.springframework.web.servlet.view.jasperreports.JasperReportsXlsView"
p:url="classpath:report/report/user.jrxml"
p:reportDataKey="datasource">
<property name="headers">
<props>
<prop key="Content-Disposition">
attachment; filename=users.xls
</prop>
</props>
</property>
</bean>
</beans>