nxzrj
@nxzrj

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

SpringBootをTomcatにデプロイ。POSTとGETが認識されない?

解決したいこと

springbootのプロジェクト(VSCodeで起動し動作確認済み)のwarファイルを作成しtomcatにデプロイ。

http://localhost:8080/stampproject-0.0.1-SNAPSHOT/stmpprjct と入力し最初のログイン画面に遷移確認。

IDやパスワードを入力してPOSTである/loginやGETの/registerを押してもtomcatで404エラーが出てしまい遷移できずにいます。

情報として、http://localhost:8080/stampproject-0.0.1-SNAPSHOT/stmpprjctがログイン画面なのですが、
/loginや/registerを送るとhttp://localhost:8080/stampproject-0.0.1-SNAPSHOT/loginではなく、
http://localhost:8080/loginと間のパスが抜けています。

発生している問題・エラー

HTTPステータス 404 – 見つかりません
タイプ ステータスレポート

メッセージ 要求されたリソース [/login] は利用できません。

説明 オリジンサーバーは、ターゲットリソースの現在の表現を見つけられなかったか、またはそれが存在することを開示するつもりはありません。

Apache Tomcat/10.1.15

該当するソースコード

@PostMapping("/register")
    public String signup(@RequestParam("newUserid") String userid, @RequestParam("newPassword") String password,Model model) {
        if (loginRepository.existsById(userid)) {

            model.addAttribute("error", "ユーザーIDは既に使用されています");
            return "login/register";

        }else{

            // データベースに新規ユーザーを保存する処理
            Login user = new Login();
            user.setUserid(userid);
            user.setPassword(password);
            user.setStamps(0);
            user.setDev(0);
            user.setVote(0);
            loginRepository.save(user);

            return "login/index";
            
        }
        
    }

    
    @PostMapping("/login")
    public ModelAndView index(ModelAndView mv, @RequestParam("userid") String userid,@RequestParam("password") String password)throws WriterException, IOException{

        File file2 = new File("src/main/resources/static/qrcode.png");
        file2.delete();

        

        //IDとパスワードの情報をaddObjectでmain画面へ持っていく。
        // データベースからユーザー情報を取得
        Login user = loginRepository.findById(userid).orElse(null);

        

        if(session.getAttribute("logedUser")!=null){
            session.removeAttribute("logedUser");
        }
        if(session.getAttribute("User")!=null){
            session.removeAttribute("User");
        }

        // ユーザーが存在するか確認し、パスワードを照合
        if (user != null && user.getPassword().equals(password) && user.getDev() == 1) {
            session.setAttribute("logedUser", user);
            session.setAttribute("User", userid);//String 型じゃないとできない
            // ログイン成功の場合

            mv.setViewName("login/devmain");

        } else if (user != null && user.getPassword().equals(password) && user.getDev() == 0) {


            session.setAttribute("logedUser", user);
            session.setAttribute("User", userid);//String 型じゃないとできない
            // ログイン成功の場合

            
            QRCodeWriter writer = new QRCodeWriter();
            BitMatrix bitMatrix = writer.encode(user.getUserid(), BarcodeFormat.QR_CODE, 200, 200);
            ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
            MatrixToImageWriter.writeToStream(bitMatrix, "png", outputStream);

            
            byte[] bytes = outputStream.toByteArray();


            // 画像ファイルを生成する
            File file = new File("src/main/resources/static/qrcode.png");
            Files.write(file.toPath(), bytes);

            List<OriginalMenu> menuList = originalMenuRepository.findAll();

            mv.addObject("menuList", menuList);

            mv.addObject("stamps",user.getStamps());
            mv.addObject("qr",0);
            

            mv.setViewName("login/main");

        } else{
            
            // ログイン失敗の場合


            String errormessage = "ユーザIDまたはパスワードが間違っています。";
            mv.addObject("error", errormessage);


            mv.setViewName("login/index");
        }

        return mv;

    }

自分で試したこと

自分で試したこととしては、application.propertiesで

server.servlet.context-path=/stampproject-0.0.1-SNAPSHOT

と書き込んでみたり、controllerアノテーションの下に

@RequestMapping(value="/stampproject-0.0.1-SNAPSHOT")

