ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

エンジニア相談所(java、web)コミュの画面遷移時のデータ遷移について

  • mixiチェック
  • このエントリーをはてなブックマークに追加
前にも投稿させていただいたのですがソースが変更になったので再度投稿させていただきます。

Monsyo_newFileDate.jsp⇒Monsyo_newFileInputData.jsp⇒Monsyo_newFileInputDataCheck.jspのように遷移させたいと考えています。

各画面でのチェックはできているのですが画面遷移させるボタンを押下した時に全てのチェックをしたいとのですがどのようにしたらよいでしょうか?
画面側とサーバー側の両方でチェックさせようと思っているんですがまずは画面でのチェックできゆようにしたいです。

ご教授いただけないでしょうか?


★javaソース
---------------------------------------------------------------
package monndai;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Monsyo_NewFileDate extends HttpServlet {

public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
RequestDispatcher reqDis = null;
try {

System.out.println();

//ノスシィJSPキ霪・
reqDis = req.getRequestDispatcher("/jsp/Monsyo_newFileDate.jsp");

//forward
reqDis.forward(req,res);


} catch (Exception e) {
System.out.println("err");
e.printStackTrace();
req.setAttribute("exception", e);
reqDis = req.getRequestDispatcher("/jsp/error.jsp");
reqDis.forward(req, res);
}
}
}

---------------------------------------------------------------
package monndai;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Monsyo_NewFileInputData extends HttpServlet {

public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
req.setCharacterEncoding("EUC-JP");
res.setContentType("text/html;charset=EUC-JP");
RequestDispatcher reqDis = null;
try {

String date1 = null;
String date2 = null;
String date3 = null;
String title = null;


date1= req.getParameter("date1");
date2= req.getParameter("date2");
date3= req.getParameter("date3");
title= req.getParameter("title");


System.out.println("年:"+date1);
System.out.println("月:"+date2);
System.out.println("日:"+date3);
System.out.println("タイトル:"+title);

PageChangeBean pageChangeBean = new PageChangeBean();

pageChangeBean.setDate1(date1);
pageChangeBean.setDate2(date2);
pageChangeBean.setDate3(date3);
pageChangeBean.setMargeDate();
pageChangeBean.setMargeDateNum();
pageChangeBean.setTitle(title);

req.setAttribute(ParamId.FORM_BEAN , pageChangeBean);


//表示JSP決定
reqDis = req.getRequestDispatcher("/jsp/Monsyo_newFileInputData.jsp");

//Beanのをクリア
pageChangeBean = null;

//forward
reqDis.forward(req,res);


} catch (Exception e) {
System.out.println("err");
e.printStackTrace();
req.setAttribute("exception", e);
reqDis = req.getRequestDispatcher("/jsp/error.jsp");
reqDis.forward(req, res);
}
}
}

