Java 外部クラスにエラーチェック処理を記述し値を返したい
Q&A
Closed
解決したいこと
外部にエラーチェックの処理を記述し呼ばれたら、エラーかどうかの値を返したいです。
現在のコード
String code_error;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String code = request.getParameter("Code");
code_error = "";
checkCode(code);
try{
//エラーメッセージチェック
if (!(code_error.isEmpty())){
request.setAttribute("code_error", code_error);
throw new IOException();
}
//正常終了
sql = "insert into products(code) values('" + code + "')";
try{
int res = state.executeUpdate(sql);
}catch(Exception ex){
ex.printStackTrace();
}
}catch (IOException ex) {
}
RequestDispatcher dispatch = request.getRequestDispatcher("URL.jsp");
dispatch.forward(request, response);
}
//コードエラーチェック
private void checkCode(String code) {
if (checkNull(code) == false) {
code_error = "[コード]入力してください";
return;
}
return;
}
//nullチェック
private boolean checkNull(String value) {
if(value.isEmpty()){
return false;
}
return true;
}
上記のファイルを2分割
・登録だけの処理
・エラーチェック処理
したいです。
試したこと
import java.error.*;
String code_error;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String code = request.getParameter("Code");
code_error = "";
error.checkCode(code);
try{
//エラーメッセージチェック
if (!(code_error.isEmpty())){
request.setAttribute("code_error", code_error);
throw new IOException();
}
//正常終了
sql = "insert into products(code) values('" + code + "')";
try{
int res = state.executeUpdate(sql);
}catch(Exception ex){
ex.printStackTrace();
}
}catch (IOException ex) {
}
RequestDispatcher dispatch = request.getRequestDispatcher("URL.jsp");
dispatch.forward(request, response);
}
static String code_error;
public static String checkCode(String code) {
if (checkNull(code) == false) {
return "[コード]入力してください";
}
return code;
}
//nullチェック
static boolean checkNull(String value) {
if(value.isEmpty()){
return false;
}
return true;
}
こちらの試したコードだと
エラーではなかった場合問題ないのですが、エラーになった場合、Aのcode_errorの変数にエラーメッセージが代入してくれないので困っています。
どなたかご教授お願い致します。