私はこの状況をどのように処理するのか知りたいと思っています。JSPで例外をキャッチ
私のJSPでnullポインタ例外が発生しています。
String csvDataIn = new String ((String)request.getAttribute("csvString"));
これは、DBへのクエリを処理してcsvStringを取得するために、私は春にコントローラを作成したからです。私が失敗したクエリを作成するまでは、すべて正常に動作しています。
ので、コントローラで:だから変数JSONはそれを埋めるではありません
...
JsonNode json = dataRepository.getDataAsJson(dataNode);
csvString = getCSVfromJsonNode(json);
model.addAttribute("csvString", csvString);
} catch (Exception e) {
Logger.log("CSV controller failed", _moduleClass, e);
}
return "exportCSV";
}
、関数getDataAsJson()が失敗しているので。これは例外をスローしています。そしてexportCSV.jspに戻りますが、モデルのcsvString属性は返されません。
したがって、jspに戻ると、nullpointer例外がスローされます。
私の質問は次のとおりです。 a-どのようにJSPでこの例外をキャッチしますか? b- JSPで例外をキャッチするよりも優れたソリューションがあると思いますか?私はこれのためのベストプラクティスであるかもしれないことを意味します。
ありがとうございます。
ありがとうございます。彼らは本当に良い助けです:私は問題を処理するために次の変更を加えました。
...
JsonNode json = dataRepository.getDataAsJson(dataNode);
model.addAttribute("csvString", csvString);
} catch (Exception e) {
Logger.log("CSV controller failed", _moduleClass, e);
}
return "exportCSV";
csvString = getCSVfromJsonNode(json);
}
これは、csvStringが前に作成されたBeanであるため空文字列を送信する問題を解決します。
私はここで取得しています例外はjavax.xml.ws.webserviceexceptionがメッセージを送信できませんでしたです(あなたがコントローラでこれを処理するためのより良い方法を知っていますか?)
私もJSPでこれをやりました側は、念のために:
String csvDataIn = (String)request.getAttribute("csvString");
//This should never happen, but we check anyway.
if (csvDataIn != null){
...
}
だから私は残ることが唯一の疑いがある:あなたは、コントローラでjavax.xml.ws.webserviceexceptionを処理するためのより良い方法を知っていますか?
THANKSはAGAIN NullPointerException
のような
あなたが言っているような例外処理がコントローラに属しています。 – Marvo