Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Cups4j在android中打印到IPP打印机时引发错误_Java_Android_Cups4j - Fatal编程技术网

Java 使用Cups4j在android中打印到IPP打印机时引发错误

Java 使用Cups4j在android中打印到IPP打印机时引发错误,java,android,cups4j,Java,Android,Cups4j,我正在尝试使用android的Cups4j打印到安装在linux机器上的IPP打印机。这是代码,我或多或少只是复制了他们在github页面上写的内容 ByteArrayOutputStream os = stvoriRacun(narudzba, djelatnik, brStola); try { CupsClient cupsClient = new CupsClient("192.168.68.180", 631); URL printerURL = new URL("ht

我正在尝试使用android的Cups4j打印到安装在linux机器上的IPP打印机。这是代码,我或多或少只是复制了他们在github页面上写的内容

ByteArrayOutputStream os = stvoriRacun(narudzba, djelatnik, brStola);
try {
    CupsClient cupsClient = new CupsClient("192.168.68.180", 631);
    URL printerURL = new URL("http://192.168.68.180:631/printers/bixolonIPP");
    CupsPrinter cupsPrinter = cupsClient.getPrinter(printerURL);
    Map<String, String> attributes = new HashMap<>();
    attributes.put("compression", "none");
    attributes.put("job-attributes", "print-quality:enum:3#fit-to-page:boolean:true#sheet-collate:keyword:collated");

    PrintJob printJob = new PrintJob.Builder(os.toByteArray())
            .jobName("job-name")
            .userName("user-name")
            .copies(2)
            .pageRanges("1-3")
            .duplex(false)
            .portrait(false)
            .color(true)
            .pageFormat("iso-a4")
            .resolution("300dpi")
            .attributes(attributes)
            .build();
}catch (Exception e){
    e.printStackTrace();
}
ByteArrayOutputStream os=stvorirachun(纳鲁兹巴、杰拉特尼克、布尔斯托拉);
试一试{
CupsClient CupsClient=新的CupsClient(“192.168.68.180”,631);
URL printerURL=新URL(“http://192.168.68.180:631/printers/bixolonIPP");
CupsPrinter CupsPrinter=cupsClient.getPrinter(printerURL);
Map attributes=newhashmap();
属性。put(“压缩”、“无”);
attributes.put(“作业属性”,“打印质量:枚举:3#适合页面:布尔值:真#工作表整理:关键字:整理”);
PrintJob PrintJob=new PrintJob.Builder(os.toByteArray())
.工作名称(“工作名称”)
.userName(“用户名”)
.副本(2份)
.页面范围(“1-3”)
.双工(假)
.肖像(假)
.颜色(真)
.pageFormat(“iso-a4”)
.决议(“300dpi”)
.属性(属性)
.build();
}捕获(例外e){
e、 printStackTrace();
}
当我尝试打印时,出现以下错误

07-18 12:26:29.294 30378-30529/com.appid.apps E/AndroidRuntime: FATAL EXCEPTION: Thread-8
                                                              Process: com.appid.apps, PID: 30378
                                                              java.lang.NoSuchFieldError: No static field INSTANCE of type Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; in class Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; or its superclasses (declaration of 'org.apache.http.conn.ssl.AllowAllHostnameVerifier' appears in /system/framework/framework.jar!classes3.dex)
                                                                  at org.apache.http.conn.ssl.SSLConnectionSocketFactory.<clinit>(SSLConnectionSocketFactory.java:144)
                                                                  at org.apache.http.impl.client.HttpClientBuilder.build(HttpClientBuilder.java:966)
                                                                  at org.cups4j.operations.IppOperation.sendRequest(IppOperation.java:176)
                                                                  at org.cups4j.operations.IppOperation.sendRequest(IppOperation.java:131)
                                                                  at org.cups4j.operations.IppOperation.request(IppOperation.java:67)
                                                                  at org.cups4j.operations.cups.CupsGetPrintersOperation.getPrinters(CupsGetPrintersOperation.java:56)
                                                                  at org.cups4j.CupsClient.getPrinters(CupsClient.java:106)
                                                                  at org.cups4j.CupsClient.getPrinter(CupsClient.java:166)
                                                                  at com.appid.apps.IPPPrinter.connect(IPPPrinter.java:107)
                                                                  at com.appid.apps.Printing$1.run(Printing.java:604)
                                                                  at java.lang.Thread.run(Thread.java:764)
07-18 12:26:29.294 30378-30529/com.appid.apps E/AndroidRuntime:致命异常:线程8
进程:com.appid.apps,PID:30378
java.lang.NoSuchFieldError:没有Lorg/apache/http/conn/ssl/AllowlHostNameVerifier类型的静态字段实例;Lorg/apache/http/conn/ssl/AllowlHostNameVerifier类中;或其超类(声明'org.apache.http.conn.ssl.AllowAllHostnameVerifier'出现在/system/framework/framework.jar!classes3.dex中)
位于org.apache.http.conn.ssl.SSLConnectionSocketFactory(SSLConnectionSocketFactory.java:144)
位于org.apache.http.impl.client.HttpClientBuilder.build(HttpClientBuilder.java:966)
在org.cups4j.operations.ippooperation.sendRequest(ippooperation.java:176)上
在org.cups4j.operations.ippooperation.sendRequest(ippooperation.java:131)上
在org.cups4j.operations.ippooperation.request(ippooperation.java:67)上
在org.cups4j.operations.cups.cupsgetPrinterOperation.getPrinters上(cupsgetPrinterOperation.java:56)
位于org.cups4j.CupsClient.getPrinters(CupsClient.java:106)
位于org.cups4j.CupsClient.getPrinter(CupsClient.java:166)
位于com.appid.apps.IPPPrinter.connect(IPPPrinter.java:107)
在com.appid.apps.Printing$1.run(Printing.java:604)
运行(Thread.java:764)

或者,是否有其他库处理来自android的IPP打印?

我没有这样的问题。但我认为这可能是cups4j和apache http客户端之间的问题。尝试使用不同版本的google,以确保这些软件包之间的兼容性。我没有遇到这样的问题。但我认为这可能是cups4j和apache http客户端之间的问题。尝试使用不同版本的google,以确保这些软件包之间的兼容性。