Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Weblogic如何使用Unicode字符集发送页面_Java_Encoding_Weblogic - Fatal编程技术网

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

Java Weblogic如何使用Unicode字符集发送页面,java,encoding,weblogic,Java,Encoding,Weblogic,我的应用程序中99.9%的页面使用UTF-8编码 然而,对于客户端的一些特殊用例,我需要其中一个为每个字符使用Unicode 2字节 为此,本页的标题为: <%@ page language="java" contentType="text/html; charset=unicode"%> ...<my content>... 当应用程序在Tomcat和Webspher上运行时,此实现工作正常并完成了任务。但是,当它部署在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”编码发送页面吗

UTF-8是Unicode。Unicode本身不是字符编码,它是字符集的字符映射标准。你的问题在别的地方。可能您在GET请求编码方面遇到了问题。这一点经常被忽视。然后,您可能会发现本文有助于获取更多背景信息和完整的解决方案,了解如何在Java EE Web应用程序中使用Unicode现象:

祝你好运

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

UTF-8是Unicode。Unicode本身不是字符编码,它是字符集的字符映射标准。你的问题在别的地方。可能您在GET请求编码方面遇到了问题。这一点经常被忽视。然后,您可能会发现本文有助于获取更多背景信息和完整的解决方案,了解如何在Java EE Web应用程序中使用Unicode现象:

祝你好运


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

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


与BalusC提供的答案相关的注意:这里我使用单词charset作为内容类型MIME头中字符集编码部分的分母。严格地说,Unicode提供的通用字符集是一个字符集,但是我们没有严格地指定具有字符集名字对象的字符集。

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


与BalusC提供的答案相关的注意:这里我使用单词charset作为内容类型MIME头中字符集编码部分的分母。严格地说,Unicode提供的通用字符集是一个字符集,但我们并没有严格地指定具有字符集名字对象的字符集。

您所说的字符集可能是指编码或字符编码。UTF-8也不是字符集,正如您所指出的,它使用Unicode字符集。使用字符集进行编码源于这样一个时代:每个广泛使用的编码都只是值0-255到某些字符的简单映射,因此每个编码都有自己支持的字符集。现代编码UTF-8、UTF-16甚至UTF-7都支持所有Unicode字符,因此称它们为字符集并不真正正确。Joachim是对的,但不幸的是,这并没有在所有地方得到一致的使用。例如,内容类型标题要求将其指定为字符集,而不是编码等。假设Joachim注释是在添加注释之前发布的:-您说的字符集可能是指编码或字符编码。UTF-8也不是字符集,正如您所指出的,它使用Unicode字符集。使用字符集进行编码源于这样一个时代:每个广泛使用的编码都只是值0-255到某些字符的简单映射,因此每个编码都有自己支持的字符集。现代编码UTF-8、UTF-16甚至UTF-7都支持所有Unicode字符,因此称它们为字符集并不真正正确。Joachim是对的,但不幸的是,这并没有在所有地方得到一致的使用。例如,内容类型标头要求将其指定为字符集,而不是编码或其他。假设Joachim注释是在添加注释之前发布的:-我已经尝试将字符集unicode更改为charset=UTF-16,但没有帮助。当Tomcat或Websphere生成charset=unicode的页面时,它们将页面发送到客户机sid
我不知道它是什么,但它解决了我的具体问题,而且由于某些原因Weblogic的行为不同。我建议阅读链接文章以了解发生了什么,这样你就可以更容易地找到根本原因。您可以在任何合适的浏览器中使用,例如firefox,只需通过view检查使用的编码。好的,我无法标记您的答案,因为我的问题实际上没有解决,但您提供了一些线索。我感谢您的努力。我已经尝试将字符集unicode更改为charset=UTF-16,但没有帮助。当Tomcat或Websphere生成charset=unicode的页面时,他们会使用某种编码将页面发送到客户端,我不知道这种编码是什么,但它解决了我的特定问题,而且出于某种原因Weblogic的行为会有所不同。我建议阅读链接文章以了解发生了什么,这样你就可以更容易地找到根本原因。您可以在任何合适的浏览器中,例如firefox,只需通过view检查使用的编码。好的,我无法标记您的答案,因为我的问题实际上没有解决,但您向我提供了一些线索,我感谢您的努力。Guy,您是否可以粘贴Websphere生成的页面hexdump的摘录以查看实际的编码?Guy,您是否可以粘贴Websphere生成的页面hextump的摘录以查看实际编码?