Linux调用java.awt报错

在工作中用到List,导包的时候发现除了平时用的util包之外,还有一个awt的包

百度百科说:java.awt是一个软件包,用于创建用户界面和绘制图形图像的所有分类(不知所云,决定自己用一下试试)。导入之后感觉跟util的看起来没啥区别,Eclipse没有错误或警告,编译也正常。但是放到服务器(Linux)之后就不对了,报错如下:

java.awt.HeadlessException
 at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159)
 at java.awt.List.<init>(List.java:216)
 at java.awt.List.<init>(List.java:171)
 at com.cinda.webservice.CommonSaveImpl.interListSave(CommonSaveImpl.java:40)
 at com.cinda.webservice.ProjectSetupImpl.WS_InterfaceUtil(ProjectSetupImpl.java:135)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:597)
 at com.sun.xml.ws.api.server.InstanceResolver$1.invoke(InstanceResolver.java:246)
 at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:151)
 at com.sun.xml.ws.server.sei.EndpointMethodHandlerImpl.invoke(EndpointMethodHandlerImpl.java:268)
 at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:100)
 at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:866)
 at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:815)
 at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:778)
 at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:680)
 at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:403)
 at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:539)
 at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:253)
 at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:140)
 at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doGet(WSServletDelegate.java:129)
 at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:160)
 at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:75)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
 at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
 at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
 at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
 at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:184)
 at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3732)
 at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
 at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
 at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
 at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
 at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
 at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)

在网上查找资料后基本确定是不能光这么直接写,还要配置别的(因为暂时用不到awt,所以具体没研究)。之后在Oracle官网(基本上java报的错都可以通过Oracle的详细说明来快速锁定位置,这是个很好很便捷的方法)发现如下信息:

工具翻译:

headless模式是一种系统(缺乏显示设备、键盘或鼠标等的系统)配置。听起来出乎意料,但实际上您可以在这种模式下执行不同的操作,即使是使用图形数据。

它适用在哪里?比方说,您的应用程序重复生成特定的图像,例如,每当用户登录到系统时,必须更改图形授权码。在创建映像时,应用程序既不需要显示器,也不需要键盘。让我们假设您的项目中有一个大型机或专用服务器,没有显示设备、键盘或鼠标。理想的决定是利用这个环境的强大的计算能力来实现视觉和非视觉特征。在headless模式系统中生成的图像可以被传递到头部系统进行进一步的渲染。

java.awt中的许多方法。工具包和java.awt。GraphicsEnvironment类,除了字体、图像和打印之外,还需要显示设备、键盘和鼠标的可用性。但是一些类,比如Canvas或面板,可以在headless模式下执行。自J2SE 1.4平台以来,headless模式支持已经可用


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值