探讨:Jboss4.0下的webApp虚拟目录映射配置问题

04-09-16 zmg229
经过研究,我可以断定JBoss_Home/server/default/下的conf等同于Tomcat_Home(standalone版本)下的conf目录(以上JBoss与Tomcat的版本分别为:4.0和5.0,JBoss4.0已集成了tomcat5.0),因为在JBoss的控制台界面上

我们可以清楚地通过JBoss System Properties,得到JBoss认定的Catalina_home为JBoss_Home/server/default,那么我们可以认为,集成了Tomcat5.0的JBoss4.0下的conf目录

,可以与Tomcat5.0 standalone版本一样,我们可以在其下放入web app的虚拟目录配置xml文件,经过比较JBoss下的conf下有jboss.web/localhost目录,而Tomcat_Home(standalone版本)conf下

也有Catalina/localhost目录,尝试将Tomcat_Home/conf/Catalina/localhost/下的Web App虚拟目录配置文件(在Tomcat standalone版本里工作正常),copy到JBoss的conf/jboss.web/localhost下

重启JBoss,正常启动未报错,但设定的Web App虚拟目录未生效。百思不得其解中......(JBoss下那个conf/jboss.web/localhost目录到底是做什么用的?安装完JBoss后,该目录一直为空;亦尝试在JBoss conf下创建Catalina/localhost目录,然后copy xml文件,结果一样)

JBoss的deploy发布目录可以在jboss-service.xml里指定, 见

<attribute name="URLs">

deploy/

</attribute>

不过,这个目录都是相对于default的相对目录,若是有盘符的绝对路径,jboss不认,若是想将另外一个盘的web app工作目录映射成一个jboss的虚拟路径,真的没招了吗?一定要在deploy下开发web app吗?

我可是在eclipse下开发web app的哟,不想动目前工程所在的目录了的!

banq
2004-09-24 09:22
>一定要在deploy下开发web app吗

可以在Jboss.xml/jboss-service.xml最后一段设置一下你的Web目录绝对路径。

zmg229
2004-09-27 15:15
谢谢彭大将军的回复。

不过,我在jboss-service.xml里加入

<attribute name="URLs">

deploy/,file:///E:/samples/JBossTest/

</attribute>

后,启动JBoss 4.0时,出现错误:

...

15:15:09,437 INFO [TomcatDeployer] deploy, ctxPath=/web-console, warUrl=file:/D:/develop/jboss-4.0.0RC1/server/default/tmp/deploy/tmp41588web-console-exp.war/

15:15:16,890 INFO [TomcatDeployer] deploy, ctxPath=/HelloWorld, warUrl=file:/E:/samples/JBossTest/web.war/

15:15:18,734 WARN [JARDeployer] Failed to add deployable jar: file:/D:/develop/jboss-4.0.0RC1/server/default/tmp/deploy/tmp41589HelloWorldExample.java

java.util.zip.ZipException: error in opening zip file

at java.util.zip.ZipFile.open(Native Method)

at java.util.zip.ZipFile.<init>(ZipFile.java:112)

at java.util.jar.JarFile.<init>(JarFile.java:127)

at java.util.jar.JarFile.<init>(JarFile.java:65)

at org.jboss.deployment.SubDeployerSupport.processNestedDeployments(SubDeployerSupport.java:245)

at org.jboss.deployment.SubDeployerSupport.init(SubDeployerSupport.java:143)

...

以下是我的项目目录结构:

E:.

│ .classpath

│ .project

├─src

│ └─hello

│ └─world

│ HelloWorldExample.java

└─web.war

└─WEB-INF

│ jboss-web.xml

│ web.xml

└─classes

└─hello

└─world

HelloWorldExample.class

E:\samples\JBossTest>

不知问题出在什么地方?请指教!

zmg229
2004-09-27 15:23
目录结构如下:

猜你喜欢