Tomcat configuration link in orbeon讲述了如何将tomcat直接配置到服务器静态内容(如images,java-script和css)到客户端计算机,并从Orbeon引擎中删除不必要的负载。
我正在使用tomcat 6.x和orbeon 3.9。
被修改
orbeon图片文件夹结构 d:\Server\apache-tomcat\webapps\orbeon3.9\WEB-INF\resources\images\forms_img
orbeon生成的图片网址 http://localhost:8080/orbeon3.9/images/forms_img/print.gif
图片网址的Orbeon代码 <xhtml:img src="/images/forms_img/print.gif" />
如果有人成功配置了它。请发布详细信息。
提前致谢
答案 0 :(得分:2)
如果您无法移动resources
文件夹,并且您不能使用任何Tomcat特定设置,请使用Tuckey Url Rewrite Filter。以下规则适用于我,因此它可以提供WEB-INF
文件夹中的内容:
<urlrewrite>
<rule>
<from>^/images/(.*)$</from>
<to type="forward">/WEB-INF/resources/images/$1</to>
</rule>
</urlrewrite>
Tuckey也可以处理.htaccess
个文件但我尚未使用它。也许链接的.htaccess
适用于它。
另一种解决方案:
我想您已使用网址格式web.xml
在/
中将orbeon servlet配置为documentation suggested:
<servlet>
<servlet-name>orbeon-main-servlet</servlet-name>
<servlet-class>
org.orbeon.oxf.servlet.OrbeonServletDelegate
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>orbeon-main-servlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
在Tomcat DefaultServlet
serves static contents中,为静态内容设置它:
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>
org.apache.catalina.servlets.DefaultServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.png</url-pattern>
<url-pattern>*.jpg</url-pattern>
...
</servlet-mapping>
然后填写url-pattern
列表。您的链接配置(实际上指向Apache HTTP Server配置,而不是Tomcat配置)是一个很好的起点。
请注意,这些模式不是常规正则表达式。检查Java Servlet Specification 12.2映射规范的语法(here is some example)。
根据您的修改,servlet-mapping
应该是这样的:
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/images/forms_img/*</url-pattern>
</servlet-mapping>
您必须将WEB-INF/resources/images/forms_img
文件夹移至您的网络应用中/images/forms_img
(因此它将位于d:\Server\apache-tomcat\webapps\orbeon3.9\images\forms_img
),因为WEB-INF
下的文件不可用。