首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >java中的PrintService一旦托管在heroku中就不能工作

java中的PrintService一旦托管在heroku中就不能工作
EN

Stack Overflow用户
提问于 2018-09-07 19:53:20
回答 1查看 37关注 0票数 0

我编写了以下printService代码片段:

代码语言:javascript
复制
public class MainTest {

    public static void main(String[] args) {
        DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PRINTABLE;
        //PrintService defPrnSrvc = PrintServiceLookup.lookupDefaultPrintService();
        PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();

        PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
        System.out.println("my printer found: " + services.length);
        // this step is necessary because I have several printers configured
        for (int i = 0; i < services.length; i++) {
            String svcName = services[i].toString();
            //
        }
    }
}

但是当我在heroku中托管它时,它没有显示任何打印机,我知道原因,打印机服务在您的本地系统中显示,因此它不能在heroku上工作,但是有没有解决方法来解决这个问题,比如如果我从我的本地发送一些详细信息,比如我计算机的IP地址或Mac地址,那么它就可以搜索该计算机中的打印机?

有没有一种方法可以将参数传递给printservice类来获取特定计算机的打印机?或者它总是在localhost中查找。

EN

Stack Overflow用户

发布于 2018-09-07 22:34:28

有意思的。我不认为Heroku有在给定位置连接到本地设备的插件,但这里有几个想法:

  • 如果您的打印机启用了云,您可以查看打印机的制造商文档,以了解是否有远程连接的方法。可能还涉及到翻转打印机本身的设置。
  • 你有没有研究过谷歌的项目,它对你的用例有效吗?https://www.google.com/cloudprint/#printers
  • This很长,但你可以把一个树莓派挂到打印机上,并用它来托管一个

端点,这样Pi就可以接收文档数据和任何你需要的指令,然后通过本地连接将其传递给本地打印机。

希望这能有所帮助!

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52222021

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档