[ 
https://issues.apache.org/jira/browse/PDFBOX-1921?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Poplavsky updated PDFBOX-1921:
------------------------------

    Description: 
Good day! I have one problem with the PDF-box application 1.8.4. Use in 
java-applet. On code "PDDocument.load" Antivirus blocks and nothing happens, no 
exceptions or other events. When I disable the antivirus, then all is well. 

This code: 



import org.apache.pdfbox.io.*;
import org.apache.pdfbox.io.RandomAccessFile;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPageable;

import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.standard.MediaSizeName;
import javax.print.attribute.standard.OrientationRequested;
import java.applet.Applet;
import java.awt.*;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.io.*;
import java.net.URL;


public class Print extends Applet {
    private boolean containsFile(File dir, String fileName) {
        for (String childFileName : dir.list()) {
            if (childFileName.equals(fileName)) {
                return true;
            }
        }
        return false;
    }

    public void init() {

        try {
            PrinterJob job = PrinterJob.getPrinterJob();
            PDDocument document = null;
            try {
                if (getParameter("file") != null && 
!getParameter("file").equals("")) {
                    String file1 = getParameter("file");
                    if (getParameter("url") == null || 
getParameter("url").equals("1") ) {                       
                        if (getParameter("login") != null && 
!getParameter("login").equals("")) {                            
                            file1 += "&login="+getParameter("login");
                        }
                        if (getParameter("pass") != null && 
!getParameter("pass").equals("")) {                            
                            file1 += "&pass="+getParameter("pass");
                        }

                        URL url = new URL(file1);                        
                        File home = new File(System.getProperty("user.home"));
                        File dir = new File(home, "MotiwPrint");
                        if (!dir.exists()) {
                            dir.mkdir();
                        }

                        int number = 0;
                        while (containsFile(dir, "Print" + number + ".pdf")) {
                            number++;
                        }

                        File file = new File(dir, "Print" + number + ".pdf");
                        FileOutputStream writer = new FileOutputStream(file);
                        InputStream is = url.openStream();

                        int read = 0;
                        byte[] bytes = new byte[1024];

                        while ((read = is.read(bytes)) != -1) {
                            writer.write(bytes, 0, read);
                        }
                        writer.close();
                        file = new File(dir, "Print" + number + ".pdf");
                        document = PDDocument.load(file);
                    } else {
                        document = PDDocument.load(file1);
                    }

                } else {
                    document = PDDocument.load(file);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                job.setPageable(new PDPageable(document, job));
            } catch (PrinterException e) {
                e.printStackTrace();
            }

            job.setJobName("Print envelope");

            HashPrintRequestAttributeSet psettings = new 
HashPrintRequestAttributeSet();
            psettings.add(OrientationRequested.LANDSCAPE);

            if (getParameter("type") != null) {
                if (getParameter("type").equalsIgnoreCase("DL")) {
                    psettings.add(MediaSizeName.ISO_DESIGNATED_LONG);
                } else if (getParameter("type").equalsIgnoreCase("C4")) {
                    psettings.add(MediaSizeName.ISO_C4);
                } else if (getParameter("type").equalsIgnoreCase("C5")) {
                    psettings.add(MediaSizeName.ISO_C5);
                } else if (getParameter("type").equalsIgnoreCase("C6")) {
                    psettings.add(MediaSizeName.ISO_C6);
                }
            } else {
                psettings.add(MediaSizeName.ISO_A4);
            }

            if (job.printDialog(psettings)) {
                try {
                    job.print(psettings);
                } catch (PrinterException e) {
                }
            }
        } catch (Exception ex) {

        }
    }
}


  was:
Good day! I have one problem with the PDF-box application 1.8.4. Use in 
java-applet. On code "PDDocument.load" Antivirus blocks and nothing happens, no 
exceptions or other events. When I disable the antivirus, then all is well. 

This code: 
package ru.motiw;


import org.apache.pdfbox.io.*;
import org.apache.pdfbox.io.RandomAccessFile;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPageable;

import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.standard.MediaSizeName;
import javax.print.attribute.standard.OrientationRequested;
import java.applet.Applet;
import java.awt.*;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.io.*;
import java.net.URL;

/**
 * Created with IntelliJ IDEA.
 * User: Администратор
 * Date: 04.02.14
 * Time: 10:34
 * To change this template use File | Settings | File Templates.
 */
public class Print extends Applet {
    //    public String file = "c:\\DL.pdf";
    private boolean containsFile(File dir, String fileName) {
        for (String childFileName : dir.list()) {
            if (childFileName.equals(fileName)) {
                return true;
            }
        }
        return false;
    }

    public void init() {

        try {
            PrinterJob job = PrinterJob.getPrinterJob();
            PDDocument document = null;
            try {
                if (getParameter("file") != null && 
!getParameter("file").equals("")) {
                    String file1 = getParameter("file");
                    if (getParameter("url") == null || 
getParameter("url").equals("1") ) {                       
                        if (getParameter("login") != null && 
!getParameter("login").equals("")) {                            
                            file1 += "&login="+getParameter("login");
                        }
                        if (getParameter("pass") != null && 
!getParameter("pass").equals("")) {                            
                            file1 += "&pass="+getParameter("pass");
                        }

                        URL url = new URL(file1);                        
                        File home = new File(System.getProperty("user.home"));
                        File dir = new File(home, "MotiwPrint");
                        if (!dir.exists()) {
                            dir.mkdir();
                        }

                        int number = 0;
                        while (containsFile(dir, "Print" + number + ".pdf")) {
                            number++;
                        }

                        File file = new File(dir, "Print" + number + ".pdf");
                        FileOutputStream writer = new FileOutputStream(file);
                        InputStream is = url.openStream();

                        int read = 0;
                        byte[] bytes = new byte[1024];

                        while ((read = is.read(bytes)) != -1) {
                            writer.write(bytes, 0, read);
                        }
                        writer.close();
                        file = new File(dir, "Print" + number + ".pdf");
                        document = PDDocument.load(file);
                    } else {
                        document = PDDocument.load(file1);
                    }

                } else {
                    document = PDDocument.load(file);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                job.setPageable(new PDPageable(document, job));
            } catch (PrinterException e) {
                e.printStackTrace();
            }

            job.setJobName("Print envelope");

            HashPrintRequestAttributeSet psettings = new 
HashPrintRequestAttributeSet();
            psettings.add(OrientationRequested.LANDSCAPE);

            if (getParameter("type") != null) {
                if (getParameter("type").equalsIgnoreCase("DL")) {
                    psettings.add(MediaSizeName.ISO_DESIGNATED_LONG);
                } else if (getParameter("type").equalsIgnoreCase("C4")) {
                    psettings.add(MediaSizeName.ISO_C4);
                } else if (getParameter("type").equalsIgnoreCase("C5")) {
                    psettings.add(MediaSizeName.ISO_C5);
                } else if (getParameter("type").equalsIgnoreCase("C6")) {
                    psettings.add(MediaSizeName.ISO_C6);
                }
            } else {
                psettings.add(MediaSizeName.ISO_A4);
            }

            if (job.printDialog(psettings)) {
                try {
                    job.print(psettings);
                } catch (PrinterException e) {
                }
            }
        } catch (Exception ex) {

        }
    }
}



> PDDocument.load
> ---------------
>
>                 Key: PDFBOX-1921
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-1921
>             Project: PDFBox
>          Issue Type: Bug
>    Affects Versions: 1.8.4
>            Reporter: Poplavsky
>            Assignee: Andreas Lehmkühler
>
> Good day! I have one problem with the PDF-box application 1.8.4. Use in 
> java-applet. On code "PDDocument.load" Antivirus blocks and nothing happens, 
> no exceptions or other events. When I disable the antivirus, then all is 
> well. 
> This code: 
> import org.apache.pdfbox.io.*;
> import org.apache.pdfbox.io.RandomAccessFile;
> import org.apache.pdfbox.pdmodel.PDDocument;
> import org.apache.pdfbox.pdmodel.PDPageable;
> import javax.print.attribute.HashPrintRequestAttributeSet;
> import javax.print.attribute.standard.MediaSizeName;
> import javax.print.attribute.standard.OrientationRequested;
> import java.applet.Applet;
> import java.awt.*;
> import java.awt.print.PrinterException;
> import java.awt.print.PrinterJob;
> import java.io.*;
> import java.net.URL;
> public class Print extends Applet {
>     private boolean containsFile(File dir, String fileName) {
>         for (String childFileName : dir.list()) {
>             if (childFileName.equals(fileName)) {
>                 return true;
>             }
>         }
>         return false;
>     }
>     public void init() {
>         try {
>             PrinterJob job = PrinterJob.getPrinterJob();
>             PDDocument document = null;
>             try {
>                 if (getParameter("file") != null && 
> !getParameter("file").equals("")) {
>                     String file1 = getParameter("file");
>                     if (getParameter("url") == null || 
> getParameter("url").equals("1") ) {                       
>                         if (getParameter("login") != null && 
> !getParameter("login").equals("")) {                            
>                             file1 += "&login="+getParameter("login");
>                         }
>                         if (getParameter("pass") != null && 
> !getParameter("pass").equals("")) {                            
>                             file1 += "&pass="+getParameter("pass");
>                         }
>                         URL url = new URL(file1);                        
>                         File home = new File(System.getProperty("user.home"));
>                         File dir = new File(home, "MotiwPrint");
>                         if (!dir.exists()) {
>                             dir.mkdir();
>                         }
>                         int number = 0;
>                         while (containsFile(dir, "Print" + number + ".pdf")) {
>                             number++;
>                         }
>                         File file = new File(dir, "Print" + number + ".pdf");
>                         FileOutputStream writer = new FileOutputStream(file);
>                         InputStream is = url.openStream();
>                         int read = 0;
>                         byte[] bytes = new byte[1024];
>                         while ((read = is.read(bytes)) != -1) {
>                             writer.write(bytes, 0, read);
>                         }
>                         writer.close();
>                         file = new File(dir, "Print" + number + ".pdf");
>                         document = PDDocument.load(file);
>                     } else {
>                         document = PDDocument.load(file1);
>                     }
>                 } else {
>                     document = PDDocument.load(file);
>                 }
>             } catch (IOException e) {
>                 e.printStackTrace();
>             }
>             try {
>                 job.setPageable(new PDPageable(document, job));
>             } catch (PrinterException e) {
>                 e.printStackTrace();
>             }
>             job.setJobName("Print envelope");
>             HashPrintRequestAttributeSet psettings = new 
> HashPrintRequestAttributeSet();
>             psettings.add(OrientationRequested.LANDSCAPE);
>             if (getParameter("type") != null) {
>                 if (getParameter("type").equalsIgnoreCase("DL")) {
>                     psettings.add(MediaSizeName.ISO_DESIGNATED_LONG);
>                 } else if (getParameter("type").equalsIgnoreCase("C4")) {
>                     psettings.add(MediaSizeName.ISO_C4);
>                 } else if (getParameter("type").equalsIgnoreCase("C5")) {
>                     psettings.add(MediaSizeName.ISO_C5);
>                 } else if (getParameter("type").equalsIgnoreCase("C6")) {
>                     psettings.add(MediaSizeName.ISO_C6);
>                 }
>             } else {
>                 psettings.add(MediaSizeName.ISO_A4);
>             }
>             if (job.printDialog(psettings)) {
>                 try {
>                     job.print(psettings);
>                 } catch (PrinterException e) {
>                 }
>             }
>         } catch (Exception ex) {
>         }
>     }
> }



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to