解决PJA错误
现场有WAS5、6,均安装在AIX下,且都已经设置PJA,在WAS5上报表正常,但是在WAS6下报表会报错,两个应用下的配置均相同。
反馈的报错日志:
[11-4-25 14:20:42:758 GMT+08:00] 0000002a WebApp [Servlet Error]-[com_icss_rqtool_app_province_servlet_AppReportServlet]: java.lang.AbstractMethodError: sun/java2d/SunGraphicsEnvironment.createFontConfiguration()Lsun/awt/FontConfiguration;
问题解决方案:
错误原因分析:
根据客户反馈的信息,初步判断,这个可能是因为字体原因引起的错误,并且客户反馈这两个应用服务器的软件配置均相同,那么差别可能在于WAS5使用JDK1.4而WAS6使用JDK1.5,基于上面两点原因,我们有理由怀疑问题出现在JDK的版本差别上。
经过与之前接手该项目的售后确认,该客户使用了润乾的PJA方案,并且使用的PJA版本为2.5。
解决方案:
在网上查找了一些类似错误信息,终于有点眉目了,在国外的一个论坛中找到了一些原因解释,如下:
目前已经使用的渲染图像的PJA工具包的最新版本(2.5)是针对JDK 1.4.2版本的开源插件,没有问题。JDK 由1.4.x versions升级至JDK 1.5版本,由于升级,原有JDK1.4方法不能再渲染图像,现在生成以下AbstractMethodError消息;“JDK
1.5中现在有一个概念“字体配置“(而不是只是“在JDK 1.4.x的字体属性“)在java.awt.SunGraphicsEnvironment,他们已经增加了两个新的抽象方法重写。该版PJA实现了在PJAGraphicsEnvironment后一种方法。现在的JDK
1.5已经成为成为一个内部类的PropertiesHandler这本身就是一个新的静态内部类FontProperties
FontConfiguration类。
综上所述,也就是JDK的升级导致原有的类方法改变了,但是与JDK1.4版本对应的PJA2.5
PJAGraphicsEnvironment方法需要createFontConfiguration实现,所以找到相应与JDK1.5对应的开源PJA版本即可。
在网上下载最新的PJA包,给客户更新,经过测试,该问题解决。
解决PJA错误的更多相关文章
- 解决ORA-00020错误
解决ORA-00020错误 分类: Oracle2009-05-13 17:26 3398人阅读 评论(0) 收藏 举报 数据库sessionoraclesql服务器object 项目上使用的Orac ...
- 如何解决Ora-04031错误(转)
诊断并解决ORA-04031 错误 当我们在共享池中试图分配大片的连续内存失败的时候,Oracle首先清除池中当前没使用的所有对象,使空闲内存块合并.如果仍然没有足够大单个的大块内存满足请求,就会产生 ...
- 解决:错误的语法:”XXXX“必须是批处理中仅有的语句
原文:解决:错误的语法:”XXXX“必须是批处理中仅有的语句 SQL Server 数据库提示“错误的语法:”XXXX“必须是批处理中仅有的语句”报错的原因分析 解析:批处理必须以 CREATE ...
- Maven解决NoPluginFoundForPrefixException错误
Maven解决NoPluginFoundForPrefixException错误方法 错误出现的原因 你指的是一个不存在的插件,如由于错误的前缀. 您使用的是第三方的Maven插件没有部署到中央Mav ...
- Android Studio 错误: 非法字符: '\ufeff' 解决方式|错误: 须要class, interface或enum
在导入eclipse项目到Android Studio出现这种错误, 非法字符: '\ufeff' 解决方式|错误: 须要class, interface或enum.查阅后了解到Eclipse能够智能 ...
- 诊断并解决 ORA-4030 错误 (Doc ID 1548826.1)
适用于: Oracle Database - Enterprise Edition - 版本号 8.1.7.4 和更高版本号 本文档所含信息适用于全部平台 用途 怎样诊断 ORA-4030 错误 排错 ...
- php - 如何解决CURL错误( 7 ): 无法连接到主机?
php - 如何解决CURL错误( 7 ): 无法连接到主机? 1. 问题描述 调用第三方接口,本地调用一切ok,线上调用失败! 本地通过curLRequest()方法调用第三方接口时,curl_er ...
- 解决bind错误 bind: Address already in use
关于bind错误的处理: bind: Address already in use 原因: 操作系统没有立即释放端口 解决一: 等待一段时间运行网络程序即可 解决二:通过setsockopt进行设置, ...
- magento -- 解决magento错误:ERROR: Base table or view already exists: 1050 Table ... already exists
相信有更新magento或者,备份转移magento站点的时候可能会碰到类似这样的错误提示: Base table or view already exists: 1050 Table ... alr ...
随机推荐
- R软件常用命令
1.getwd() 获取默认的目录 2.> mydata <- read.csv("1.csv") 读取1.csv文件中的数据,并赋值给一个mydata的对 ...
- Lingo 做线性规划 - Financial Applications
Reference: <An Introduction to Management Science Quantitative Approaches to Decision Making, Rev ...
- Scrapy源码注解--CookiesMiddleware
class CookiesMiddleware(object): """ 中间件在Scrapy启动时实例化.其中jars属性是一个默认值为CookieJar对象的dict ...
- chrome断点调试&&其他技巧
chrome断点调试 1. 在编写JavaScript代码时,如果 出现了bug,就要不断的去找错误,如果console控制台中提示还好说,可是没有提示恐怕就要费一番周折了.但是有了chrome这个浏 ...
- Java基础知识01
1. String,StringBuffer和StringBuilder的区别? String:final修饰,String对象创建后不可修改:StringBuffer和StringBuilder对象 ...
- C/C++ -- Gui编程 -- Qt库的使用 -- Qt5试用
1.头文件<QtGui>变成了<QtWidgets> 相应<QtGui/***>变成了<QtWidgets/***> 2.QTextCodec::set ...
- OOAD之单例模式Singleton的6种写法
1 主要作用是保证在Java应用程序中,一个类Class只有一个实例存在. 一 :第一种 饿汉式(预加载) public class Singleton { private Singleton(){ ...
- 一个基于Socket的http请求监听程序实现
首先来看以下我们的需求: 用java编写一个监听程序,监听指定的端口,通过浏览器如http://localhost:7777来访问时,可以把请求到的内容记录下来,记录可以存文件,sqlit,mysql ...
- shell:syntax error:unexpected end of file/Starting proxy www-balancer: cannot bind socket--转载
src:http://www.2cto.com/os/201308/238962.html 执行某bash脚本是发生: syntax error: unexpected end of file 主 ...
- 编写高质量JavaScript代码的68个有效方法
简介: <Effective JavaScript:编写高质量JavaScript代码的68个有效方法>共分为7章,分别涵盖JavaScript的不同主题.第1章主要讲述最基本的主题,如版 ...