在阅读有关如何在tomcat上处理图像的各种问题后,我按照以下方法在tomcat上设置带有图像的文件夹的方法: Simplest way to serve static data from outside the application server in a Java web application但它没有用,我无法理解我做错了什么。
我已经按照描述在server.xml中设置了上下文:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="C:\ServerFiles\" path="/images" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
我也试过这个:
<Context docBase="C:\ServerFiles" path="/images" />
而不是上述。
图片位于
C:\ServerFiles
,其名称为index.jpg
这就是我尝试用jsf
检索它的方法<img src="/images/index.jpg" />
但它确实无法运作
你能帮帮我吗?我无法理解我做错了什么。答案 0 :(得分:0)
如果编辑Tomcat的server.xml
(或context.xml
或web.xml
或其/conf
文件夹中没有的内容)似乎无效,那么& #39;强烈建议您使用已接管Tomcat控件的IDE。例如,Eclipse默认情况下会这样做。在Eclipse中添加Tomcat服务器时,它基本上会在IDE的 Servers 项目中创建其/conf
文件夹的副本,使用IDE工作区作为部署空间并仅使用Tomcat服务器的引擎,用于针对 Servers 项目中的配置和工作区内的部署运行项目。
你基本上有两个选择:
改为编辑 Servers 项目中的配置文件。
告诉Eclipse 不从Tomcat接管控制权,而是直接使用(并操纵!)它。双击 Servers 视图中的Tomcat条目,在服务器位置部分中选择使用Tomcat安装选项。
答案 1 :(得分:-1)
你定义Context的方式应该有效。我交叉检查了一个我执行此操作的项目,我在server.xml
上没有看到任何问题。
也许您在网络模块的context.xml
文件夹中有一个单独的METAINF
,它会覆盖此处的设置。
BTW第二个例子没有尾随\
是正确的方法。