2011-11-14 16 views
1

tomcat 6.0.27にwarファイルをデプロイしようとしています。このwarファイルには、spring confとjava beansと通常のhtmlなどがあります。このwarファイルは、Windowsプラットフォームにインストールされたtomcatにうまく配置されます。 Linuxへ展開しようとしたときただし、以下は、Tomcatのログに表示されるエラーです(とアプリケーションがデプロイされていない)展開時のTomcatエラー

SEVERE: ContainerBase.addChild: start: 
LifecycleException: Error initializaing : java.lang.IllegalArgumentException: The archive [jar:file:/var/lib/tomcat6/webapps/afghlcustomer.war!/] is malformed and will be ignored: an entry contains an illegal path [/] 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4217) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526) 
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:905) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:525) 
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1359) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) 
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(Unknown Source) 
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(Unknown Source) 
    at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1475) 
    at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:645) 
    at org.apache.catalina.manager.ManagerServlet.doPut(ManagerServlet.java:432) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:640) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:558) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    at java.lang.Thread.run(Unknown Source) 

どのように私はこの問題を解決するのですか?どこから始めますか?

+0

WARファイルをどのように構築していますか? – Franklin

+0

@Franklin私は、antとivyを使ってwarファイルを構築しています。スクリプトを見たいですか? – Khush

+0

クイックフィックスとして、展開されたフォルダをWARファイルではなく直接展開する方法はありますか?少なくとも、Linuxでの作業を知っていることでしょう。 – Franklin

答えて

0

JVMでbugにヒットした可能性がありますが、分解されたフォルダが正常に動作するはずです。

+0

私はこれを試しました。プロジェクトは展開されますが、私が以前に言ったように、彼らはお互いに衝突し始めます。 1つのプロジェクトが別のスプリングプロジェクトのコントローラーに電話をかけようとします。 – Khush

+0

私はWindowsプラットフォーム上でこのような問題はありません。 – Khush

+0

これはすでに分かっているはずですが、各プロジェクトにはwebappディレクトリに独自のフォルダがあります。右!!また、Spring Webservicesを使用していますか?同じTomcat上に2つのSpring WSアプリケーションが配備されたときも私はあまりにも奇妙な衝突を経験しました。 – Franklin