@moriiSh (慎太郎 森井)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

動作確認が取れない原因が分からない

Q&A

Closed

解決したいこと

/topics/newを呼び出しても画面が表示されないので解決したい

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

・本来表示される画面
https://gyazo.com/f9a0659b6b3702ced0675941fdf1ba40

・現在表示されている画面
https://gyazo.com/58c855b1456e9e66fc535fdd4266db02

該当するソースコード

@GetMapping(path = "/topics/new")
	public String newTopic(Model model) {
		model.addAttribute("form", new TopicForm());
		return "topics/new";
	}

GitHub
https://github.com/moriiSh/pictgram

system.out.printlnを仕込んでメソッドがちゃんと呼び出されています。

もし分かる方がいらっしゃればご教授お願い致します。

0 likes

2Answer

まずは、サーバ側の問題かブラウザ側の問題か切り分けることから始めましょう。

ブラウザの開発者ツールでJavaScriptでエラーが発生していないことや、コンテンツがすべて返って来ていること(htmlの閉じタグが返って来ていること)を確認してください。

コンテンツがすべて返って来ている場合は、HTML構成がおかしかったりJavaScriptで不具合が発生していることが疑われます。

コンテンツがすべて返って来ていない場合はサーバ側のHTM作成処理(メソッドの後で実行される)でエラーになっている可能性があります。
サーバ側ではHTML出力をバッファリングしますが、バッファサイズを超えた場合にそれまでの溜まったHTMLをブラウザに返します(HTTPステータスも200で返します)。その後にエラーが発生した場合はHTML出力もそこで打ち切られるためブラウザに中途半端なHTMLが返されることになります。
ブラウザは200が返って来ているので、受け取ったHTMLの描画を開始しますが中途半端なところで終わっているので、描画も中途半端な状態になります。
この場合は、サーバ側のログにスタックトレースなどが出ていると思いますので確認してください。

1Like

すでに解決されてると思いますが文字の打ち間違いだと思われます。

index.htmlのfragmentの指定がcontentsではなくcontensとなっています。

layout:fragment="contens"
0Like

Comments

  1. @moriiSh

    Questioner

    ご回答頂きありがとうございます。
    タイプミスの部分は修正したのですが動作確認の結果は同じでした。

    system.out.printlnを仕込んでメソッドがちゃんと呼び出されてはいるのですが理由が分からずでして…

    他に可能性があることがあればまたご教授お願い致します。

Your answer might help someone💌