首先我们启用
Tomcat通过startup.bat启动项目,可以获取打印机(这个是可以的)
Tomcat通过tomcat9w.exe启动项目,程序可以执行,但是打印确实失败
Tomcat通过tomcat9服务,程序可以执行,但是打印确实失败(同上↑)
tomcat9w.exe服务启动项目,无法获取打印机,更准确的说,是可以获取本地打印机,无法获取网络上共享的打印机
继续研究发现,Tomcat9服务默认使用的是本地账号(Local System Account),这个账号的权限是无法访问网络上的硬件设备(Network Services)的。得出这个结论,一切都OK了,只需要给Tomcat9服务更换一个具有能够访问网络服务权限的账号就行了,实践证明,这是正确的。
解决方案:
1.找到Windows系统中Tomcat9服务(右键此电脑==》管理==》服务和应用程序==》服务);
2.右键Tomcat9服务==》“属性”》“登录”,修改登录身份,不使用默认的“本地系统账号”,通过“此账号”选择一个具有访问网络服务权限的账号,此处我选择了“自己本人的权限(授权)”,》应用、确定后,重启Tomcat9服务或者使用tomcat9w.exe启动,发现能正常获取打印机。



本文探讨了在使用Tomcat9部署项目时遇到的打印问题,特别是在通过tomcat9w.exe和服务方式启动时,无法获取网络共享打印机的情况。通过调整服务账号权限,成功解决了打印问题。
7163

被折叠的 条评论
为什么被折叠?



