gpt4 book ai didi

servlets - Websphere 8.5 Liberty Profile - Servlet API setLocale

转载 作者:行者123 更新时间:2023-12-02 02:06:07 25 4
gpt4 key购买 nike

我正在使用带有 Fixpack 1 的 Websphere 8.5 Liberty Profile,遇到了以下似乎违反 Servlet API 的问题。

如果响应正文被写入响应输出流 (HttpServletResponse#getOutputStream()),则在 response.setLocale() 之后不会设置 Content-Language 响应 header 。如果正文写在响应编写器上,它工作正常 (HttpServletResponse#getWriter())

以下 JSP 不返回 Content-Language 响应 header :

<%@ page contentType="text/plain;charset=ISO-8859-1" session="false" import="java.util.*" %><% 
response.setLocale(Locale.ITALY);

java.io.OutputStream os = response.getOutputStream();
try {
os.write("Hello World".getBytes("ISO-8859-1"));
} finally {
os.close();
}
%>

请注意,JSP 不得包含 <% ... %> 之外的任何字符,即使是文件末尾的尾随换行符也不行。我在这里使用 JSP 只是为了重现这个案例——当然,编写器是正常的方式。我们在 Java 代码内部使用#getOutputStream。

我的假设是否正确,即此行为违反了 Servlet 规范?如果是这样,向 IBM 报告这些错误的最佳方式是什么?

我发现了一个与 Content-Language 响应 header 稍微相关的错误报告,该错误报告仅针对 Liberty Profile 报告(并已在 FP1 中修复):http://www-01.ibm.com/support/docview.wss?rs=180&uid=swg1PM67523

最佳答案

我建议使用 this page 向 IBM 报告错误在 WASdev 社区。如果您不熟悉 WASdev 社区,它也是了解更多关于 Liberty 配置文件的好地方,它有一些很棒的教程。

关于servlets - Websphere 8.5 Liberty Profile - Servlet API setLocale,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14953347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com