コードに追記をして再度試してみるとエラー画面が表示されました。
こういった試し方をしたことがないので勝手がわからないのですが」エラーログというのはコンソールに表示された情報で良いのでしょうか。
一応、次の通りです。
重大: サーブレット servlet.List のServlet.service()が例外を投げました
java.lang.NullPointerException
at Dao.listDao.convertAge(listDao.java:205)
at Dao.listDao.findAll(listDao.java:62)
at servlet.List.doGet(List.java:32)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
今までろくにコンソールを見てなかったので見方をほとんど理解できていないです・・・これで良いのでしょうか。
回答3件
0
例外の分析
上のSQLの実行結果とこの例外が直接関係していません。
java.lang.NullPointerException at Dao.listDao.convertAge(listDao.java:205) at
insertInformation()メソッド実行後に発生した例外のようです。
考えられるシナリオ。
AUTO COMMITがTRUEであると仮定します。これはMySQLの設定を確認してください。
・最初のINSERTが成功してfooにレコードが挿入される。自動的にCOMMITされる。
・二番目のINSERTに失敗。(原因は、日付フォーマットなのか、SQLなのかは不明です)
SQLExcetionが発生するが、例外処理が記述されていないため何もせず、finallyを実行して退出する。
mysql> show columns from foo;
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| No | int(11) | NO | PRI | NULL | |
| Value | text | YES | | NULL | |
+-------+---------+------+-----+---------+-------+
mysql> show columns from bar;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| No | int(11) | NO | PRI | NULL | |
| Value | varchar(45) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+