我创建了一个静态jsp页面,其中src设置为 num%C2%B2.jpg 的图像(图像的实际名称为num².jpg) 但是apache无法找到图像..
我用Google搜索了一个示例应用程序并找到了一个图片库 - https://jgallery.dev.java.net/ 但即使这个应用程序也会因num².jpg
而中断可能是什么问题?
答案 0 :(得分:1)
使用您的JSP中的<@page encoding>
标记(或&lt;%response.setCharacterEncoding%&gt;)将编码更改为Latin 1或Apache期望的任何内容。
但是,这可能会破坏页面上的某些其他字符(在所选字符集之外)。
编辑:
或者,在将URL插入JSP之前对URL进行编码。可以使用java.net.URLEncoder
或JSTL的<c:url>
来做到这一点。
答案 1 :(得分:1)
我必须在apache tomcat下的server.xml中的连接器设置中添加URIEncoding =“UTF-8”
答案 2 :(得分:0)
如您所见,²已编码为两个字符 - %C2%B2 。 这意味着您可能在unicode中编码文件名。您需要确保从文件系统读回文件时也使用了unicode。
我不是一个java程序员,所以我可以帮助你,但它肯定是一个编码问题。您可以尝试将其转换为ASCII,然后再对其进行编码...
快速测试是将“num%B2.jpg”放在地址栏中,看看它是否有效。