前提・実現したいこと
閲覧いただきありがとうございます。
Javaの超初心者です。
Eclipse4.5 MarsとSpringを使ってJavaプログラムを作成しています。
ただ、環境が壊れてしまい、一からEclips、Springをインストール
してプロジェクトを作成しているのですが、サーバーを起動した時点で
以下のようなエラーが発生してしまいます。
手順は下記のとおりで特におかしいことはしていないと思います。
どこに原因があるのかどなたかご教授いただけないでしょうか。
【手順】
①Eclipse4.5 Mars Pleiades All in Oneをダウンロード。
②7-ZipでC:直下に①の圧縮ファイルを解凍。
③環境変数Pathに「C:\pleiades\java\8\bin;」を追記、CLASSPATHに「.」を追記。
④Eclipseを起動。
⑤ウィンドウ>設定>Tomcat>JVM設定にて「JRE」をjava6からjava8に変更。
⑥ウィンドウ>設定>一般>コンテンツ・タイプ>テキスト>Javaプロパティー・ファイルの「デフォルト・エンコード」をUTF-8に変更。
⑦ウィンドウ>設定>一般>エディター>*.propertiesの「関連付けられたエディター」のLimyプロパティ・エディターをデフォルトに設定。
⑧ウィンドウ>設定>一般>ネットワークにて「アクティブ・プロバイダー」をネイティブからマニュアルに変更。
⑨⑧の画面でスキーマ:HTTPおよびHTTPSについて「ホスト」「ポート」(8080)「認証」「ユーザー」「パスワード」を設定、保存。
⑩ヘルプ>Eclipseマーケットプレイスにて"sts"で検索しても何もヒットしないため、代わりに「新規ソフトウェアインストール」にて「作業対象」にhttp://dist.springsource.com/release/TOOLS/update/e4.5を入力実行、表示されたソフトウェアを「すべて選択」しインストール。のち、再起動。
⑪ファイル>新規>その他>Spring>Spring Legacy Project>Spring MVC Projectを選択、プロジェクト名に「unit01」と入力。プロジェクトを作成。
⑫「unit01」を右クリック>プロパティ>Javaのビルド・パス>ライブラリにて「JREシステム・ライブラリ[JavaSE-1.6]」を「JREシステム・ライブラリ[JavaSE-1.8]」に変更。
⑬「unit01」を右クリック>プロパティ>プロジェクト・ファセット>Javaのバージョンを1.6から1.8に変更。
⑭⑪で作成されたPOM.xmlの内容が古いため、「java-version」を1.8に、「org.springframework-version」を4.3.7.RELEASEに、「build>plugin>configuration>source」を1.8に、同じく、「build>plugin>configuration>target」を1.8に変更、保存。
⑮POM.xmlを修正したため、「unit01」を右クリック>プロパティ>実行>Maven Installを実行。
⑯⑮が完了したら、「unit01」を右クリック>Maven>プロジェクトの更新を実行。
⑰サーバービューにて「サーバーのタイプ」をTomcat v8.0サーバーに、「サーバー・ランタイム環境」をTomcat8(Java8)に変更してサーバーを作成。
⑱⑰にて作成したサーバーを「構成済み」に追加して、完了。
⑲サーバを▶ボタンで開始。
発生している問題・エラーメッセージ
ERROR: org.springframework.web.context.ContextLoader - Context initialization failed org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 4 in XML document from ServletContext resource [/WEB-INF/spring/root-context.xml] is invalid; nested exception is org.xml.sax.SAXParseException; lineNumber: 4; columnNumber: 129; cvc-elt.1: 要素'beans'の宣言が見つかりません。 at ・ ・ ・ at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391) ... 22 more 重大: クラス org.springframework.web.context.ContextLoaderListener のリスナインスタンスにコンテキスト初期化イベントを送信中の例外です [木 7 25 14:58:15 JST 2019] 重大: One or more listeners failed to start. Full details will be found in the appropriate container log file [木 7 25 14:58:15 JST 2019] 重大: 以前のエラーのためにコンテキストの起動が失敗しました [/address] [木 7 25 14:58:15 JST 2019] 情報: Closing Spring root WebApplicationContext [木 7 25 14:58:15 JST 2019] INFO : org.springframework.web.context.support.XmlWebApplicationContext - Closing Root WebApplicationContext: startup date [Thu Jul 25 14:58:15 JST 2019]; root of context hierarchy WARN : org.springframework.web.context.support.XmlWebApplicationContext - Exception thrown from LifecycleProcessor on context close java.lang.IllegalStateException: LifecycleProcessor not initialized - call 'refresh' before invoking lifecycle methods via the context: Root WebApplicationContext: startup date [Thu Jul 25 14:58:15 JST 2019]; root of context hierarchy at org.springframework.context.support.AbstractApplicationContext.getLifecycleProcessor(AbstractApplicationContext.java:417) at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1002) at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:961) at org.springframework.web.context.ContextLoader.closeWebApplicationContext(ContextLoader.java:583) at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:116) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4859) at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5478) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:224) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:159) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) 重大: クラス org.springframework.web.context.ContextLoaderListener のリスナインスタンスにコンテキスト破棄イベントを送信中の例外です [木 7 25 14:58:15 JST 2019] 情報: Starting ProtocolHandler ["http-nio-8080"] [木 7 25 14:58:15 JST 2019] 情報: Starting ProtocolHandler ["ajp-nio-8009"] [木 7 25 14:58:15 JST 2019] 情報: Server startup in 2682 ms [木 7 25 14:58:15 JST 2019]
試したこと
・何回か同じことを実施しましたが、毎回同じ結果です。
・Eclipse2018-09で同じことを行おうとすると、別のエラー(※)が発生して事象を確認できませんでした。
※servlet-context.xml,root-context.xmlにて「'beans:beans'の宣言が見つかりません」と表示されてしまう。
【2019.8.1追記】
rubytomato様の手順の実行結果をご報告いたします。
■環境変数pathに通してあるjava.exeの確認
↓のように今まで環境変数pathには何も通していませんでした。これが原因でしょうか・・・
■ダウンロードファイルの検証
問題なし。
■サーバーの登録
問題なし。
■プロジェクトの確認
↓のように、赤いマーク(エラー)が表示されています。rubytomato様のスクショと微妙に違うのが気になります。
■プロジェクトの起動確認
↓のようにエラーとなってしまいます。
■手順にはないですが・・・
この時点でパッケージ・エクスプローラーを確認すると、servlet-context.xmlおよびroot-context.xmlにエラーが出ています。
とりあえず、途中経過をご報告いたします。
【2019.8.6追記】
rubytomato様の手順の実行結果をご報告いたします。
■https://start.spring.io/画面に遷移すると、下記のように何も表示されず、何も入力できない画面が表示されて先に進めない。
【2019.8.7追記】
rubytomato様の手順の実行結果をご報告いたします。
ブラウザをchromeに変えたら処理を続行できました。
その時の最後のハードコピーです。
【2019.8.8追記】
rubytomato様の手順の実行結果をご報告いたします。
unit01でプロジェクト更新を行った後の画面です。
【2019.8.9追記】
rubytomato様の手順の実行結果をご報告いたします。
【2019.8.19追記】
rubytomato様の手順の実行結果をご報告いたします。
回答2件
あなたの回答
tips
プレビュー