我尝试使用jsf 2在我的Web应用程序中实现登录过滤器,遵循本指南:
https://stackoverflow.com/tags/servlet-filters/info
我编译了我的过滤器并在"web-inf/classes"中添加了.class(如指南所说)过滤器工作,但我把错误的URL重定向到登录页面,所以我从文件夹中删除了filter.class (web-inf/classes)并试图再次编译项目,但它失败了,从那以后我得到"包javax.servlet不存在"
这很奇怪,因为在它工作之前我在我的pom.xml中有javax.servlet ..我试过清理项目,但没有.
这是我的过滤器类:
package Bean;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
* Created with IntelliJ IDEA.
* User: rodrigo
* Date: 28-04-13
* Time: 06:54 AM
* To change this template use File | Settings | File Templates.
*/
@WebFilter("/Contenido/*")
public class filtro implements Filter {
@Override
public void init(FilterConfig config) throws ServletException {
// If you have …Run Code Online (Sandbox Code Playgroud) 即时尝试将jrxml文件导出为pdf,但我收到此错误:
WARN query.JRJdbcQueryExecuter - The supplied java.sql.Connection object is null.
Run Code Online (Sandbox Code Playgroud)
我只得到一个空白的pdf文件..
这是我导出为PDF的方法:
public void printReport(ActionEvent event) throws JRException, IOException {
String reportPath = FacesContext.getCurrentInstance().getExternalContext().getRealPath("/test.jrxml");
JasperReport report = JasperCompileManager.compileReport(reportPath);
JasperPrint jasperPrint = JasperFillManager.fillReport(report, new HashMap<String, String>());
HttpServletResponse httpServletResponse = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();
httpServletResponse.addHeader("Content-disposition", "attachment; filename=report.pdf");
ServletOutputStream servletOutputStream = httpServletResponse.getOutputStream();
JasperExportManager.exportReportToPdfStream(jasperPrint, servletOutputStream);
FacesContext.getCurrentInstance().responseComplete();
}
Run Code Online (Sandbox Code Playgroud)
我是jasperreports的新手,所以我有点迷失..我必须指定连接字符串到数据库或什么?我应该在哪里添加它.
顺便说一下,我正在使用JSF 2,intellij和maven.
谢谢.
我有我的sql server数据库,我在intellij中使用"生成持久性映射"来获取我的java类,但我的sql server数据库上定义的关系没有映射,似乎我可以添加它们与"添加关系"但我有很多表有很多关系,所以这样做很麻烦......
有什么东西可以映射数据库,包括关系?例如,如果我有一个表用户,其定义的关系类型为one to many with table potato,请获取如下的java类:
public class user{
private int iduser;
private String name;
private String password;
//relationship!!
private ArrayList<Potatoes>potatoes; //this is mapped like "private int id_potatoes" by intillij
public user(){}
//getters and setters
}
Run Code Online (Sandbox Code Playgroud)
我正在使用开放式JPA.我也找不到一种方法来自动生成DAO的一些基本方法(保存,查找,删除),我将不得不自己编码!而我正在谈论至少40桌!太荒谬了!!
我知道必须有办法自动完成所有这些工作.哦,即时通讯使用jsf 2,我不知道这是否与这个问题有关.
我使用实体框架从我的oracle数据库获取模型,然后使用ADO dbcontext生成器来创建我的类,问题是oracle中的"number"字段被传递为"decimal",我想要做的就是显示它们我的表像整数.
例如,我有一个带表的cshtml视图,它显示
number_of_prod 123.00
我希望它像这样显示:
number_of_prod
123
Run Code Online (Sandbox Code Playgroud)
也许与[DisplayFormat .....],但我不知道如何使用它XD!..
谢谢!