実現したいこと
ここに実現したいことを箇条書きで書いてください。
JSP サーブレット HTML Bean を使用してwebアプリケーションを製作中。
HTMLで記入した文字などを送信後、再度記載した文字をもとに表示されるようにしたい。
前提
初心者 質問初めてです。わかりにくくてすいません。
ご教示いただけると幸いです。
よろしくお願いいたします。
発生している問題・エラーメッセージ
HTTPステータス
1タイプ ステータスレポート 2 3メッセージ 要求されたリソース [/Web2/transeform] は利用できません。 4 5説明 オリジンサーバーは、ターゲットリソースの現在の表現を見つけられなかったか、またはそれが存在することを開示するつもりはありません。 6 7Apache Tomcat/9.0.73
該当のソースコード
言語:JAVA
ソースコード
``<!DOCTYPE html>
性別:<input type="checkbox" name="langs" value="male" />男
<input type="checkbox" name="langs" value="female" />女<br><br>
<br></br>
<input type="submit" value="送信" />
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import bean.TransformBean;
@WebServlet("/Web2/transform")
public class TransformServlet extends HttpServlet {
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws IOException, ServletException {
// 入力情報の取得 String name = req.getParameter("name"); String age = req.getParameter("age"); String[] langs = req.getParameterValues("langs"); String height = req.getParameter("height"); // Beanの作成 TransformBean rb = new TransformBean(); rb.setName(name); rb.setAge(age); rb.setLangs(langs); rb.setHeight(height); // Beanをリクエストに格納 req.setAttribute("rb", rb); // transform.jspへフォワード RequestDispatcher rd = req.getRequestDispatcher("/transform.jsp"); rd.forward(req, res); }
}
<%@page contentType="text/html;charset=utf-8" %>
<jsp:useBean id="rb" scope="request" class="bean.TransformBean" />
<input type="submit" value="登録" />
<input type="reset" value="戻る" />
package bean;
import java.io.Serializable;
public class TransformBean implements Serializable {
private String name;
private String age;
private String[] langs;
private String height;
public void setName(String name) {
this.name = name;
}
public void setAge(String age) {
this.age = age;
}
public void setLangs(String[] langs) {
this.langs = langs;
}
public void setHeight(String height) {
this.height = height;
}
public String getName() {
return name;
}
public String getAge() {
return age;
}
public String[] getLangs() {
return langs;
}
public String getHeight() {
return height;
}
public String getMaleOutfit(String gender) {
if ("男性".equals(gender)) {
String[] maleOutfits = {"タンクトップ", "Tシャツ"};
int outfitIndex = (int) (Math.random() * maleOutfits.length);
return maleOutfits[outfitIndex];
}
return "";
}
public String getFemaleOutfit(String gender) {
if ("女性".equals(gender)) {
String[] femaleOutfits = {"ワンピース", "ショートパンツ"};
int outfitIndex = (int) (Math.random() * femaleOutfits.length);
return femaleOutfits[outfitIndex];
}
return "";
}
}
試したこと
Webアプリケーションのプロジェクト内にある、サーブレットやJSPファイルなどで、リクエストのURLパスを/Web2/transformに変更するものの/Web2/transeformは利用できませんのエラーが発生する。
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
0 コメント