0

我的情况如下:我必须为外卖比萨店开发 POS 应用程序,我有一台 EPSON tm-t88iii 收据打印机。

我做到了:安装了 ESPON JavaPOS ADK,使用 SETUPPOS 生成了一个 jpos.xml 文件(HealthCheck 工作正常)。

我的问题:当我尝试使用 open 方法连接到打印机时,出现以下异常,我不知道为什么:

“jpos.JposException:无法使用logicalName = tm88 连接到服务:Exception.message=无法创建服务实例。”

使用此代码:

POSPrinterControl19 ptr =  (POSPrinterControl19) new POSPrinter();

try {
   ptr.open("tm88");
} catch (JposException ex) {
   System.err.println(ex.toString());
}

这是我的 jpos.xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE JposEntries PUBLIC "-//JavaPOS//DTD//EN"
                             "jpos/res/jcl.dtd">
<JposEntries>
<!--Saved by JavaPOS jpos.config/loader (JCL) version 2.2.0 on 23.06.14 21:59-->

        <JposEntry logicalName="tm88">
        <creation factoenter code hereryClass="jp.co.epson.uposcommon.util.EpsonJposServiceInstanceFactory" serviceClass="jp.co.epson.upos.core.v1_13_0001.pntr.T88IIIService"/>
        <vendor name="SEIKO EPSON" url="http://www.epson.com"/>
        <jpos category="POSPrinter" version="1.13"/>
        <product description="EPSON TM-T88III Printer Device Service" name="EPSON Services for JavaPOS(TM) Standard" url="http://www.epson.com"/>

        <!--Other non JavaPOS required property (mostly vendor properties and bus specific properties i.e. RS232 )-->
    ........
</JposEntry>

</JposEntries>

我确实觉得这很奇怪,因为来自 EPSON ADK 的 HealthCheck 工作正常,而我的例子不是。当然,我确实包含了从 EPSON ADK 到项目的所有库。有人有想法吗?

谢谢

我的规格:

操作系统:WINDOWS 8.1 64 位 IDE:netbeans 8 连接到收据:串行

4

1 回答 1

0

您需要设置打印机:

System.setProperty(JposPropertiesConst.JPOS_POPULATOR_FILE_PROP_NAME, "jpos.xml");

并加载您的jpos.xml 使用route\\jpos.xml

该文件由实用程序生成。

于 2015-04-15T14:14:37.847 回答