と書き込む、
実際にhttp://localhost:8080/stampproject-0.0.1-SNAPSHOT/login
とURLを打ちこんでみるとtomcatのエラーではなくimage.png
image.png

このエラーが出てきました。いろいろ試しては見ましたがどうも解決できません。
どうかご助力いただけると助かります。
よろしくお願いいたします。

0

5Answer

404エラーが出るのには色んな理由がありますが、まず、上のリンクのようにSpringBootServletInitializerを継承しているかどうか確認してください。

1Like

Comments

  1. @nxzrj

    Questioner

    コメントありがとうございます

    package com.example.stampproject;
    
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.builder.SpringApplicationBuilder;
    import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
    
    @SpringBootApplication
    public class StampprojectApplication extends SpringBootServletInitializer{
    
    	public static void main(String[] args) {
    
    		System.out.println(System.getProperty("file.encoding"));
    
    		SpringApplication.run(StampprojectApplication.class, args);
    
    	
    	}
    
    	@Override
    	protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(StampprojectApplication.class);
        }
    
    
    }
    

    一応継承はできているはずです、、、
    よろしくお願いします。

  2. image.png

    次に、TomcatのバージョンとJAVAのバージョンを確認してください。 外部からデプロイする場合は、実際のサーバー上のTomcatとJAVAのバージョンの互換性が必要です。

  3. @nxzrj

    Questioner

    tomcatは10.1.15を使用していてjavaは17.0.8ですのでおそらく大丈夫かと思われます。

  4. もしそうなら、tomcatのlogsフォルダのcatalina.outのログを確認してもらえますか? 何の異常動作なくSpringが実行されるかログを見たいです。

  5. @nxzrj

    Questioner

    コメント遅れてすみません。
    image.png
    一通りフォルダ内を探してみたのですが、
    .outファイルが見当たらないのですが大丈夫でしょう、、、><

  6. catalinaのログを確認していただければと思います。

  7. @nxzrj

    Questioner

    27-Oct-2023 11:27:02.180 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Serverのバージョン名:     Apache Tomcat/10.1.15
    27-Oct-2023 11:27:02.185 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Server ビルド:            Oct 11 2023 23:38:40 UTC
    27-Oct-2023 11:27:02.186 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log サーバーのバージョン番号: 10.1.15.0
    27-Oct-2023 11:27:02.186 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log OS 名:                    Windows 10
    27-Oct-2023 11:27:02.186 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log OS バージョン:            10.0
    27-Oct-2023 11:27:02.187 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log アーキテクチャ:           amd64
    27-Oct-2023 11:27:02.187 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:                C:\Java\jdk-17.0.6
    27-Oct-2023 11:27:02.187 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM バージョン:           17.0.6+10-LTS
    27-Oct-2023 11:27:02.187 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM ベンダ:               BellSoft
    27-Oct-2023 11:27:02.187 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:            C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:27:02.187 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:            C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:27:02.220 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.util.logging.config.file=C:\Program Files\Apache Software Foundation\Tomcat 10.1\conf\logging.properties
    27-Oct-2023 11:27:02.220 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
    27-Oct-2023 11:27:02.220 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djdk.tls.ephemeralDHKeySize=2048
    27-Oct-2023 11:27:02.220 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
    27-Oct-2023 11:27:02.220 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.lang=ALL-UNNAMED
    27-Oct-2023 11:27:02.221 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.io=ALL-UNNAMED
    27-Oct-2023 11:27:02.221 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.util=ALL-UNNAMED
    27-Oct-2023 11:27:02.221 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
    27-Oct-2023 11:27:02.221 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
    27-Oct-2023 11:27:02.221 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:27:02.222 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:27:02.222 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.io.tmpdir=C:\Program Files\Apache Software Foundation\Tomcat 10.1\temp
    27-Oct-2023 11:27:02.226 情報 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 商用環境に最適な性能を発揮する APR ベースの Tomcat ネイティブライブラリが java.library.path [C:\Java\jdk-17.0.6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files\Apache Software Foundation\Tomcat 10.1\bin;C:\Java\jdk-17.0.6\bin;C:\Program Files\Java\jdk1.8.0_321\bin;C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2022.1\bin;;C:\Users\nte005\AppData\Local\Programs\Microsoft VS Code\bin;.] に存在しません。
    27-Oct-2023 11:27:02.443 情報 [main] org.apache.coyote.AbstractProtocol.init プロトコルハンドラ ["http-nio-8080"] を初期化します。
    27-Oct-2023 11:27:02.465 重大 [main] org.apache.catalina.util.LifecycleBase.handleSubClassException コンポーネント [Connector["http-nio-8080"]] の初期化に失敗しました
    	org.apache.catalina.LifecycleException: プロトコルハンドラの初期化に失敗しました
    		at org.apache.catalina.connector.Connector.initInternal(Connector.java:1015)
    		at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:127)
    		at org.apache.catalina.core.StandardService.initInternal(StandardService.java:554)
    		at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:127)
    		at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:1010)
    		at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:127)
    		at org.apache.catalina.startup.Catalina.load(Catalina.java:747)
    		at org.apache.catalina.startup.Catalina.load(Catalina.java:769)
    		at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    		at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    		at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    		at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    		at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:307)
    		at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:477)
    	Caused by: java.net.BindException: Address already in use: bind
    		at java.base/sun.nio.ch.Net.bind0(Native Method)
    		at java.base/sun.nio.ch.Net.bind(Net.java:555)
    		at java.base/sun.nio.ch.ServerSocketChannelImpl.netBind(ServerSocketChannelImpl.java:337)
    		at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:294)
    		at org.apache.tomcat.util.net.NioEndpoint.initServerSocket(NioEndpoint.java:247)
    		at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:202)
    		at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1280)
    		at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1293)
    		at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:624)
    		at org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:77)
    		at org.apache.catalina.connector.Connector.initInternal(Connector.java:1013)
    		... 13 more
    27-Oct-2023 11:27:02.466 情報 [main] org.apache.catalina.startup.Catalina.load サーバーの初期化 [469] ミリ秒
    27-Oct-2023 11:27:02.517 情報 [main] org.apache.catalina.core.StandardService.startInternal サービス [Catalina] を起動します
    27-Oct-2023 11:27:02.518 情報 [main] org.apache.catalina.core.StandardEngine.startInternal サーブレットエンジンの起動:[Apache Tomcat/10.1.15]
    27-Oct-2023 11:27:02.543 情報 [main] org.apache.catalina.startup.HostConfig.deployWAR Webアプリケーションアーカイブ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\stampproject-0.0.1-SNAPSHOT.war] を配備します
    27-Oct-2023 11:27:05.061 情報 [main] org.apache.jasper.servlet.TldScanner.scanJars 少なくとも1つのJARでTLDをスキャンしましたが、TLDが含まれていませんでした。スキャンしたもののTLDが見つからなかったJARの完全なリストについては、このロガーのデバッグログを有効にしてください。スキャン中に不要なJARをスキップすると、起動時間とJSPのコンパイル時間が短縮されます。
    27-Oct-2023 11:27:10.482 情報 [main] org.apache.catalina.startup.HostConfig.deployWAR Web アプリケーションアーカイブ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\stampproject-0.0.1-SNAPSHOT.war] の配備は [7,938] ミリ秒で完了しました
    27-Oct-2023 11:27:10.483 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web アプリケーションディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\docs] を配備します
    27-Oct-2023 11:27:10.522 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory ディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\docs] の Web アプリケーションの配備は [39] ミリ秒で完了しました。
    27-Oct-2023 11:27:10.523 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web アプリケーションディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\manager] を配備します
    27-Oct-2023 11:27:10.568 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory ディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\manager] の Web アプリケーションの配備は [46] ミリ秒で完了しました。
    27-Oct-2023 11:27:10.569 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web アプリケーションディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\ROOT] を配備します
    27-Oct-2023 11:27:10.592 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory ディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\ROOT] の Web アプリケーションの配備は [24] ミリ秒で完了しました。
    27-Oct-2023 11:27:10.596 情報 [main] org.apache.catalina.startup.Catalina.start サーバーの起動 [8129] ミリ秒
    

    このようになっていました

  8. Port8080を既に他のところで使っていて、実行できないエラーのようです。 8080を使ってる理由については、もう少し見てみる必要がありますが、参考できるリンクを共有します。

  9. @nxzrj

    Questioner

    ビルドのために使用していたポートでした。
    他をシャットダウンしてtomcatのみでstartしたところ

    27-Oct-2023 11:36:13.368 情報 [Thread-3] org.apache.coyote.AbstractProtocol.pause ProtocolHandler ["http-nio-8080"] を一時停止します。
    27-Oct-2023 11:36:13.379 情報 [Thread-3] org.apache.catalina.core.StandardService.stopInternal サービス [Catalina] を停止します
    27-Oct-2023 11:36:13.423 警告 [Thread-3] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads Webアプリケーション [stampproject-0.0.1-SNAPSHOT] は [mysql-cj-abandoned-connection-cleanup] という名前のスレッドを開始したようですが、停止に失敗しました。これはメモリリークを引き起こす可能性が非常に高いです。スレッドのスタックトレース: 
     java.base@17.0.8/java.lang.Object.wait(Native Method)
     java.base@17.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
     com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:91)
     java.base@17.0.8/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
     java.base@17.0.8/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
     java.base@17.0.8/java.lang.Thread.run(Thread.java:833)
    27-Oct-2023 11:36:13.428 情報 [Thread-3] org.apache.coyote.AbstractProtocol.stop ProtocolHandler ["http-nio-8080"]の停止中
    27-Oct-2023 11:36:13.438 情報 [Thread-3] org.apache.coyote.AbstractProtocol.destroy ProtocolHandler ["http-nio-8080"] を破棄します。
    27-Oct-2023 11:36:14.323 情報 [mysql-cj-abandoned-connection-cleanup] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading 不正なアクセス: このWebアプリケーションのインスタンスは既に停止されています  Could not load []. 不正なアクセスを引き起こしたスレッドを終了させ、投げられたエラーによりデバッグ用に次のスタックトレースが生成されましたが,機能に影響はありません
    	java.lang.IllegalStateException: 不正なアクセス: このWebアプリケーションのインスタンスは既に停止されています  Could not load []. 不正なアクセスを引き起こしたスレッドを終了させ、投げられたエラーによりデバッグ用に次のスタックトレースが生成されましたが,機能に影響はありません
    		at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1373)
    		at org.apache.catalina.loader.WebappClassLoaderBase.getResource(WebappClassLoaderBase.java:971)
    		at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.checkThreadContextClassLoader(AbandonedConnectionCleanupThread.java:123)
    		at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:90)
    		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    		at java.base/java.lang.Thread.run(Thread.java:833)
    27-Oct-2023 11:36:36.663 重大 [main] org.apache.catalina.startup.Catalina.stopServer シャットダウンポートが設定されていません。OSシグナルでServerをシャットダウンします。サーバはシャットダウンしません。
    27-Oct-2023 11:36:54.573 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Serverのバージョン名:     Apache Tomcat/10.1.15
    27-Oct-2023 11:36:54.576 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Server ビルド:            Oct 11 2023 23:38:40 UTC
    27-Oct-2023 11:36:54.578 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log サーバーのバージョン番号: 10.1.15.0
    27-Oct-2023 11:36:54.578 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log OS 名:                    Windows 10
    27-Oct-2023 11:36:54.578 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log OS バージョン:            10.0
    27-Oct-2023 11:36:54.578 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log アーキテクチャ:           amd64
    27-Oct-2023 11:36:54.578 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:                C:\Java\jdk-17.0.6
    27-Oct-2023 11:36:54.578 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM バージョン:           17.0.6+10-LTS
    27-Oct-2023 11:36:54.579 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log JVM ベンダ:               BellSoft
    27-Oct-2023 11:36:54.579 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:            C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:36:54.579 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:            C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:36:54.585 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.util.logging.config.file=C:\Program Files\Apache Software Foundation\Tomcat 10.1\conf\logging.properties
    27-Oct-2023 11:36:54.586 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
    27-Oct-2023 11:36:54.586 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djdk.tls.ephemeralDHKeySize=2048
    27-Oct-2023 11:36:54.586 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
    27-Oct-2023 11:36:54.586 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.lang=ALL-UNNAMED
    27-Oct-2023 11:36:54.587 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.io=ALL-UNNAMED
    27-Oct-2023 11:36:54.587 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.util=ALL-UNNAMED
    27-Oct-2023 11:36:54.587 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
    27-Oct-2023 11:36:54.588 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
    27-Oct-2023 11:36:54.588 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:36:54.588 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 10.1
    27-Oct-2023 11:36:54.589 情報 [main] org.apache.catalina.startup.VersionLoggerListener.log コマンドライン引数:       -Djava.io.tmpdir=C:\Program Files\Apache Software Foundation\Tomcat 10.1\temp
    27-Oct-2023 11:36:54.593 情報 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 商用環境に最適な性能を発揮する APR ベースの Tomcat ネイティブライブラリが java.library.path [C:\Java\jdk-17.0.6\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files\Apache Software Foundation\Tomcat 10.1\bin;C:\Java\jdk-17.0.6\bin;C:\Program Files\Java\jdk1.8.0_321\bin;C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2022.1\bin;;C:\Users\nte005\AppData\Local\Programs\Microsoft VS Code\bin;.] に存在しません。
    27-Oct-2023 11:36:54.776 情報 [main] org.apache.coyote.AbstractProtocol.init プロトコルハンドラ ["http-nio-8080"] を初期化します。
    27-Oct-2023 11:36:54.795 情報 [main] org.apache.catalina.startup.Catalina.load サーバーの初期化 [367] ミリ秒
    27-Oct-2023 11:36:54.834 情報 [main] org.apache.catalina.core.StandardService.startInternal サービス [Catalina] を起動します
    27-Oct-2023 11:36:54.834 情報 [main] org.apache.catalina.core.StandardEngine.startInternal サーブレットエンジンの起動:[Apache Tomcat/10.1.15]
    27-Oct-2023 11:36:54.854 情報 [main] org.apache.catalina.startup.HostConfig.deployWAR Webアプリケーションアーカイブ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\stampproject-0.0.1-SNAPSHOT.war] を配備します
    27-Oct-2023 11:36:57.063 情報 [main] org.apache.jasper.servlet.TldScanner.scanJars 少なくとも1つのJARでTLDをスキャンしましたが、TLDが含まれていませんでした。スキャンしたもののTLDが見つからなかったJARの完全なリストについては、このロガーのデバッグログを有効にしてください。スキャン中に不要なJARをスキップすると、起動時間とJSPのコンパイル時間が短縮されます。
    27-Oct-2023 11:37:02.253 情報 [main] org.apache.catalina.startup.HostConfig.deployWAR Web アプリケーションアーカイブ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\stampproject-0.0.1-SNAPSHOT.war] の配備は [7,398] ミリ秒で完了しました
    27-Oct-2023 11:37:02.254 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web アプリケーションディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\docs] を配備します
    27-Oct-2023 11:37:02.285 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory ディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\docs] の Web アプリケーションの配備は [32] ミリ秒で完了しました。
    27-Oct-2023 11:37:02.286 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web アプリケーションディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\manager] を配備します
    27-Oct-2023 11:37:02.325 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory ディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\manager] の Web アプリケーションの配備は [38] ミリ秒で完了しました。
    27-Oct-2023 11:37:02.325 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory Web アプリケーションディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\ROOT] を配備します
    27-Oct-2023 11:37:02.346 情報 [main] org.apache.catalina.startup.HostConfig.deployDirectory ディレクトリ [C:\Program Files\Apache Software Foundation\Tomcat 10.1\webapps\ROOT] の Web アプリケーションの配備は [21] ミリ秒で完了しました。
    27-Oct-2023 11:37:02.350 情報 [main] org.apache.coyote.AbstractProtocol.start プロトコルハンドラー ["http-nio-8080"] を開始しました。
    27-Oct-2023 11:37:02.379 情報 [main] org.apache.catalina.startup.Catalina.start サーバーの起動 [7583] ミリ秒
    
    

    とでました。
    また、卒業制作でプロジェクトを外部に公開しないといけないためIDEやSTS上で構築するのではなくtomcat単体でサーバー構築したいです、、
    お手数をおかけしますがよろしくお願いします。

  10. @nxzrj

    Questioner

    アクセスログを確認したところ

    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:29:19 +0900] "GET / HTTP/1.1" 200 11435
    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:29:44 +0900] "GET /stampproject-0.0.1-SNAPSHOT/stmpprjct HTTP/1.1" 200 1862
    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:30:09 +0900] "POST /login HTTP/1.1" 404 901
    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:30:16 +0900] "GET /register HTTP/1.1" 404 904
    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:30:42 +0900] "POST /login HTTP/1.1" 404 901
    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:30:48 +0900] "GET /register HTTP/1.1" 404 904
    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:30:50 +0900] "POST /login HTTP/1.1" 404 901
    0:0:0:0:0:0:0:1 - - [27/Oct/2023:11:33:31 +0900] "POST /login HTTP/1.1" 404 901
    
    

    やはりGETとPOSTだけ404が返されています、、、><

