Weblogic如何使用Unicode字符集发送页面

时间:2010-01-18 12:26:13

标签: java encoding weblogic

我的应用程序中99.9%的页面使用的是UTF-8编码。

但是对于客户端的一些特殊用例,我需要其中一个使用Unicode(每个字符2个字节)

就此而言,此页面的标题是:

<%@ page language="java" contentType="text/html; charset=unicode"%>
...<my content>...

当应用程序在Tomcat和Webspher上运行时,此实现可以正常工作并完成工作。但是,当它部署在Weblogic上时,我收到服务器错误: 不支持的编码:'unicode':java.io.UnsupportedEncodingException:unicode

有人知道如何强制Weblogic以'Unicode'编码方式发送页面吗?

2 个答案:

答案 0 :(得分:3)

UTF-8 Unicode。 “Unicode”本身不是字符编码,它是字符映射标准(charset)。你的问题出在其他地方。也许你遇到了GET请求编码问题。这经常被忽视。然后,您可能会发现本文对于获取更多背景信息以及如何使Unicode现象在Java EE Web应用程序中起作用的完整解决方案非常有用:Unicode - How to get the characters right?

祝你好运。

顺便说一句,“每个字符2个字节”是大多数UTF-16编码的特征(0x0000直到0xFFFF用2个字节表示,而UTF-8使用1,2和3每个子范围的字节数)。也许你只是想用它来代替?

答案 1 :(得分:1)

Unicode不是字符集,但有些字符集允许表示在Unicode系统中表示的字符。您已经知道 UTF-8 字符集,它根据系统中字符的位置对每个字符进行1,2,3或4个字节的编码。您似乎想要使用 UTF-16 字符集,它将每个字符编码为2或4个字节。

注意与BalusC提供的答案有关:这里我使用“charset”一词作为“Content-Type MIME标题中字符集编码部分的分母”。严格来说,Unicode提供的通用字符集是一个字符集,但我们没有严格指定带有字符集名字的字符集。