WebLogic 8 jstl1.0 中文

本文详细介绍了在WebLogic8.1环境下使用JSTL时遇到的中文字符显示问题及其解决办法。当JSP页面含有中文字符时,无论是动态编译还是静态编译都会出现错误。文中提供了两种解决方式:一是修改JSP文件增加pageEncoding属性;二是通过web.xml配置文件设置默认编码。
首先要说明的是,这里所说的WebLogic 8.1指SP3以前的各个版本,因为从SP3开始,即 WebLogic8.1.3+ 好像已经可以支持JSTL了。另外,由于 WebLogic8.1 仅支持Servlet2.3/JSP1.2,所以只能使用JSTL 1.0。

纯英文的包含 JSTL 标签的 JSP 文件在 WebLogic8.1 上执行没有任何问题,但是JSP中一旦使用了中文或者日文字符,即便是用 UTF-8 编码格式,不论是动态编译还是静态编译(使用weblogic.appc或者weblogic.jspc),都会得到类似下文的错误:
java.io.IOException: javax.servlet.jsp.JspException: The taglib validator rejected the page: "java.io.UTFDataFormatException: Invalid byte 3 of 3-byte UTF-8 sequence., "

例如下面这个简单的JSP文件,应该是算很标准了:

<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="/tags/jstl/core" prefix="c" %>

<html>
<head>
<meta content="Content-Type" http-equiv="text/html; charset=UTF-8">
<title>欢迎光临</title>
</head>
<body bgcolor="white">
加法测试:12+23=<c:out value="${12 + 23}" /><br>
</body>
</html>

就是这么简单一个JSP文件,就是编译通不过。解决办法如下:
1、修改JSP文件,增加定义JSP文件的 pageEncoding 属性。即
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
如此一来,不论是静态编译还是动态编译都可以通过并且执行无误。

2、修改 web.xml ,在<web-app> </web-app> 之间添加以下内容:
<context-param>
<param-name>weblogic.jsp.encoding</param-name>
<param-value>UTF-8</param-value>
</context-param>
如此一来,动态编译可以通过并且执行无误,但是静态编译(使用weblogic.appc或者weblogic.jspc)仍然不行。

注:上面的说明中以 UTF-8 编码为例,实际上只要只要是正确的编码都可以,例如:GB2312, Shift_JIS 都可以
根据原作 https://pan.quark.cn/s/459657bcfd45 的源码改编 Classic-ML-Methods-Algo 引言 建立这个项目,是为了梳理和总结传统机器学习(Machine Learning)方法(methods)或者算法(algo),和各位同仁相互学习交流. 现在的深度学习本质上来自于传统的神经网络模型,很大程度上是传统机器学习的延续,同时也在不少时候需要结合传统方法来实现. 任何机器学习方法基本的流程结构都是通用的;使用的评价方法也基本通用;使用的一些数学知识也是通用的. 本文在梳理传统机器学习方法算法的同时也会顺便补充这些流程,数学上的知识以供参考. 机器学习 机器学习是人工智能(Artificial Intelligence)的一个分支,也是实现人工智能最重要的手段.区别于传统的基于规则(rule-based)的算法,机器学习可以从数据中获取知识,从而实现规定的任务[Ian Goodfellow and Yoshua Bengio and Aaron Courville的Deep Learning].这些知识可以分为四种: 总结(summarization) 预测(prediction) 估计(estimation) 假想验证(hypothesis testing) 机器学习主要关心的是预测[Varian在Big Data : New Tricks for Econometrics],预测的可以是连续性的输出变量,分类,聚类或者物品之间的有趣关联. 机器学习分类 根据数据配置(setting,是否有标签,可以是连续的也可以是离散的)和任务目标,我们可以将机器学习方法分为四种: 无监督(unsupervised) 训练数据没有给定...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值