关于resin的illegal utf8 encoding at (190)解决方式
最近在项目开发中,出现了编码异常,内容如下:
- illegal utf8 encoding at (190)
com.caucho.jsp.JspParseException: illegal utf8 encoding at (190)
at com.caucho.jsp.JspCompilerInstance.compile(JspCompilerInstance.java:434)
at com.caucho.jsp.JspManager.compile(JspManager.java:242)
at com.caucho.jsp.JspManager.createPage(JspManager.java:171)
从出错的信息,感觉是编码出现问题。所以查看文件的编码,分为两个部分:
第一个就是jsp的声明部分:<%@ page language="java" pageEncoding="UTF-8"%>
第二个就是在eclipse中查看文件的属性,Text file encoding 为 default(UFT-8)
综上所述,没有发现错误现象。个人感觉:虽然异常字面上理解是编码异常的问题,其实并不一定真的是编码问题,因为我发现一个奇怪的现象:
第一次打开页面的时候会出现这种异常,但是重新刷新页面,反而没有问题。
所以,结合我以前读resin源码的经验来分析,我觉得是内存的字节数据出现了混乱,导致了编码问题。极有可能是我的机子内存不够,导致jsp编译的过程中,没有完全载入jsp文件,导致jsp文件编译过程中出现脏数据,从而出现编码异常问题。带着这样的思路,我去查看resin的配置文件,在resin配置文件中可以调节内存的地方有两处:
一:config文件的:<jvm-arg>-Xmx256m</jvm-arg>,可以调大一点。
二:app-default.xml文件中对jsp页面编译的处理配置如下所示:
<servlet servlet-name="resin-jsp" servlet-class="com.caucho.jsp.JspServlet">
<init>
<load-tld-on-init>false</load-tld-on-init>
<page-cache-max>1024</page-cache-max>
</init>
<load-on-startup/>
</servlet>
通过调节上面jvm的大小或者页面的缓存大小,从而控制内存,最终解决了resin的编码问题。
关于resin的illegal utf8 encoding at (190)解决方式的更多相关文章
- protoc-gen-go: error:bad Go source code was generated: 163:6: illegal UTF-8 encoding (and 2915 more errors)
protoc-gen-go: error:bad Go source code was generated: 163:6: illegal UTF-8 encoding (and 2915 more ...
- 关于GO语言遇到illegal UTF-8 encoding 随手记录
在使用汉字的时候会报错 解决方案 editpad++ 修改编码为UTF-8 保存就可以了~bingo
- CocoaPods requires your terminal to be using UTF-8 encoding
WARNING: CocoaPods requires your terminal to be using UTF-8 encoding. See https://github.com/CocoaPo ...
- java.lang.ClassFormatError: Illegal UTF8 string in constant pool in class file Server/Request
Linux服务器上,将本地编译好的文件上传后,Tomcat启动时报错: Exception in thread "Thread-2" java.lang.ClassFormatEr ...
- 【记录】【solr】whose UTF8 encoding is longer than the max length 32766
java添加数据到solr报错 whose UTF8 encoding is longer than the max length 32766 原因是长度太长,string类型改成text_gener ...
- Node.js Cheerio parser breaks UTF-8 encoding
From: https://stackoverflow.com/questions/31574127/node-js-cheerio-parser-breaks-utf-8-encoding [问题] ...
- Flutter - Finished with error: FormatException: Bad UTF-8 encoding 0xc3 (at offset 169)
方案1: 更改项目的Encoding方式 File -> Settings -> Editor, choose "File Encodings", change Pr ...
- [转]UTF-8 encoding support for the BCP utility and BULK INSERT Transact-SQL command in SQL Server 2014 SP2
本文转自:https://support.microsoft.com/en-us/help/3136780/utf-8-encoding-support-for-the-bcp-utility-and ...
- Flutter FormatException: Bad UTF-8 encoding 0xc3 (at offset 172)
是文件编码问题. 1,打开 Android Studio 进入设置界面 Ctrl + Alt + S 或 File --> Settings 打开如下界面: 2,将 Project Encode ...
随机推荐
- Pains and Sickness 学习笔记
Headaches can be very painful and can last for a long time. If you have a headache, your head hurts. ...
- [leetcode]364. Nested List Weight Sum II嵌套列表加权和II
Given a nested list of integers, return the sum of all integers in the list weighted by their depth. ...
- vue.$nextTick 解决了哪些问题
转载:https://www.cnblogs.com/xuewuhen/p/7860989.html $nextTick 是在下次 DOM 更新循环结束之后执行延迟回调,在修改数据之后使用 $next ...
- MySQL开发——【介绍、安装】
什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库, 每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据. 数据库的分类? 关系型数据库 ...
- 单系统登录机制SSO
一.单系统登录机制 1.http无状态协议 web应用采用browser/server架构,http作为通信协议.http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关 ...
- iOS 拨打电话三种方式
,这种方法,拨打完电话回不到原来的应用,会停留在通讯录里,而且是直接拨打,不弹出提示 NSMutableString * str=[[NSMutableString alloc] initWithFo ...
- webplus知识点小结
1.返回首页,要在首页栏目里面加链接,直接预览站点的时候地址栏那个地址就行 2.上传图片变色问题,要传jpg格式,不要png 3.留言板制作:后台组件管理->留言板->获取链接 然后在留言 ...
- java多线程系列9 高级同步工具(3) CyclicBarrier
CyclicBarrier 一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point) 然后一再执行 public class CyclicBar ...
- java多线程系列13 设计模式 Future 模式
Future 模式 类似于ajax请求 页面异步的进行后台请求 用户无需等待请求的结果 就可以继续浏览或者操作 核心就是:去除了主函数的等待时间,并使得原本需要等待的时间段可以用于处理其他业务逻辑 ...
- Android使用ksoap2调用C#中的webservice实现图像上传
目录: 一. android使用ksoap2调用webservice 二. 异步调用 三. Android使用ksoap2调用C#中的webservice实现图像上传参考方法 四. 图像传输中Base ...