---------------------------------------------------------------
package monndai;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Monsyo_NewFileInputDataCheck extends HttpServlet {

public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
req.setCharacterEncoding("EUC-JP");
res.setContentType("text/html;charset=EUC-JP");
RequestDispatcher reqDis = null;
try {


String monshoNum = null;
String title = null;
String date = null;
String hakken = null;
String target = null;
String hasseikasho = null;
String event = null;
String testNum = null;
String mondainaiyou = null;
String kaisekisha = null;
String kaisekiDate1 = null;
String kaisekiDate2 = null;
String kaisekiDate3 = null;
String mondaibunrui = null;
String mihakkenriyuu = null;
String hakkenkoutei = null;
String kaisekinaiyou = null;
String taishosha = null;
String taishoDate1 = null;
String taishoDate2 = null;
String taishoDate3 = null;
String taishonaiyou = null;
String kakuninsha = null;
String kakuninDate1 = null;
String kakuninDate2 = null;
String kakuninDate3 = null;
String kakuninnaiyou = null;


monshoNum= req.getParameter("monshoNum");
title= req.getParameter("title");
date= req.getParameter("date");
hakken= req.getParameter("hakken");
target= req.getParameter("target");
hasseikasho= req.getParameter("hasseikasho");
event= req.getParameter("event");
testNum= req.getParameter("testNum");
mondainaiyou= req.getParameter("mondainaiyou");
kaisekisha= req.getParameter("kaisekisha");
kaisekiDate1= req.getParameter("kaisekiDate1");
kaisekiDate2= req.getParameter("kaisekiDate2");
kaisekiDate3= req.getParameter("kaisekiDate3");
mondaibunrui= req.getParameter("mondaibunrui");
mihakkenriyuu= req.getParameter("mihakkenriyuu");
hakkenkoutei= req.getParameter("hakkenkoutei");
kaisekinaiyou= req.getParameter("kaisekinaiyou");
taishosha= req.getParameter("taishosha");
taishoDate1= req.getParameter("taishoDate1");
taishoDate2= req.getParameter("taishoDate2");
taishoDate3= req.getParameter("taishoDate3");
taishonaiyou= req.getParameter("taishonaiyou");
kakuninsha= req.getParameter("kakuninsha");
kakuninDate1= req.getParameter("kakuninDate1");
kakuninDate2= req.getParameter("kakuninDate2");
kakuninDate3= req.getParameter("kakuninDate3");
kakuninnaiyou= req.getParameter("kakuninnaiyou");



System.out.println("問題内容:"+monshoNum);
System.out.println("タイトル:"+title);
System.out.println("日付:"+date);
System.out.println("発見者:"+hakken);
System.out.println("ターゲット:"+target);
System.out.println("発生箇所:"+hasseikasho);
System.out.println("イベント:"+event);
System.out.println("試験項目番号:"+testNum);
System.out.println("問題内容:"+mondainaiyou);
System.out.println("解析者:"+kaisekisha);
System.out.println("解析日時(年):"+kaisekiDate1);
System.out.println("解析日時(月):"+kaisekiDate2);
System.out.println("解析日時(日):"+kaisekiDate3);
System.out.println("問題分類:"+mondaibunrui);
System.out.println("未発見理由:"+mihakkenriyuu);
System.out.println("発見すべき工程:"+hakkenkoutei);
System.out.println("解析内容:"+kaisekinaiyou);
System.out.println("対処者:"+taishosha);
System.out.println("対処日時(年):"+taishoDate1);
System.out.println("対処日時(月):"+taishoDate2);
System.out.println("対処日時(日):"+taishoDate3);
System.out.println("対処内容:"+taishonaiyou);
System.out.println("確認者:"+kakuninsha);
System.out.println("確認日時(年):"+kakuninDate1);
System.out.println("確認日時(月):"+kakuninDate2);
System.out.println("確認日時(日):"+kakuninDate3);
System.out.println("確認内容:"+kakuninnaiyou);

PageChangeBean1 pageChangeBean1 = new PageChangeBean1();

pageChangeBean1.setMonshoNum(monshoNum);
pageChangeBean1.setTitle(title);
pageChangeBean1.setDate(date);
pageChangeBean1.setHakken(hakken);
pageChangeBean1.setTarget(target);
pageChangeBean1.setHasseikasho(hasseikasho);
pageChangeBean1.setEvent(event);
pageChangeBean1.setTestNum(testNum);
pageChangeBean1.setMondainaiyou(mondainaiyou);
pageChangeBean1.setKaisekisha(kaisekisha);
pageChangeBean1.setKaisekiDate1(kaisekiDate1);
pageChangeBean1.setKaisekiDate2(kaisekiDate2);
pageChangeBean1.setKaisekiDate3(kaisekiDate3);
pageChangeBean1.setMargeKaisekiDate();
pageChangeBean1.setMondaibunrui(mondaibunrui);
pageChangeBean1.setMihakkenriyuu(mihakkenriyuu);
pageChangeBean1.setHakkenkoutei(hakkenkoutei);
pageChangeBean1.setKaisekinaiyou(kaisekinaiyou);
pageChangeBean1.setTaishosha(taishosha);
pageChangeBean1.setTaishoDate1(taishoDate1);
pageChangeBean1.setTaishoDate2(taishoDate2);
pageChangeBean1.setTaishoDate3(taishoDate3);
pageChangeBean1.setMargeTaishoDate();
pageChangeBean1.setTaishonaiyou(taishonaiyou);
pageChangeBean1.setKakuninsha(kakuninsha);
pageChangeBean1.setKakuninDate1(kakuninDate1);
pageChangeBean1.setKakuninDate2(kakuninDate2);
pageChangeBean1.setKakuninDate3(kakuninDate3);
pageChangeBean1.setMargeKakuninDate();
pageChangeBean1.setKakuninnaiyou(kakuninnaiyou);



req.setAttribute(ParamId.FORM_BEAN , pageChangeBean1);


//表示JSP決定
reqDis = req.getRequestDispatcher("/jsp/Monsyo_newFileInputDataCheck.jsp");

//Beanのをクリア
pageChangeBean1 = null;

//forward
reqDis.forward(req,res);


} catch (Exception e) {
System.out.println("err");
e.printStackTrace();
req.setAttribute("exception", e);
reqDis = req.getRequestDispatcher("/jsp/error.jsp");
reqDis.forward(req, res);
}
}
}


