inflearn logo
강의

Course

Instructor

Advanced 3-Step Kotlin-Based Android App Development

Passing data to the server

server에서 이미지를 받는데 에러나 나서 업로드가 불가합니다.

786

redtree

7 asked

0

이전 질문에서 답변준 내용에 맞춰서 진해하였는데도 동일한 문제가 발생하네요

일단 sdk 버전을 28로 변경후에 진행하였으나 동일한 오류가 발생하고, 29인 경우 requestLegacyExternalStorage 속성을 true로 변경했는데도 해결이 안되네요

본문 예제와 같이 sdk버전을 27로 변경하려고 했으나 에러발생으로 싱크가 안되서 28로 진행하였으나 해결이나 변화는 전혀 없네요

client Thread는 다음과 같이 작성되었습니다.

var client = OkHttpClient()
var request_builder = Request.Builder()
var url = request_builder.url("http://172.30.1.18:8080/MobileServer/upload.jsp")

var multipart_Builder = MultipartBody.Builder()
var file = File(pic_path)
multipart_Builder.addFormDataPart("mobile_img",file.name,RequestBody.create(MultipartBody.FORM, file))

var body = multipart_Builder.build()
var post = url.post(body)
var request = post.build()

client.newCall(request).execute()

client쪽은  에러 메세지가 다음과 같이 뜹니다.

E/eglCodecCommon: GoldfishAddressSpaceHostMemoryAllocator: ioctl_ping failed for device_type=5, ret=-1

server 코드는 다음과 같이 작성되었습니다.

<%@ page import="com.oreilly.servlet.*" %>

<%@ page import="com.oreilly.servlet.multipart.*" %>

<%@ page import="com.oreilly.servlet.MultipartRequest"%>

<%

request.setCharacterEncoding("utf-8");

String path = getServletContext().getRealPath("upload");

System.out.println(path);

int max = 1024 * 1024 * 100;

DefaultFileRenamePolicy policy = new DefaultFileRenamePolicy();

System.out.println(request.getContentType());

new MultipartRequest(request, path,max,"utf-8",policy);

%>

서버쪽 에러는 다음과 같이 뜨고 있습니다.

Stacktrace:

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:505)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)

at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:688)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1594)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

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)

Caused by: java.io.IOException: Posted content type isn't multipart/form-data

at com.oreilly.servlet.multipart.MultipartParser.<init>(MultipartParser.java:130)

at com.oreilly.servlet.multipart.MultipartParser.<init>(MultipartParser.java:94)

at com.oreilly.servlet.MultipartRequest.<init>(MultipartRequest.java:219)

at org.apache.jsp.upload_jsp._jspService(upload_jsp.java:138)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:71)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:477)

... 25 more

kotlin android

Answer 2

0

ch1124ki3848

저 에러는 cos.jar 파일 추가하면 됩니다. 

저도 동일한 에러 발생했는데 아래와 같이 파일 추가해주세요.

0

softcampus

이 부분은 제가 코드를 받아봐야 알것 같습니다. 

서버, 클라이언트 코드 모두를 압축해서 다음으로 올려주시기 바랍니다.

https://drive.google.com/drive/folders/1lerdg0lTqW2YD_5b3XqERfvHp9EBYkPm?usp=sharing

다계정 관련

0

15

1

강의 소스코드는 어디서 다운받을 수 있나요?

1

41

2

다작 시 firebase 설정

0

72

2

Jib 빌드가 83%에서 멈추는 문제 해결(windows 사용자)

1

58

1

미션 제출 방식 건의

0

51

0

트랜잭션 내 Redis I/O 에 대한 궁금한점

1

52

1

미션 진행 방식에 대한 질문입니다.

0

67

1

파킹 페이지와 대기열 큐 질문입니다.

0

54

1

소리

0

51

1

조회 메서드에서 @Transactional(readOnly=true) 질문

1

54

1

"폴더를 찾을 수 없습니다." 라는 응답만 계속 나옵니다.

0

62

1

해당 결제 부분을 포폴에서 테스트 api를 적용에 대한 궁금증

1

64

1

소스파일

0

57

1

server에서 이미지를 받는데 에러나 나서 업로드가 불가합니다.

0

267

1

실무에서는 액션바보다 툴바를 더 많이 쓰나요?

0

345

1

server에서 이미지를 받는데 에러나 나서 업로드가 불가합니다.

0

501

1

server에서 이미지를 받는데 에러나 나서 업로드가 불가합니다.

0

259

1

server에서 이미지를 받는데 에러나 나서 업로드가 불가합니다.

0

687

2

manifest provider 코드 오류

0

237

1

앨범에서 사진가져오기 android 10.0 Q 버전에서는 안됩니다.

0

374

1

okhttp api사용에서 callback함수 오류

0

1133

2

FCM 강좌들으며 하는 도중에 JSP 오류가 발생하는데 답변부탁드립니다!

0

342

1

강의자료가 갑자기 없어졌어요

0

197

1

강의 내용 그대로 따라하고 실습해보았는데 가상머신이 강제종료됩니다

0

253

1