글링 3일째 하는데 잘 되지가 않네요.
목표는
java object ( bean 혹은 Pojo ) 를 -> json 형태로 변환 -> post 메소드로 보냄 -> http://도메인:7000/웹앱명/rest/profile/save ( 서버는 tomcat에 jersey를 이용합니다 )
로 보내서 저장하는 건데.
google-http-client-java에서 post 하는 예제 찾으니까
대략
여기서 data에 다른 언급이 없길래 저는 data를 일반 java 오브젝트라고 생각했습니다.
Profile Profile("nick");
JsonHttpContent content = new JsonHttpContent( new JacksonFactory(), data );
이런식으로 해서
request.setContent(content);
resquest.execute();
이렇게 하더라구요
근데 request.execute()를 실행하면
400에러가 뜨면서
instantiate가 안된다고 객체 속성에 무슨 정보가 더 들어가야 되는거 아니냐고 나옵니다.
그래서 어노테이션으로 표시를 해줘야 하나 해서
@Key("nick")
같은 것도 써봤는데 안되고
data가 그게 아니면 JsonObject 형태의 String인가 해서 넣어봤는데
Single string을 받는 생성자가 없다고 합니다.
그런데 앞에 JsonFactory도 썼는데 데이터용 클래스 생성자에서 json String을 파싱해서 생성한다고 생각하면 뭔가 이상해서 그쪽은 안해봤습니다.
data가 그냥 java object가 맞나요?
400에러가 나오는 이유는 뭘까요?
네이버 D2인가 하는 사이트에 google-http-client-java가 낫다고 되있어서 써보려는데
음.. 볼만한 페이지가 적고, 에러코드가 불친절하네요 ㅠㅡㅠ
google-http-client-java 를 쓰는 이유는
google-http-client-android로 넘어가기 쉬울것 같아서 쓴거고
예전엔 안드로이드 개발할때 httpclient를 썼었는데.
간만에 안드로이드에서 웹서버랑 통신하는데 전에 만들어놓은 httpclient를 이용한 기능을 써봤는데
에러가 나서 찾아보니
안드로이드 버전이 올라가면서 에러가 있다고 해서 에러가 안나고 된다는 라이브러리로 넘어가려다 막힌건데요.
구글링할 키워드든. 링크든, 사이트든 경험이든 답변좀 부탁드려요.
댓글 0