JSP-使用src“绘制图像;num%C2%B2.jpg“;

JSP-使用src“绘制图像;num%C2%B2.jpg“;,jsp,Jsp,我创建了一个静态jsp页面,其中一个图像的src设置为num%C2%B2.jpg(图像的实际名称为num².jpg) 但是apache无法定位该映像 我在谷歌上搜索了一个示例应用程序,发现了一个图像库- 但是,即使是这个应用程序也会中断num².jpg 有什么问题吗?如您所见,²已被编码为两个字符-%C2%B2。 这意味着您可能正在用unicode编码文件名。您需要确保在从文件系统读回文件时也使用了unicode 我不是一个java程序员,所以这是我能帮到你的,但这显然是一个编码问题。您可以尝试

我创建了一个静态jsp页面,其中一个图像的src设置为num%C2%B2.jpg(图像的实际名称为num².jpg) 但是apache无法定位该映像

我在谷歌上搜索了一个示例应用程序,发现了一个图像库- 但是,即使是这个应用程序也会中断num².jpg


有什么问题吗?

如您所见,²已被编码为两个字符-%C2%B2。 这意味着您可能正在用unicode编码文件名。您需要确保在从文件系统读回文件时也使用了unicode

我不是一个java程序员,所以这是我能帮到你的,但这显然是一个编码问题。您可以尝试在url编码之前将其转换为ASCII

一个快速的测试是将“num%B2.jpg”放在地址栏中,看看它是否有效。

使用
标记(或在JSP中)将编码更改为拉丁语1或Apache期望的任何内容

但是,这可能会打断页面上的某些其他字符(在所选字符集之外)

编辑:
或者,在将URL插入JSP之前对其进行URL编码
java.net.URLEncoder
或JSTL的
可以用来实现这一点。

我必须在apache tomcat下的server.xml的连接器设置中添加URIEncoding=“UTF-8”

尝试了这一点。。但即使这样,我也必须添加URIEncoding=“UTF-8”在server.xml中的连接器设置中,这解决了问题..但引发了另一个..我无法始终控制应用程序运行的环境..我还需要支持阿拉伯文和中文字符的图像谢谢您的帮助:)