★JSP
---------------------------------------------------------------
<%@page language="java" %>
<%@page contentType="text/html;charset=EUC-JP" %>
<%@page pageEncoding="EUC-JP" %>

<%
request.setCharacterEncoding("EUC-JP");
String returnPath0 = null;
String returnPath1 = null;
%>


<html>
<head>
<script language="JavaScript">

<!--
 function checkLength(obj, maxlen) {
  if(obj.value.length > maxlen) {
   obj.disabled = true;
   obj.value = obj.value.substring(0,maxlen);
  }
  obj.disabled = false;
  obj.focus(); // BackSpace防止
 }

function sendRequest(path) {
document.Monsyo_newFileDate.action = path;
document.Monsyo_newFileDate.submit();
}


/* 日付チェック */
function Date1Check() {
var str = document.Monsyo_newFileDate.date1.value;
if( !str.match(/^[0-9]{4}$/) ) {
alert("4桁の半角数字のみで入力して下さい。");
return 1;
}
return 0;
}

/* 日付チェック */
function Date2Check() {
var str = document.Monsyo_newFileDate.date2.value;
if( !str.match(/^[0-9]{2}$/) ) {
alert("2桁の半角数字のみで入力して下さい。");
return 1;
}
return 0;
}

/* 日付チェック */
function Date3Check() {
var str = document.Monsyo_newFileDate.date3.value;
if( !str.match(/^[0-9]{2}$/) ) {
alert("2桁の半角数字のみで入力して下さい。");
return 1;
}
return 0;
}

/* タイトルチェック */
function TitleCheck() {
var str = document.Monsyo_newFileDate.title.value;
n = str.length;
if( n < 1 ) {
alert("タイトルを入力してください");
return 1;
}
return 0;
}


/* 全部チェック */
function AllCheck() {
var check = 0;
check += Date1Check();
check += Date2Check();
check += Date3Check();
check += TitleCheck()
if( check > 0 ) {
return false;
}
return check;
}

-->

</script>

コメント(13)

</head>
<title>新問処発行</title>
<body>
<form name="Monsyo_newFileDate" method="POST" action="Monsyo_newFileInputData.jsp" >



<div align="left">
<h2> 新問処発行</h2>
<br>


<table border="1">
<tr><th width=150>日付 <br>(XXXX/XX/XX)</th>
<td>
<input type="text" align="left" maxlength="4" style="ime-mode:inactive" name="date1" size="4" onblur="Date1Check();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="date2" size="2" onblur="Date2Check();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="date3" size="2" onblur="Date3Check();">
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>タイトル<br> (100文字以内)</th>
<td>
<textarea rows="5" cols="60" name="title" onkeyup="checkLength(this, 100);" style="ime-mode:active" onblur="TitleCheck();"></TEXTAREA>
</td></tr>
</table>


<%
returnPath0 = "sendRequest('/mondai/Monsyo_NewFileInputDataServlet')";
returnPath1 = "sendRequest('/mondai/Monsyo_ToppageServlet')";
%>

