2011-03-14 92 views
2

我找不到一个正确的方式将目录添加到我的应用程序上下文jboss 6. 我将使用此映射的静态内容。有人能帮我一下吗?jboss 6虚拟目录

+0

您是否可以不将该目录添加到部署档案文件中,或者您不能读取档案文件中的文件? – ThomasRS 2011-03-14 22:14:32

+0

事实上,我有像文件服务器中的照片一样的静态内容。这个文件服务器共享被映射到jboss服务器中作为一个目录...显然这个目录不在我的应用上下文中。所以我得把这个外部目录映射到应用上下文中......我可以在tomcat 6上做得很好......但是我仍然无法在jboss 6中做同样的事情。 – user659510 2011-03-14 22:43:21

+0

有关类似的问题,请参阅http://community.jboss.org/message/531424和http://community.jboss.org/message/531424,我试图解压缩.war并映射目标目录(第二秒时间(?))到生成的目录(Web应用程序)的根目录或子目录。 – ThomasRS 2011-03-14 23:06:10

回答

3

有没有更多的“虚拟目录”中的JBoss 6.显然,这出去与JBoss 5.我发现是唯一可用的选项:

  1. 创建一个空白/ WEB-INF /网页。在你的静态内容目录中使用xml(像< web-app/>),并在你的jboss deploy目录中创建一个带有.war扩展名的符号链接。您也可以将包含静态内容的目录复制到您的deploy目录,但是我发现一个更有用的符号链接。
  2. 创建,如果你使用像Spring MVC的3 Web框架,你可以使用“资源”功能,以服务内容为您提供从配置目录(讨论here
  3. 静态内容的一个servlet web应用程序(讨论here
+0

符号链接对我无效。我不得不使用外部部署。 Mybe我的JBoss被配置为不遵循符号链接? – 2012-04-26 21:05:19

0

坏消息是,你只能服务在JBoss应用程序的静态内容。好消息是,将任何文件夹转换为应用程序文件夹非常简单。

最简单的解决方案是将所有静态内容复制到您的server\default\deploy\ROOT.war目录中。

更复杂的解决方案如下。

  • 复制在你想要把你 静态内容的位置ROOT.war文件夹。

  • 重命名ROOT.war到任何名字,你喜欢,但它必须与.war, 例如my_static_content.war结束。

  • 将所有静态内容放入该目录。

  • 启用外部部署到包含您的静态内容文件夹的文件夹。外部与JBoss 6JBoss 5

  • 重启JBoss

  • 您的内容部署将进入URI http:\\localhost:8080\my_static_content\。您必须指定要提供的文件的确切名称,因为不允许列出目录。

0

this thread帮助我得到静态内容的外部目录在JBoss EAP 5.1提供了在不使用环节,而不会移动或重命名文件夹ROOT.war。

请注意,您仍然需要创建一个目录结构来欺骗jboss来提供您的内容。这并不像在server.xml文件中将<上下文>子元素添加到<主机名=“localhost”>那样简单。它看起来像一个黑客,但至少它的作品。