产品:WebSphere Application Server(以下简称WAS)
版本:5.1.0;5.1.1
平台:Windows,AIX,Linux
问题描述:
在WAS V5.1中运行的JSP文件中含有中文的时候系统的SystemOut.log日志中会报类似如下的错误:
[04-11-9 14:44:26:625 CST] 70e8b5bd WebGroup I SRVE0181I: [QE_Web.war] [/hgaqe] [Servlet.LOG]: JspReader: Exception parsing file : sun.io.MalformedInputException
at sun.io.ByteToCharEUC.convert(ByteToCharEUC.java(Compiled Code))
at sun.nio.cs.StreamDecoder$ConverterSD.convertInto(StreamDecoder.java:287)
at sun.nio.cs.StreamDecoder$ConverterSD.implRead(StreamDecoder.java:318)
[04-11-9 14:44:27:172 CST] 70e8b5bd WebGroup E SRVE0026E: [Servlet 错误]-[无法读文件:/lotQuery/queryResultDownload1.jsp sun.io.MalformedInputException]:org.apache.jasper.compiler.ParseException: 无法读文件:/lotQuery/queryResultDownload1.jsp sun.io.MalformedInputException
at org.apache.jasper.compiler.JspReader.pushFile2(JspReader.java:276)
at org.apache.jasper.compiler.JspReader.<init>(JspReader.java:317)
at org.apache.jasper.compiler.Parser.<init>(Parser.java:137)
注意:ByteToCharEUC这部分可能会由于所选定的字符集的不同而不同,比如ByteToCharGB18030。
解答:
这个问题产生的原因是IBM在JDK 1.4版本中为了追求对io通道的高效率改变了JDK 1.3中对io通道中异常处理的策略。IBM JDK 1.4中对于io通道的异常处理更加严格,因此系统中会报上面的错误。
解决这一问题的办法是不使用IBM JDK 1.4中默认的io通道,而使用nio通道。具体的做法如下:
1.打开管理控制台,找到并选择运行这个JSP的应用服务器
2.依次选择进程定义,java虚拟机,一般JVM自变量
3.添加-Dibm.stream.nio=true
4.确定,保存
5.重新启动该服务器
分享到:
相关推荐
NULL 博文链接:https://jlins.iteye.com/blog/568029
项目工程中用到jdk1.6相关方法,可以使用,但是升级到jdk1.8以后,编译出现java.lang.NoClassDefFoundError: sun/io/CharToByteConverter错误,后经查询,是jdk1.8版本中已经从sun.io.*中进行去除。网上找来了相关...
ByteToCharConverter,SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.,ByteToCharConverter
最近项目实验发现导入工具程序后项目有错,查看发现sun.misc.BASE64Decoder和sun.misc.BASE64Encoder不可用,找不到相应的类。 二、原因分析 冲浪后发现JDK中的lib\tools.jar和JRE中的lib\rt.jar已从Java SE 9中...
sun0225SUN.github.io
sun.misc.BASE64Decoder 其中包括 Android Base64Jar包 以及Java源代码 sun.misc.BASE64Decoder 其中包括 Android Base64Jar包 以及Java源代码 sun.misc.BASE64Decoder 其中包括 Android Base64Jar包 以及...
sun.misc.BASE64Decoder.jar 绿色版 官方版本自己打包好的,可以直接调用,欢迎下载
主页:http://java.sun.com/javase/6/docs/technotes/guides/imageio/index.html JAI 中的 Image I/O Tools,支持更多图片类型,例如JPEG-LS, JPEG2000, 和 TIFF。 主页:https://jai-imageio.dev.java.net/。JAI ...
import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder; 报错: Access restriction: The type JPEGImageEncoder is not accessible due to restriction on required library C:\Java\jre1.6.0_07\lib\rt....
com.sun.jna.examples
sun.misc.BASE64Encoder找不到jar包的解决方法? 在MyEclipse中编写Java代码时,用到了BASE64Decoder,import sun.misc.BASE64Decoder;可是Eclipse提示: Access restriction: The type BASE64Decoder is not ...
import com.sun.pdfview.FullScreenWindow;import com.sun.pdfview.OutlineNode;import com.sun.pdfview.PDFDestination;import com.sun.pdfview.PDFFile;import com.sun.pdfview.PDFObject;import ...
jdbc-odbc驱动包,提示找不到驱动,java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver,解决办法!因为jdk1.8环境不支持sun.jdbc.odbc.JdbcOdbcDriver驱动,所以这里为特别为您提供一个解决JDK1.8不...
sun.misc.BASE64Encoder源码及jar包
sun.security.provider不存在
安装了JDK 9以上版本,发现sun.misc.Base64Encoder和sun.misc.Base64Decoder无法使用。找不到导入的包此时将下面的包导入libs中就可以了
sun.misc.BASE64Decoder.jar sun.misc.BASE64Decoder.jar sun.misc.BASE64Decoder.jar sun.misc.BASE64Decoder.jar
jdbc-odbc驱动包,提示找不到驱动,java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver, 原因:从jdk从1.8开始,删除了jdbc-odbc桥,所以odbc的驱动是用不了的 解决方法:这里为提供一个解决JDK1.8不...
sun.jdbc.odbc.JdbcOdbcDriver.jar 需要的自己下, 绝对好用,不骗人