powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JasperReports + iReport - в отчете вся кириллица - "КРАКОЗЯБЛЫ"?
2 сообщений из 2, страница 1 из 1
JasperReports + iReport - в отчете вся кириллица - "КРАКОЗЯБЛЫ"?
    #34242679
PM123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Использую iReport 1.3.0, JasperReports 1.2.8.
В отчете прорисованы как textField так и staticField.
PDF encoding CP1251.
После генерации отчета все поля, где должна быть кириллица - сплошь "КРАКОЗЯБЛЫ".

Вывод идет след.образом:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
 public  ActionForward execute(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response)
         throws  IOException, ServletException, Exception {

    StatForm listForm = (StatForm) form;

    java.util.Date dateFrom = listForm.getDateFrom();
    java.util.Date dateTo = listForm.getDateTo();

    Connection connection;
            
     try  {
         Class .forName("org.gjt.mm.mysql.Driver");
        String url = "jdbc:mysql://localhost/db?useUnicode=true&characterEncoding=Cp1251&autoReconnect=true";
        connection = DriverManager
                .getConnection(url, "xxx", "xxx");
        
        ServletContext context = getServlet().getServletConfig().getServletContext();

        File reportFile =  new  File(context.getRealPath("/universal.jasper"));
         if  (!reportFile.exists())
             throw   new  JRRuntimeException("File WebappReport.jasper not found. The report design must be compiled first.");

        Map parameters =  new  HashMap();

        Locale currentLocale =  new  java.util.Locale("ru", "RU"); 
        parameters.put("REPORT_LOCALE",currentLocale); 
                    
        JasperPrint jasperPrint =  null ;

         try 
        {
            JasperReport jasperReport = (JasperReport)JRLoader.loadObject(reportFile.getPath());
            
            jasperPrint = 
                JasperFillManager.fillReport(
                    jasperReport,
                    parameters, 
                    connection
                    );
        }
         catch  (JRException e)
        {
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();
            out.println("<html>");
            ...
            out.println("</html>");

             return  mapping.findForward("failed");
        }

         if  (jasperPrint !=  null )
        {
            response.addHeader("Content-Disposition", "attachment; filename=Universal.pdf");
            response.setContentType("application/pdf");
            ServletOutputStream ouputStream = response.getOutputStream();

            JRPdfExporter pdfExporter =  new  JRPdfExporter();
            pdfExporter.setParameter(JRExporterParameter.
                    JASPER_PRINT, jasperPrint);
                    pdfExporter.setParameter(JRExporterParameter.OUTPUT_STREAM,
                    ouputStream);
            pdfExporter.setParameter(JRExporterParameter.CHARACTER_ENCODING,"win1251");                         
            
            pdfExporter.exportReport();     

            ouputStream.flush();
            ouputStream.close();
        }
         else 
        {
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();
            out.println("<html>");
            out.println("<head>");
            out.println("<title>JasperReports - Web Application Sample</title>");
            out.println("<link rel=\"stylesheet\" type=\"text/css\" href=\"../stylesheet.css\" title=\"Style\">");
            out.println("</head>");
            out.println("<body bgcolor=\"white\">");
            out.println("<span class=\"bold\">Empty response.</span>");
            out.println("</body>");
            out.println("</html>");
        }
        
        
        connection.close();
    }  catch  (Exception e) {
        StringWriter stringWriter =  new  StringWriter();
        PrintWriter printWriter =  new  PrintWriter(stringWriter);
        e.printStackTrace(printWriter);
        response.setContentType("text/plain");
        response.getOutputStream().print(stringWriter.toString());
    }

     return  mapping.findForward("success");
}
...
Рейтинг: 0 / 0
JasperReports + iReport - в отчете вся кириллица - "КРАКОЗЯБЛЫ"?
    #34242810
Я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Я
Гость
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JasperReports + iReport - в отчете вся кириллица - "КРАКОЗЯБЛЫ"?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]