3
아파치의 pdfbox를 사용하여 pdf 파일을 인쇄하려고합니다. 따라서 pdf 파일을 인쇄 할 책임이있는 컨트롤러를 만들었습니다. 아래 코드에서 볼 수 있듯이 컨트롤러에는 파일 경로 매개 변수가있는 공용 메서드가 하나만 있습니다. 컨트롤러는 예외없이 실행되지만 아무것도 인쇄되지 않습니다 받는다는와 나는 pdfbox 버전 1.7.0을 사용하고pdfbox를 사용하여 아무 것도 인쇄 할 수 없습니다.
public class ControladorImpressao {
@Value("${nome.impressora}")
private String nomeImpressora;
private PDDocument arquivoPDF;
private Logger logger = LoggerFactory.getLogger(this.getClass());
public boolean imprimir(String arquivo) {
try {
carregarArquivoPDF(arquivo);
iniciarImpressao(arquivo);
return true;
} catch (Exception e) {
logger.error("Erro ao tentar imprimir documento!",e);
}
return false;
}
private void carregarArquivoPDF(String arquivo) {
try {
arquivoPDF=new PDDocument();
arquivoPDF.load(arquivo);
}
catch (Exception e) {
logger.error("Erro ao abrir pdf!",e);
}
}
private void iniciarImpressao(String nomeArquivo) throws PrinterException {
PrintService impressora=recuperarImpressora();
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintService(impressora);
job.setJobName(nomeArquivo);
job.setCopies(1);
arquivoPDF.silentPrint(job);
}
private PrintService recuperarImpressora() {
PrintService[] printServices = PrinterJob.lookupPrintServices();
for (int count = 0; count < printServices.length; ++count) {
if (nomeImpressora.equalsIgnoreCase(printServices[count].getName())) {
return printServices[count];
}
}
return null;
}
}
: 내가 잘못
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>1.7.0</version>
</dependency>
을하고있어 무엇을?