2015-01-19 2 views
0

보안 웹 서비스를위한 Restlet Odata Extesnion을 사용하여 객체 모델 (Java 클래스)을 만들려고합니다. 이 프로세스의 일환으로 코드를 생성하기 위해 아래 코드를 작성했습니다.Restlet Odata 확장자를 사용하는 보안 웹 서비스 코드 생성

import org.restlet.ext.odata.Generator; 
import org.restlet.ext.odata.Service; 
import org.restlet.data.ChallengeResponse; 
import org.restlet.data.ChallengeScheme; 

public class ODataRestletGenerator extends Service { 

    public ODataRestletGenerator(String serviceUri) { 
     super(serviceUri); 
    } 

    public static final String APPLICATION_URI = "https://api5.successfactors.eu/odata/v2"; 

    public static void main(String[] args) { 

     // Add the client authentication to the call 
     ChallengeScheme scheme = ChallengeScheme.HTTP_BASIC; 
     ChallengeResponse credentials = new ChallengeResponse(scheme, "user", "pwd");  
     new ODataRestletGenerator(APPLICATION_URI).setauth(credentials); 

     String[] arguments = { APPLICATION_URI, "/src/main/java" }; 
     Generator.main(arguments); 
    } 

    private void setauth(ChallengeResponse credentials) { 

     super.setCredentials(credentials); 
    } 

} 

그러나 org.restlet.ext.odata.Generator 클래스에 아래의 코드는 내가 통과하고 있고 항상 401 권한이없는 오류를 던지고 어떤 자격 증명을 삭제합니다.

Service service = new Service(dataServiceUri); 
if(service.getMetadata() == null) 
{ 
    errorMessage = "Cannot retrieve the metadata."; 
} 

이 문제를 해결하고 보안 웹 서비스 코드를 생성 할 수 있습니까?

감사 비슈누

답변

0

내가으로 Restlet로서의 하나로, OData 클라이언트에 대한 답을 가지고 있지 않지만, 당신이 찾는 것은 클라이언트 인 경우, 아파치 Olingo이 좋은 대안이 될 수있다 :

그것은 지원 최신 ODataV4 프로토콜은 ... EDM 모델 등으로부터 강력한 형식의 자바 클래스를 생성

당신은 http://olingo.apache.org/doc/odata4/maven.html @를 체크 아웃 할 수 있습니다, 그리고 https://github.com/Tirasa/olingoClientOnAndroidSample/blob/master/pom.xml

@ 생성 코드의 완전한 샘플 프로젝트가