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

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

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

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

Spring

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

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

1回答

12473閲覧

複数のフォームからデータの遷移がしたいと思っています。

asahi16

総合スコア8

Java

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

Spring

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

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2016/06/29 08:26

###前提・実現したいこと
現在Javaの勉強の一環で、eclipseにSpringを入れた環境で、会員の登録画面、登録確認、完了画面の遷移と、データベースへの登録を試みています。
ですが、入力画面から確認画面へのデータの遷移ができません。
セッションやModelAndViewも触ってみました。
HomeConroller.java(home.jspの呼び出し等)
↓←Input.java(thisなどの宣言)
home.jsp(複数フォーム)

HomeConroller.java

second.jsp(入力確認表示)

DB登録&完了画面表示

と流れる予定です。
home.jspには入力フォームが記述されてあります。

###発生している問題・エラーメッセージ

HTTPステータス 405 - Request method 'GET' not supported The specified HTTP method is not allowed for the requested resource.

###該当のソースコード
import java.util.Locale;

import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

/**

  • Handles requests for the application home page.

/
@Controller
@RequestMapping("home")
public class HomeController {
/

private static final Logger logger = LoggerFactory.getLogger(HomeController.class);
private Input form;
public Input getForm() {
return form;
}
public void setForm(Input form) {
this.form = form;
}
/**
* Simply selects the home view to render by returning its name.
/
/

@RequestMapping(value = "home", method = RequestMethod.GET)
public String home(Locale locale, Model model) {
/*
logger.info("Welcome home! The client locale is {}.", locale);

Date date = new Date(); DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale); String formattedDate = dateFormat.format(date); model.addAttribute("serverTime", formattedDate ); form = new Input(); model.addAttribute("message", "What's "); model.addAttribute("request", form); return "home"; }

*/

/* @Autowired
CustomerService customerService;
*/
@ModelAttribute
Input setUpForm() {
return new Input();
}

@RequestMapping(value = "home", method = RequestMethod.POST) String create(@Validated Input form, BindingResult result, Model model) { if (result.hasErrors()) { return list(model); } Customer customer = new Customer(); BeanUtils.copyProperties(form, customer);

// customerService.create(customer);
return "home";
}

private String list(Model model) { // TODO 自動生成されたメソッド・スタブ return null; } @RequestMapping(value = "second", method = RequestMethod.POST) public String home(Input form, Locale locale, Model model) { String str = "Hello!! " + form.getId(); model.addAttribute("message", str); model.addAttribute("request", form); return "second"; }

}

###試したこと
コメント機能で削除した部分も含め、いろいろ切り貼りしているためすでにどこがどれだかわからなくなりつつあります。
方法が多様にあるため、どれを使用して良いのかがわからず混ざってしまいました。

###補足情報(言語/FW/ツール等のバージョンなど)
言語:Java
使用環境:eclipse pleiades4.5 mars
追加:Spring
DB:postgresql
サーバー:Tomcat8

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

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

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

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

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

masaya_ohashi

2016/06/29 08:35

質問文のソースコードは```(Shift+@のバッククォート)で囲んでください。質問文のエディタで、ソースコードを範囲選択して</>ボタンを押したらできます。
A-pZ

2016/06/29 08:37

コードを記載するときには、コードブロック </> を利用してください。そうでないと表記が乱れます。お手数ですがご協力お願いします。
guest

回答1

0

エラーコードを見た限り、secondのGETがないからじゃないでしょうか。
home.jspで書かれたformのメソッドをPOSTにするか、
@RequestMapping(value = "second", method = RequestMethod.POST)
のPOSTをGETに変えてみるといけるかもしれません。

投稿2016/06/29 08:37

masaya_ohashi

総合スコア9206

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

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

asahi16

2016/06/29 08:47

素早い回答有り難うございます。 多分前者だと思います。 まだJSPのGETがわかっていないと思うので、また調べて試してみます。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問