3

我正在尝试从我的 JSF Web 应用程序打印一个 pdf 文档。

当我findPrinter()从主方法调用该方法时,PrintServices找到了,但是当我从网页调用该方法时却PrintService找不到。下面提到的代码..

 public static void main(final String[] args) throws Exception {
    PrintTest printTest = new PrintTest();
    printTest.findPrinter();
 }

 public void findPrinter() {

    PrintService[] printServices = PrinterJob.lookupPrintServices();
    System.out.println("Print Services Length :: " + printServices.length);
    for (PrintService printService : printServices) {
        System.out.println("PrintService :: " + printService);
}

   <h:form>
    <p:commandButton value="Print" action="#{printTest.findPrinter()}"/> 
   </h:form>

有什么建议么...

4

1 回答 1

6
  1. 在 jboss 的 modules/sun/jdk/main/module.xml 中添加额外的标签如前所述: path name="sun/print"

  2. 从 JRE 打开 resources.jar,提取
    META-INF/services/javax.print.PrintServiceLookup 并复制到 JbossAS 的 modules/sun/jdk/main/service-loader-resources/META-INF/services 位置。

  3. 重新启动 JBoss 并运行应用程序。

于 2013-05-23T11:41:10.053 回答