http://www.okjsp.net/seq/270416
안녕하세요.
ajax으로 데이터를 전송해서 db에 저장하려는데 error로 넘어가서 질문드립니다.
Ajax함수에서 "귤.java"로 form 데이터(여러개)를 넘깁니다.(serialize사용)
이때 넘기는 form데이터에 위,경도가 포함되는데요.
위.경도 값은 있을 수도 있고 없을 수도 있습니다. 형식은 double형입니다.
넘길때는 object형으로 한번에 넘어간다고 하더라고요.
넘긴 값을 DB에 저장합니다.
위.경도 값이 있을 때는 문제가 되지 않습니다.
없을 ?가 문제인데요.
"귤.java"로 데이터가 넘어갔다가
ajax함수의
error:function으로 넘어오고 끝이 납니다.
-----------------
다른 데이터가 null값일 때는 문제가 없는데
왜 위.경도 값만 에러인지 모르겠습니다.
"귤.java"에서 데이터를 받을 때는
String latitude = request.getParameter("latitude")== null ? "0" : request.getParameter("latitude");
이렇게 받고 있습니다.
db에 넣을 때는
usersnap plantlist = new usersnap();
...
plantlist.setLongitude(new Double(longitude));
plantlist.setLatitude(new Double(latitude));
plantDao.getInstance().insertUserPlantList(plantlist);
이렇게 넣고요.
double형일때는 다른식으로 받아야 하나요?
------------------------------------------------------
에러메시지는 이렇습니다.
1월 19, 2015 5:24:23 오후 org.apache.catalina.core.StandardWrapperValve invoke
심각: Servlet.service() for servlet [ControllerAction] in context with path [/plantid] threw exception [java.lang.NumberFormatException: empty String] with root cause
java.lang.NumberFormatException: empty String
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.valueOf(Unknown Source)
at java.lang.Double.<init>(Unknown Source)
at plantid.plant.action.ImageSaveAction.requestPro(ImageSaveAction.java:83)
at plantid.common.controller.ControllerAction.requestPro(ControllerAction.java:100)
at plantid.common.controller.ControllerAction.doPost(ControllerAction.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
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:503)
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:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
두서없는 질문이지만.. 힌트라도 부탁드립니다.
감사합니다.
답변 1
request.getParameter("latitude")== null
체크가 "".equals(request.getParameter("latitude")) 이거로 해보시길..
빈값 더블형으로 선언 할라니까 안되는거 같은데요..
그리고 그냥 String latitude = request.getParameter("latitude");
선언하시고 latitude 변수 사용 하는게 낫지 않나요?
답변 2
저 변수를 타입이나 값을 확인해보세요..
내 답
이게 맞는지는 모르겠지만 오류는 안납니다.
<input type="hidden" name="latitude" value=""></input>
<input type="hidden" name="longitude" value=""></input>
이렇게 해두었던 것에 value값을 넣었습니다.
value="${latitude}"
value="${longitude}"
이 value값은 안드로이드 쪽에서 받아온 값을 ajax실행전에 data에 넣는거라 비워둬야 한다고 생각했는데
그래서 값이 없을 때 문제가 생겼던 것 같습니다.
'나의질문답' 카테고리의 다른 글
갤러리 업데이드가 안됩니다. (0) | 2015.01.23 |
---|---|
사진크기 어떻게 구하나요? 계산방법 (0) | 2015.01.22 |
브릿지로 안드 자바스크립트 통신질문 드립니다. (0) | 2015.01.13 |
mysql dump만들기 질문드립니다. (0) | 2014.12.29 |
ibatis질문드립니다. (0) | 2014.12.19 |