2017-01-10 31 views
1

私は自分のコンピュータ上のコードを作業していて、そのコードを他のマシンにインポートしました。しかし、コードを展開して他のマシンで実行すると、Tomcatが正しく起動せず、エラーがスローされます。Tomcat 8がエラーをスローする: '開始時に子コンテナが失敗しました'

web.xmlファイル

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> 
    <display-name>Try</display-name> 
    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    <welcome-file>index.htm</welcome-file> 
    <welcome-file>index.jsp</welcome-file> 
    <welcome-file>default.html</welcome-file> 
    <welcome-file>default.htm</welcome-file> 
    <welcome-file>default.jsp</welcome-file> 
    </welcome-file-list> 
    <servlet> 
    <description>Apache CXF Endpoint</description> 
    <display-name>cxf</display-name> 
    <servlet-name>cxf</servlet-name> 
    <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>cxf</servlet-name> 
    <url-pattern>/services/ *</url-pattern> 
    </servlet-mapping> 
    <session-config> 
    <session-timeout>60</session-timeout> 
    </session-config> 
    <servlet> 
    <description>JAX-RS Tools Generated - Do not modify</description> 
    <servlet-name>JAX-RS Servlet</servlet-name> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>JAX-RS Servlet</servlet-name> 
    <url-pattern>/jaxrs/*</url-pattern> 
    </servlet-mapping> 
</web-app> 

コンソールログ:

2017年1月11日1時33分12秒AM org.apache.tomcat.util.digester。 SetPropertiesRule begin[サーバー/サービス/エンジン/ホスト/コンテキスト] プロパティ 'source'を 'org.eclipse.jst.jee.server:Try'に設定してください。が見つかりませんでしたプロパティが一致しています。 2017年1月11日1時33分12秒AM INFOログorg.apache.catalina.startup.VersionLoggerListener:サーバー バージョン:Apache Tomcatの/ 8.0.39

SEVERE:子コンテナが開始 java.utilの中に失敗しました。コンカレント・エクセレンス:org.apache.catalina.LifecycleException:コンポーネント[StandardEngine [Catalina] .StandardHost [スタンダード・ホスト]。スタンダード・コンテキスト[/試し]]の開始に失敗しました at java.util.concurrent.FutureTask.report(FutureTask.java:122) org.apache.catalina.LifecycleException:によって引き起こされる)BLOCKQUOTE

は 成分[StandardEngineで[カタリナ] .StandardHost [ローカルホスト] .StandardContextを開始できませんでした[/ Try]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162) ... 6もっとひどい原因:java.lang.IllegalArgumentException:Unable to [ java.lang.ClassNotFoundException: 組織で com.sun.faces.config.ConfigureListener com.sun.faces.config.ConfigureListener] org.apache.catalina.core.ApplicationContext.addListener

で はによって引き起こされます。 apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)

私はスタックエクスチェンジで同じ問題に対して他の解決策を試しました。しかし、何も私のために働く。

+0

[java.lang.ClassNotFoundExceptionの可能な複製:com.sun.faces.config.ConfigureListener](http://stackoverflow.com/questions/10848341/java-lang-classnotfoundexception-com-sun-faces-config- configurelistener) – Berger

+0

@Berger:私はjsfを使用していないし、 'Mojarra'はweb.xmlにありません。 –

+0

'com.sun.faces.config.ConfigureListener'はJSFクラスです。何かがあなたのサーバーで使用されます。 – Berger

答えて

0

原因クラスがコンピュータには存在しますが、ターゲットマシンには存在しないようです。このクラスは通常jsf-impl.jarまたはjsf-ri.jarライブラリに属します。

両方のマシンに同じ戦争を展開しているので(そのことを前提としています)、そのライブラリは戦争にあわないので、コンピュータのTomcatランタイムに入りそうです:<tomcat>/libディレクトリを探して、ターゲットマシンのTomcat libディレクトリ。

関連する問題