前提・実現したいこと
ある処理を実行した後に、他処理、画面に対象となるデータを受け渡したいためDtoに値を設定したい。
発生している問題・エラーメッセージ
NullPointerExceptionが発生してしまっている。
該当のソースコード
TesttDto.java
Java
1package test.model.dto; 2import java.util.List; 3import test.entities.Test; 4 5public class TesttDto { 6 7 private List<String> aList; 8 9 private int aLogic; 10 11 public List<String> getAList() { 12 return aList; 13 } 14 15 public void setAList(List<String> aList) { 16 this.aList = aList; 17 } 18 19 public int getALogic() { 20 return aLogic ; 21 } 22 23 public void setALogic(int aLogic) { 24 this.aLogic = aLogic; 25 }
TestInterceptor.java
Java
1package test.interceptor; 2import javax.servlet.http.HttpServletRequest; 3import javax.servlet.http.HttpServletResponse; 4import org.springframework.beans.factory.annotation.Autowired; 5import org.springframework.context.annotation.Scope; 6import org.springframework.stereotype.Component; 7import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; 8import test.model.dto.TestDto; 9@Component 10@Scope("request") 11public class TestInterceptor extends HandlerInterceptorAdapter{ 12 @Autowired 13 TestDto testDto; 14 /** 15 * URL分解処理 16 */ 17 @Override 18 public boolean preHandle(HttpServletRequest request, HttpServletResponse response,Object handler){ 19 String uri = request.getRequestURI(); //URIを取得。 20 String[] uriAry = uri.split("/"); //URIを「/」で分割。 21 22 List<String> aList = new List<String>(); 23 String aCode = ""; 24 int aLogic = 0; 25 String[] aCodeAry = {}; 26 for (int i = 1; i < uriAry.length; i++) { 27 if (urlAry[i].startsWith("a")) { 28 aCode = uriAry[i].indexOf("+"); //URLのパラメータに「+」が含まれているか確認する変数。(パラメータの繋ぎ(接続詞)は「+」か「-」のどちらかしか入らない。) 29 if (resultLogicCd != -1) { 30 aLogic = 1; //「+」が含まれる場合、1をセット。 31 aCodeAry = uriAry [i].split("+"); 32 } else { 33 aLogic = 0; //「+」が含まれない場合、0をセット。 34 aCodeAry = uriAry [i].split("-"); 35 } 36 for (int j = 0; j < aCodeAry.length; j++) { 37 aList.add(aCodeAry[j].substring(aCodeAry[j].indexOf("a") + 1)); 38 } 39 testDto.setACode(aList); //ここでNullPointerException発生 40 testDto.setALogic(aLogic); //1行上をコメントアウトし、こちらを実行してもNullPointerException発生。 41 } 42 } 43 return true; 44}
補足情報(FW/ツールのバージョンなど)
Java8、Spring
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。