<br>
<input type="submit" value="入力" onClick="<%= returnPath0 %>">
<input type="submit" value="戻る" onClick="<%= returnPath1 %>">

</div>

</form>
</body>
</html>

---------------------------------------------------------------
<%@page language="java" %>
<%@page contentType="text/html;charset=EUC-JP" %>
<%@page pageEncoding="EUC-JP" %>
<%@page import="monndai.PageChangeBean"%>
<%@page import="monndai.ParamId" %>

<%
request.setCharacterEncoding("EUC-JP");
String returnPath0 = null;
String returnPath1 = null;
%>

<%
PageChangeBean pageChangeBean = (PageChangeBean) request.getAttribute(ParamId.FORM_BEAN);
String margeDate = pageChangeBean.getMargeDate();
String margeDateNum = pageChangeBean.getMargeDateNum();
String title = pageChangeBean.getTitle();
%>



<html>
<head>
<script language="JavaScript">
<!--
function checkLength(obj, maxlen) {
   if(obj.value.length > maxlen) {
    obj.disabled = true;
    obj.value = obj.value.substring(0,maxlen);
   }
  obj.disabled = false;
  obj.focus(); // BackSpace防止
  }

function sendRequest(path) {
document.Monsyo_newFileInputData.action = path;
document.Monsyo_newFileInputData.submit();
}


/* 発見者チェック */
function HakkenCheck() {
var str = document.Monsyo_newFileInputData.hakken.value;
n = str.length;
if( n < 1 ) {
alert("発見者を入力してください");
return 1;
}
return 0;
}

/*ターゲットチェック */
function TargetCheck() {
var str = document.Monsyo_newFileInputData.target.value;
n = str.length;
if( n < 1 ) {
alert("ターゲットを入力してください");
return 1;
}
return 0;
}

/*試験項目番号チェック */
function TestNumCheck() {
var str = document.Monsyo_newFileInputData.testNum.value;
n = str.length;
if( n < 1 ) {
alert("試験項目番号を入力してください");
return 1;
}
return 0;
}

/*問題内容チェック */
function MondainaiyouCheck() {
var str = document.Monsyo_newFileInputData.mondainaiyou.value;
n = str.length;
if( n < 1 ) {
alert("問題内容を入力してください");
return 1;
}
return 0;
}

