2012-05-20 2 views
0

netbeans (Java EE)로 webservice를 만들었으므로 Android 앱 (eclipse로 작성)과 통신하고 싶습니다. 아시아 개발 은행과 함께 ...android에서 내 webservice를 호출 할 때 10.0.2.2의 잘못된 문자 ADB

localhost:9999/SupRails_Start/resources/rest/[email protected]/password 

... 그리고 그것은 나에게 JSON을 제공 : 나는 의사 소통을하기 위해 노력하고있어 때

, 예를 들어, 내 브라우저를 통해 내 웹 서비스를 호출

10.0.2.2:9999/SupRails_Start/resources/rest/[email protected]/password 

그러나 그것은 나에게

java.lang.IllegalArgumentException: Illegal character in scheme at index 0: 10.0.2.2:0000/SupRails_Start/resources/rest/... 
을 제공 : 나는 URI 것을 전화

JSON (브라우저에서받은)을 PHP 페이지에 복사하여 붙여 넣을 때 웹상에서 호스팅하므로 완벽하게 작동합니다!

WebService webService = new WebService("10.0.2.2:9999/SupRails_Start/resources/rest/[email protected]/root"); 
     Map<String, String> params = new HashMap<String, String>(); 
     String temp = webService.webGet("", params); 
     Log.v("", "JSON received = "+temp); 

내가 ... 많은 감사를 내 실수를 이해하지 못하는 제발 도와주세요 : 여기

내 안드로이드 프로젝트의 일부입니다!

답변

1

웹 서비스 URL이 완전하지 않습니다. 유효한 URL의 구문은 같은 것입니다 :

scheme://domain:port/path?query_string#fragment_id 
모든 URL은 다음의 몇 가지로 구성

: 다음 콜론, 두 개의 슬래시, [주 1] 다음 구성표 이름 (일반적으로 라는 프로토콜) , 스키마에 따라 다음에 점 (.) 다음 도메인 이름 [주 2] (또는 IP 주소), 포트 번호 (예 : , 가져올 리소스 경로 또는 실행될 프로그램의 을 입력 한 다음 Common Gateway Interface (CGI) 스크립트, 쿼리 문자열 [7] [8] 및 선택적 조각와 같은 프로그램의 경우 10 식별자.

[Wikipedia]

그래서이 변경이에

new WebService("10.0.2.2:9999/SupRails_Start/resources/rest/[email protected]/root") 

:

new WebService("http://10.0.2.2:9999/SupRails_Start/resources/rest/[email protected]/root") 
+0

@DaToop : 귀하의 빠른 답변 감사합니다. 나는 이미 그것을 시도했지만 나에게 도움이되지 않는다. -/ – clement

+0

java.lang.IllegalArgumentException : 인덱스 0에있는 스키마의 문자가 틀리다.이 예외에 대해서는 실제 문제이다. 변경 후 실제로 컴파일하고 올바르게 배포 했습니까? – DaTroop

+0

예, JEE 용 브라우저에서 실행 중이며 android 앱은 JSON을 보내는 PHP 페이지와 완벽하게 잘 작동합니다. 모두가 별도로 작동하지만 모두 함께 작동하지 않습니다. - / – clement

관련 문제