Comments

  1. @nxzrj

    Questioner

    回答ありがとうございます。
    Apacheを使用せず、Tomcatだけで起動しているのですがその場合でもhttps.confは存在しますか?
    素人質問ですみません。
    よろしくお願いします。

  2. Apacheを使っていなければ httpd.conf は無いかなと思いつつ、コメントしていました。ごめんなさい。

    ドキュメントルート周りの何かかなと、考えた次第です。
    htmlのbaseタグは使っていませんよね。

  3. @nxzrj

    Questioner

    謝らないでください><
    コメントしていただけるだけで嬉しいです。
    htmlタグのbaseは今初めて聞きました。
    使用していないです。

  4. トップページが出ているなら、↓これは違いますよね。


    ↓こちらは?

  5. @nxzrj

    Questioner

    コメントありがとうございます。
    一通り目を通してみましたが、トップページの表示はできるいるのでおそらく違うかと思われます、、、
    何度も何度もすみません><

  6. 念の為ですが、webapp配下のディレクトリ構成は正しいですよね。つづりも含めて。

返信遅れて申し訳ございません><
コメントありがとうございます。
image.png
webapp配下に入っています。
つづりは間違っていないはずです。

0Like

Comments

  1. その下の階層も大丈夫でしょうか?

  2. @nxzrj

    Questioner

    コメント遅れてすみません。
    warファイルの展開後の正しい状態を調べてみたのですが詳しく出なくて、、
    image.png
    一応中身はこのような感じとなっています。><
    お手数おかけしますがよろしくお願いします

  3. @nxzrj

    Questioner

    おはようございます。
    何度もコメントすみません。
    記事をいくつか見つけて比較してみたところ、web.xmlというファイルがなさそうです。プロジェクトをビルドした時点で作成されるものではなく自分で配置するものですか?

  4. WEB-INF/web.xmlはwarに梱包されていませんか?

  5. @nxzrj

    Questioner

    コメントありがとうございます。
    springbootプロジェクトをclean buildした時点でweb.xmlの生成は確認できていませんでした。
    また別件ですが、tomcatのバージョンが10.1なのですが特に問題はないでしょうか?
    よろしくお願いします。

  6. ↓「web.xmlファイルが存在しない」場合の対応が書いてあります。同じかどうか?

    Tomcat 10.1:SpringBoot内包のTomcatですかね。特に問題ないと思いますが。

  7. @nxzrj

    Questioner

    コメントありがとうございます。
    SpringServletInitializerの継承は既に済んでいます。
    また、IDEやSTS上のサーバー構築で動作確認はできており、
    卒業制作で外部にwebappとして公開したいのでtomcat単体でサーバー構築をしています。
    tomcat単体でサーバー構築した際に、最初のログイン画面には行けてもどうしてもPOSTやGETパスがうまくいかないんですよね><
    image.png
    image.png
    お手数をおかけしてすみません><><
    よろしくお願いします

Comments

  1. @nxzrj

    Questioner

    gradleを使用しております。

自己解決いたしました><
ご迷惑おかけして申し訳ありません><

原因としてはPOSTリクエストのactionタグやaタグのhrefがthymeleaf仕様の@{/hogehoge}とコーディングできておらずリクエストが送られていませんでした><

貴重なお時間を使って協力していただいた方々、どうもありがとうございました。

0Like

Your answer might help someone💌