【发布时间】:2014-12-29 04:06:42
【问题描述】:
我正在尝试从 GWT Web 应用程序打印 TSC-244 Pro 条形码标签打印机。他们给了 tsclib.dll。这就是为什么我使用 jna.jar 并将 tsclib.dll 文件复制到 C:\Windows 和 [my_project_dir]\war\WEB-INF\lib 的原因。它的工作,但是当我部署到 apache tomcat 时。它不起作用,我收到以下错误。请给我解决方案。谢谢。
严重:调度传入 RPC 调用时出现异常 com.google.gwt.user.server.rpc.UnexpectedException:服务方法'public abstract boolean com.mbc.client.Controller.print(java.lang.String,java.util.ArrayList) throws java.lang.IllegalArgumentException' throws意外异常:java.lang.UnsatisfiedLinkError: Unable to load library 'TSCLIB': The specified module could not be found.
at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:385)
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:588)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
原因:java.lang.UnsatisfiedLinkError:无法加载库“TSCLIB”:找不到指定的模块。
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:164)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:237)
at com.sun.jna.Library$Handler.<init>(Library.java:140)
at com.sun.jna.Native.loadLibrary(Native.java:375)
at com.sun.jna.Native.loadLibrary(Native.java:360)
at com.mbc.server.impls.TscLibDll.<clinit>(TscLibDll.java:8)
at com.mbc.server.util.BarCode.openport(BarCode.java:73)
at com.mbc.server.util.Printer.openBarCodePrinter(Printer.java:67)
at com.mbc.server.util.Printer.printtsc(Printer.java:97)
at com.mbc.server.util.Printer.print(Printer.java:35)
at com.mbc.server.ControllerServlet.print(ControllerServlet.java:1390)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
... 17 more
【问题讨论】: