首页 文章

JBoss 4.2.3 EAR和Apache 2.2虚拟主机,jk_mod提供空白页面

提问于
浏览
2

我有一个EAR文件,我试图与JBoss 4.2.3上的各种WAR部署一起部署

各个独立的WAR部署都运行正常,只是EAR中包含的同一应用程序的副本,但是EAR部署及其包含的WAR无法正常工作 .

当我访问jboss-web.xml配置为与此EAR关联的虚拟主机时,我在浏览器中收到一个空白页面 . 与独立WAR部署关联的其他虚拟主机都可以正常工作,并以相同的方式配置 .

我在启动时没有错误,JBoss报告网站已启动 . 我在WAR的WEB-INF中有一个jboss-web.xml文件,它将它与server.xml中的定义联系起来 . 这适用于除EAR之外的所有其他类型的配置 . 我一直只是一个白页,好像JBoss无法将EAR中的WAR连接到主机,或者WAR没有正确启动或者我的配置有误 .

当我启动JBoss时,它会在webwar1.war / WEB-INF中创建flex和railo目录以及作为railo.ear / lib / railo-server的铁路服务器目录,但仍然只是为我提供一个空白页面 .

这是我的立场......

我有一组共享的Railo JAR文件位于/JBoss/server/default/deploy/jboss-web.deployer/railojars/lib(我告诉jboss-service.xml将其作为类路径包含在内)

我的site1.WAR和site2.WAR文件位于deploy文件夹中,每个文件都包含一个index.cfm和一个WEB-INF,其中web.xml和jboss-web.xml映射到虚拟主机 . 他们每个人都使用这个共享的Railo JAR实例并且运行完美 . 我在server.xml中使用docPath和appPath在外部文件夹中配置的站点使用此共享JAR安装并完美运行 . 一切都很好 .

如果我在/ JBoss / server / default / deploy文件夹(带有Railo lib文件夹的完整WAR)中放置一个railo1.war,railo2.war等,那些站点将使用WAR中包含的Railo实例 . 这也很棒 .

所以,我唯一的问题是:

在/ JBoss / server / default / deploy下我创建了railo.ear

在railo.ear里面是:META-INF,其中包含application.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN" "http://java.sun.com/j2ee/dtds/application_1_2.dtd">
<application id="RailoInstance1">
 <display-name>Railo3</display-name>
 <description>Railo3</description>
 <module id="Module1">
 <web>
  <web-uri>webwar1.war</web-uri>
  <context-root>/webwar1</context-root>
 </web>
 </module>
</application>

它还包含webwar1.war,其中包含:index.cfm和WEB-INF

WEB-INF有web.xml,lib和jboss-web.xml

jboss-web.xml看起来像这样:

<jboss-web>
    <context-root>/</context-root>
    <virtual-host>foo3.com</virtual-host>
</jboss-web>

从server.xml:

<Host name="foo3.com">
    <Alias>www.foo3.com</Alias>
</Host>

foo3.com正在使用jk_mod通过Apache的虚拟主机发送给JBoss . 映射到WAR部署的其他两个站点(foo1.com,foo2.com)配置完全相同,并且工作正常 .

WEB-INF包含lib文件夹,所以我希望这个webwar1.WAR实例使用该lib文件夹中包含的Railo JAR文件 . 问题在于,当我启动JBoss时,我的所有其他站点都配置了各种方式,但webwar1.war中的站点没有出现 . 我只是在浏览器中看到一个白页 .

因此,webwar1.war文件中WEB-INF中的jboss-web.xml没有连接到server.xml中定义的,或者其他地方出错了 . 我的其他独立WAR安装和共享JAR站点都在其jboss-web.xml中标记了各自的描述符,并且具有与此部署相同的内容 .

所以,我只想弄清楚我需要做些什么来让最后的EAR配置工作 .

我现在尝试的方式似乎每个WAR都会尝试使用它包含的JAR文件,但是我希望为整个EAR提供一组共享的JAR文件,然后耳中的每个WAR文件都使用这些JARS .

我希望能够在这一个EAR配置下拥有webwar1.war,webwar2.war等,所以我将lib文件夹从webwar1.war / WEB-INF / lib移到了railo.ear / lib

我很乐意以这种方式进行设置,但是我甚至无法在EAR内部获得一个带有自己的JAR文件的WAR . 我尝试了这个新配置,并在浏览器中获得相同的空白页面 .

有任何想法吗?

JBoss没有给我任何错误 . 另一个奇怪的事情是,当我尝试访问配置不正确且未启动的站点时,我没有像Apache那样收到错误 . 如果我访问一个未在JBoss中设置为主机的站点,并且我通过jk_mod重定向到JBoss,我会看到JBoss默认页面 . 当我在railo.ear中访问与此webwar1.war关联的虚拟主机时,我没有看到此默认页面,因此JBoss必须知道它应该对域/虚拟主机执行某些操作,否则它会告诉我默认的JBoss页面 . 相反,我看到一个空白的白色 .

我还要提一下,这适用于JBoss 5.1 . railo.ear配置完全相同的方式锁定到虚拟主机上并正常工作 .

救命?谢谢!!!!

1 回答

相关问题