/*解析者チェック */
function KaisekishaCheck() {
var str = document.Monsyo_newFileInputData.kaisekisha.value;
n = str.length;
if( n < 1 ) {
alert("解析者を入力してください");
return 1;
}
return 0;
}
/* 解析日時(年) */
function KaisekiDateCheck1() {
var str = document.Monsyo_newFileInputData.kaisekiDate1.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/* 解析日時(月) */
function KaisekiDateCheck2() {
var str = document.Monsyo_newFileInputData.kaisekiDate2.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/* 解析日時(日) */
function KaisekiDateCheck3() {
var str = document.Monsyo_newFileInputData.kaisekiDate3.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/*解析内容チェック */
function KaisekinaiyouCheck() {
var str = document.Monsyo_newFileInputData.kaisekinaiyou.value;
n = str.length;
if( n < 1 ) {
alert("解析内容を入力してください");
return 1;
}
return 0;
}

/*対処者チェック */
function TaishoshaCheck() {
var str = document.Monsyo_newFileInputData.taishosha.value;
n = str.length;
if( n < 1 ) {
alert("対処者を入力してください");
return 1;
}
return 0;
}

/* 対処日時(年) */
function TaishoDateCheck1() {
var str = document.Monsyo_newFileInputData.taishoDate1.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/* 対処日時(月) */
function TaishoDateCheck2() {
var str = document.Monsyo_newFileInputData.taishoDate2.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/* 対処日時(日) */
function TaishoDateCheck3() {
var str = document.Monsyo_newFileInputData.taishoDate3.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/*対処内容チェック */
function TaishonaiyouCheck() {
var str = document.Monsyo_newFileInputData.taishonaiyou.value;
n = str.length;
if( n < 1 ) {
alert("対処内容を入力してください");
return 1;
}
return 0;
}

/*確認者チェック */
function KakuninshaCheck() {
var str = document.Monsyo_newFileInputData.kakuninsha.value;
n = str.length;
if( n < 1 ) {
alert("確認者を入力してください");
return 1;
}
return 0;
}

/* 確認日時(年) */
function KakuninDateCheck1() {
var str = document.Monsyo_newFileInputData.kakuninDate1.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/* 確認日時(月) */
function KakuninDateCheck2() {
var str = document.Monsyo_newFileInputData.kakuninDate2.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/* 確認日時(日) */
function KakuninDateCheck3() {
var str = document.Monsyo_newFileInputData.kakuninDate3.value;
if( str.match( /[^0-9]+/ ) ) {
alert("半角数字のみで入力して下さい。");
return 1;
}

return 0;
}

/*確認内容チェック */
function KakuninnaiyouCheck() {
var str = document.Monsyo_newFileInputData.kakuninnaiyou.value;
n = str.length;
if( n < 1 ) {
alert("確認内容を入力してください");
return 1;
}
return 0;
}
/* 全部チェック */
function AllDateCheck() {
var check = 0;

check += KaisekiDateCheck1();
check += KaisekiDateCheck2();
check += KaisekiDateCheck3();
check += TaishoDateCheck1();
check += TaishoDateCheck2();
check += TaishoDateCheck3();
check += KakuninDateCheck1();
check += KakuninDateCheck2();
check += KakuninDateCheck3();

if( check > 0 ) {
return false;
}
return check;
}


-->

</script>

</head>
<title>新問処項目入力</title>
<body>
<form name="Monsyo_newFileInputData" onSubmit="true" method="POST" action="Monsyo_newFileInputDataCheck.jsp" >
<div align="left">
<h1>新問処項目入力</h1>
<br>


<table border="1">
<tr><th width=150>問処番号</th>
<td width=100>
<input type="text" align="left" maxlength="10" name="monshoNum" value =<%=margeDateNum%> readonly>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>タイトル</th>
<td>
<textarea rows="5" cols="60" name="title" readonly ><%=title%> </TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>日付</th>
<td width=100>
<input type="text" align="left" maxlength="10" name="date" value =<%=margeDate%> readonly>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>発見者</th>
<td>
<textarea rows="3" cols="60" name="hakken" onkeyup="checkLength(this, 30);" style="ime-mode:active"onblur="HakkenCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>ターゲット</th>
<td>
<textarea rows="4" cols="60" name="target" onkeyup="checkLength(this, 80);" style="ime-mode:active" onblur="TargetCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>発生箇所</th>
<td>
<SELECT name="hasseikasho">
<OPTION value="Webサーバ">Webサーバ</OPTION>
<OPTION value="通信サーバ">通信サーバ</OPTION>
<OPTION value="画面側">画面側</OPTION>
</SELECT>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>イベント</th>
<td>
<SELECT name="event">
<OPTION value="単体">単体</OPTION>
<OPTION value="セキュリティー試験inMK">セキュリティー試験inMK</OPTION>
<OPTION value="対向試験">対向試験</OPTION>
<OPTION value="複複試験">複複試験</OPTION>
<OPTION value="セキュリティー試験in鉢山">セキュリティー試験in鉢山</OPTION>
<OPTION value="負荷試験">負荷試験</OPTION>
<OPTION value="長安試験">長安試験</OPTION>
</SELECT>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>試験項目番号</th>
<td>
<textarea rows="5" cols="60" name="testNum" onkeyup="checkLength(this, 100);" style="ime-mode:active" onblur="TestNumCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>問題内容</th>
<td>
<textarea rows="7" cols="60" name="mondainaiyou" onkeyup="checkLength(this, 256);" style="ime-mode:active" onblur="MondainaiyouCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>解析者</th>
<td>
<textarea rows="5" cols="60" name="kaisekisha" onkeyup="checkLength(this, 100);" style="ime-mode:active" onblur="KaisekishaCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>解析日時</th>
<td>
<input type="text" align="left" maxlength="4" style="ime-mode:inactive" name="kaisekiDate1" size="4" onblur="KaisekiDateCheck1();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="kaisekiDate2" size="2" onblur="KaisekiDateCheck2();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="kaisekiDate3" size="2" onblur="KaisekiDateCheck3();">
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>問題分類</th>
<td>
<SELECT name="mondaibunrui">
<OPTION value="問題なし">問題なし</OPTION>
<OPTION value="データ設定誤り">データ設定誤り</OPTION>
<OPTION value="データチャック誤り">データチャック誤り</OPTION>
<OPTION value="試験環境設定誤り">試験環境設定誤り</OPTION>
<OPTION value="初期化誤り">初期化誤り</OPTION>
<OPTION value="試験データ誤り">試験データ誤り</OPTION>
<OPTION value="ロジック誤り">ロジック誤り</OPTION>
</SELECT>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>未発見理由</th>
<td>
<SELECT name="mihakkenriyuu">
<OPTION value="問題なし">問題なし</OPTION>
<OPTION value="試験ミス">試験ミス</OPTION>
<OPTION value="試験項目抽出漏れ">試験項目抽出漏れ</OPTION>
<OPTION value="仕様認識誤り">仕様認識誤り</OPTION>
<OPTION value="仕様検討漏れ">仕様検討漏れ</OPTION>
<OPTION value="環境上の問題で後工程に持って行った">環境上の問題で後工程に持って行った</OPTION>
<OPTION value="デグレ">デグレ</OPTION>
</SELECT>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>発見すべき工程</th>
<td>
<SELECT name="hakkenkoutei">
<OPTION value="単体">単体</OPTION>
<OPTION value="セキュリティー試験inMK">セキュリティー試験inMK</OPTION>
<OPTION value="対向試験">対向試験</OPTION>
<OPTION value="複複試験">複複試験</OPTION>
<OPTION value="セキュリティー試験in鉢山">セキュリティー試験in鉢山</OPTION>
<OPTION value="負荷試験">負荷試験</OPTION>
<OPTION value="長安試験">長安試験</OPTION>
</SELECT>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>解析内容</th>
<td>
<textarea rows="7" cols="60" name="kaisekinaiyou" onkeyup="checkLength(this, 256);" style="ime-mode:active" onblur="KaisekinaiyouCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>対処者</th>
<td>
<textarea rows="7" cols="60" name="taishosha" onkeyup="checkLength(this, 256);" style="ime-mode:active"onblur="TaishoshaCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>対処日時</th>
<td>
<input type="text" align="left" maxlength="4" style="ime-mode:inactive" name="taishoDate1" size="4" onblur="TaishoDateCheck1();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="taishoDate2" size="2" onblur="TaishoDateCheck2();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="taishoDate3" size="2" onblur="TaishoDateCheck3();">
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>対処内容</th>
<td>
<textarea rows="7" cols="60" name="taishonaiyou" onkeyup="checkLength(this, 256);" style="ime-mode:active" onblur="TaishonaiyouCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>確認者</th>
<td>
<textarea rows="3" cols="60" name="kakuninsha" onkeyup="checkLength(this, 100);" style="ime-mode:active" onblur="KakuninshaCheck();"></TEXTAREA>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>確認日時</th>
<td>
<input type="text" align="left" maxlength="4" style="ime-mode:inactive" name="kakuninDate1" size="4" onblur="KakuninDateCheck1();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="kakuninDate2" size="2" onblur="KakuninDateCheck2();"> /
<input type="text" align="left" maxlength="2" style="ime-mode:inactive" name="kakuninDate3" size="2" onblur="KakuninDateCheck3();">
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>確認内容</th>
<td>
<textarea rows="7" cols="60" name="kakuninnaiyou" onkeyup="checkLength(this, 256);" style="ime-mode:active" onblur="KakuninnaiyouCheck();"></TEXTAREA>
</td></tr>
</table>
<br>
<%
returnPath0 = "sendRequest('/mondai/Monsyo_NewFileInputDataCheckServlet')";
returnPath1 = "sendRequest('/mondai/Monsyo_NewFileDateServlet')";
%>
<br>
<input type="submit" value="作成" onClick="<%= returnPath0 %>"/>
<input type="submit" value="戻る" onClick="<%= returnPath1 %>"/>

</div>

</form>
</body>
</html>

---------------------------------------------------------------
<%@page language="java" %>
<%@page contentType="text/html;charset=EUC-JP" %>
<%@page pageEncoding="EUC-JP" %>
<%@page import="monndai.PageChangeBean1"%>
<%@page import="monndai.ParamId" %>

<%
request.setCharacterEncoding("EUC-JP");
String returnPath0 = null;
String returnPath1 = null;
%>

<%
PageChangeBean1 pageChangeBean1 = (PageChangeBean1) request.getAttribute(ParamId.FORM_BEAN);
String monshoNum = pageChangeBean1.getMonshoNum();
String title = pageChangeBean1.getTitle();
String date = pageChangeBean1.getDate();
String hakken = pageChangeBean1.getHakken();
String target = pageChangeBean1.getTarget();
String hasseikasho = pageChangeBean1.getHasseikasho();
String event = pageChangeBean1.getEvent();
String testNum = pageChangeBean1.getTestNum();
String mondainaiyou = pageChangeBean1.getMondainaiyou();
String kaisekisha = pageChangeBean1.getKaisekisha();
String margeKaisekiDate = pageChangeBean1.getMargeKaisekiDate();
String mondaibunrui = pageChangeBean1.getMondaibunrui();
String mihakkenriyuu = pageChangeBean1.getMihakkenriyuu();
String hakkenkoutei = pageChangeBean1.getHakkenkoutei();
String kaisekinaiyou = pageChangeBean1.getKaisekinaiyou();
String taishosha = pageChangeBean1.getTaishosha();
String margeTaishoDate = pageChangeBean1.getMargeTaishoDate();
String taishonaiyou = pageChangeBean1.getTaishonaiyou();
String kakuninsha = pageChangeBean1.getKakuninsha();
String margeKakuninDate = pageChangeBean1.getMargeKakuninDate();
String kakuninnaiyou = pageChangeBean1.getKakuninnaiyou();

%>

<html>
<head>
<script language="JavaScript">
<!--
function sendRequest(path) {
document.newFileInputDataCheck.action = path;
document.newFileInputDataCheck.submit();
}
-->

</script>
</head>
<title>新問処チェック</title>
<body>
<form name="newFileInputDataCheck" onSubmit="true" method="POST" enctype="multipart/form-data">

<div align="left">
<h1>新問処チェック</h1>
<br>

<table border="1">
<tr><th width=150>問処番号</th>
<td width=100>
<%=monshoNum%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>タイトル</th>
<td width=450>
<%=title%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>日付</th>
<td width=100>
<%=date%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>発見者</th>
<td width=450>
<%=hakken%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>ターゲット</th>
<td width=450>
<%=target%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>発生箇所</th>
<td width=100>
<%=hasseikasho%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>イベント</th>
<td width=100>
<%=event%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>試験項目番号</th>
<td width=450>
<%=testNum%>
</td></tr>
</table>
<br>
<table border="1">
<tr><th width=150>問題内容</th>
<td width=450>
<%=mondainaiyou%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>解析者</th>
<td width=450>
<%=kaisekisha%>
</td></tr>
</table>
<br>

<table border="1">
<tr><th width=150>解析日時</th>
<td width=100>
<%=margeKaisekiDate%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>問題分類</th>
<td width=150>
<%=mondaibunrui%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>未発見理由</th>
<td width=200>
<%=mihakkenriyuu%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>発見すべき工程</th>
<td width=200>
<%=hakkenkoutei%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>解析内容</th>
<td width=450>
<%=kaisekinaiyou%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>対処者</th>
<td width=450>
<%=taishosha%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>対処日時</th>
<td width=100>
<%=margeTaishoDate%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>対処内容</th>
<td width=450>
<%=taishonaiyou%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>確認者</th>
<td width=450>
<%=kakuninsha%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>確認日時</th>
<td width=100>
<%=margeKakuninDate%>
</td></tr>
</table>
<br>


<table border="1">
<tr><th width=150>確認内容</th>
<td width=450>
<%=kakuninnaiyou%>
</td></tr>
</table>
<br>



<%
returnPath0 = "sendRequest('/mondai/Monsyo_NewFileResultServlet')";
returnPath1 = "sendRequest('/mondai/Monsyo_NewFileInputDataServlet')";
%>
<br>
<input type="button" value="作成"onClick="<%= returnPath0 %>"/>
<input type="button" value="戻る"onClick="<%= returnPath1 %>"/>


</div>

</form>
</body>
</html>

長くなってしまい申し訳ないです。
次の画面へ遷移するボタンを押下した時にデータチェックを同時にしたい場合はどのようにしたらよいでしょうか?

ご教授よろしくお願いいたします。
まずはサンプルを示します。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
    function rejectEmpty() {
        if (form.test.value == '') {
            alert('入力がありません。');
            return false;
        } else {
            return true;
        }
    }
</script>
</head>
<body>
<form name="form" action="/mondai/Monsyo_NewFileResultServlet">
    入力:<input type="text" name="test" value="">
    <input type="button" value="設定" onClick="if (rejectEmpty()) {form.submit();}">
</form>
</body>
</html>
つまりボタンを押した時の javascript で、true だったら、サーバーにリクエストするように書けば良いわけです。

-----------------------------------------------------------------

宜しければさとしさんが今回の問題に対してどういうアプローチを行って問題解決できなかったのか教えて頂けますでしょうか?
さとしさんがなぜうまく問題解決できなかったのかとか、効率的なデバッグの方法をアドバイスできればと思っています。

エンジニアとしては、デバッグのやり方をうまくなった方が、独力解決できるシーンが増え、力が付きます。例えば質問する場合でも、ある程度自分で検証し、質問をした上で、解決方法に関する自分なりの仮説を述べ、それに対して回答をもらった方が、デバッグの方法がうまくなります。
>ひろさん

遅くなってしまい申し訳ございません。

解決方法としてはgoogleで調べて似たような方法を探して自分のソースの中で使えるかどうかやってみる。書籍で調べるです。
私の質問の仕方が悪かったですね。

聞いている内容はデバッグ方法に関してです。
質問の仕方を見る限り、さとしさんは、今のソースを眺めながら、どこが悪いんだろう?ちゃんと実行できる方法はないだろうか?と考えてしまっていないでしょうか?

デバッグ方法で意外に効率的なのは、関係ない部分を一時的に全部消してしまう事です。考え方としては、やりたい事のみに注力するコードに書き換え、問題部分をはっきりさせるのがポイントです。(私の示したサンプルコードのように。)
jsp 関係のコンパイルエラーや問題などではこの方法が無類の力を発揮します。

まず今のソースコードを一旦バックアップしておきます。
今回のさとしさんのケースでは、コードが長過ぎて、どこが悪いのか特定するのが大変です。なので胆の部分である「入力チェックと画面遷移が同時にできているのか」を検証するために、サンプルで示したくらいに簡略化したコードまで、他の部分を削除します。
チェックする項目を減らして簡略化するなど。
そして問題なく入力チェックと画面遷移ができたら、少しずつコードを元に戻しながら足して行き、どのコードを追加した時点で動かなくなるのか検証します。

エディタ上でがさっと消して保存、実行。
動いたら(Ctrl + z)で元に戻して、少し消す部分を減らす、まだ動かなかったらもっと消して、実行。
消すと動くけど、消さないと動かなくなるコードをそうやって特定したら、その辺りのコードをじっくり読んでデバッグ。

かなり役に立つ方法だと思いますよ。
え?動いてるコードを消してしまうの?と思うかもしれませんが、今度 jsp 関係でハマったら試しにやってみて下さい。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

エンジニア相談所(java、web) 更新情報

エンジニア相談所(java、web)のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング