【问题标题】:tomcat virtual directory mapping for static file browsing as resource not working for japanese filename用于静态文件浏览的tomcat虚拟目录映射作为资源不适用于日语文件名
【发布时间】:2025-12-28 16:10:11
【问题描述】:

以下是我作为 tomcat 上下文配置的配置

<Context docBase="<dir_path>" path="/resources">
<Resources className="org.apache.naming.resources.FileDirContext"
          allowLinking="true"  />

此配置能够以英文作为文件名获取资源,例如:test.txt 但它不适用于日语文件名 ex:- おきかえGP_TEST.txt 。我猜它不适用于任何非英语语言环境。

使用 weblogic.xml 中的 weblogic 虚拟目录映射可以重现同样的事情

<virtual-directory-mapping>
    <local-path><dir_path></local-path>
    <url-pattern>/resources/*</url-pattern>
</virtual-directory-mapping> 

【问题讨论】:

    标签: tomcat weblogic


    【解决方案1】:

    我不知道你已经解决了,但是这可能会对你有所帮助。

    在您的端口连接器中添加这些属性。(在 server.xml 中)

    URIEncoding="UTF-8"
    useBodyEncodingForURI="true"
    

    我的设置如下。(我使用的是 8400 端口)

    <Connector port="8400" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="9400" 
                   URIEncoding="UTF-8"
                   useBodyEncodingForURI="true" />
    

    【讨论】:

      最近更新 更多