質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

Q&A

解決済

1回答

15407閲覧

【SpringBoot】ページ遷移ができない【初期設定】

bonsai__program

総合スコア10

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。 Java Platform上に、 Web ベースのアプリケーションを設計するための拡張機能が数多く用意されています。

Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

0グッド

0クリップ

投稿2016/10/09 15:08

編集2016/10/09 15:10

###前提・実現したいこと
SpringBootでポータルサイトを作成しようと考えています。
ですが、最初のページ遷移の時点で詰まってしまい、自分で解決できなかったので質問しに来ました。
導入時点でのミスなのか、コードによるミスなのかもわかっていない状況です。

###発生している問題・エラーメッセージ
Controllerとjspを作成し実行すると「Whitelabel Error Page(404)」が表示されてしまう。

###該当のソースコード
Java
----------【controller】----------
package com.example.web;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@RequestMapping("")
@Controller
public class PortalController {

@RequestMapping("") public String index() { System.out.println("aaa"); return "home"; }

}
----------【home.jsp】----------
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> </body> </html>

----------【application.yml】----------
spring:
mvc:
view:
prefix: /WEB-INF/views/
suffix: .jsp
datasource:
driver-class-name: org.postgresql.Driver
url: jdbc:postgresql://localhost:5432/xxx
username: xxxx
password: xxxx

----------【pom.xml】----------

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.example</groupId> <artifactId>Portal</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>Portal</name> <description>Demo project for Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.1.RELEASE</version> <relativePath /> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- 追加 --> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>provided</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
</project>

###試したこと
シスアウトの文がコンソールに出力されているので、RequestMappingはしっかり結びついているかと思います。

###補足情報(言語/FW/ツール等のバージョンなど)
Java
SpringBoot
Spring Tool Suite(3.8.2)

SpringやSTSは導入したばかりで、まだ動作確認は一度も行えていませんので、環境構築の時点でミスをしている可能性もあります。

インストール手順 ※()内は参考URL
STSをインストール(http://qiita.com/kbdx/items/080454f333b2a33aba4c)
→Mavenをインストール→パスを通す(https://www.youtube.com/watch?v=DDGaV9vVNnY)
→lombokをインストール(http://blog.y-yuki.net/entry/2016/09/11/064316)

よろしくお願いしますm(__)m

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

根本的な解決にはならないかもしれませんが、分かる範囲でお答えします。
まず、Spring Bootではデプロイの方法が従来とは違うようです。「Javaサーバーが動いていて、そこにwarファイルをアップする」やり方なら動くけれど、いろいろと制約がある...とか。
pom.xmlにwarが配備されていないようなので、その辺りに原因があるかもしれません。
私はSpring以外のフレームワークを知らないので、詳しくはお答えできないのですが、やりたいことをjarファイルにまとめて実行、というやり方ではjspは動かないとのことです。
また、プロジェクトの構成や「何がどこにあるか」が分からないと、Springに詳しい方でもお答えしづらいかもしれません。

Springは、便利な機能がいろいろある分、融通が利かない面があります。
まずは参考書や学習サイトの通りにプロジェクトを作成してみることをお勧めします。
http://libro.tuyano.com/index3?id=4196003
上記のサイトは、Springの参考書も出版されている方が運営されています。
お手本通りにやってみて、うまくいったらアレンジを加えてみてはいかがでしょうか。
また、SpringでWebアプリケーションをつくるのであれば、ThymeleafやGroovyなどのテンプレートエンジンを使ったほうがずっと楽なのはあちこちの本に書いてある通りです。ぜひご検討ください。

投稿2016/10/11 04:41

K.U

総合スコア39

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

bonsai__program

2016/10/15 12:48

親切なご回答ありがとうございました。 ご回答を基に試行錯誤してみましたがjspの表示はできず、アドバイスいただいたThymeleafを使用することで遷移に成功することができました。 現在使用しているPCと普段開発に使用しているPCは別物で、普段のPCでは同じやり方で上手く動作していることから、もしかしたら環境構築部分に問題があるのではないかと考えています・・・。(プロジェクト作成からの流れが同じなので、それ以前の部分) 訳あってjspを使用しているのですが、やはり推奨のThymeleafを使用した方が良いですよね。1から勉強したいと思います。 また、質問の仕方についてのアドバイスもありがとうございました。次からの参考にさせていただきたいと思います。 ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問