使用Restlet Odata扩展生成安全web服务的代码
我正在尝试为我的安全web服务使用restle-Odata-extesnion创建对象模型(java类)。作为这个过程的一部分,我编写了下面的代码来生成代码使用Restlet Odata扩展生成安全web服务的代码,odata,restlet,restlet-2.0,Odata,Restlet,Restlet 2.0,我正在尝试为我的安全web服务使用restle-Odata-extesnion创建对象模型(java类)。作为这个过程的一部分,我编写了下面的代码来生成代码 import org.restlet.ext.odata.Generator; import org.restlet.ext.odata.Service; import org.restlet.data.ChallengeResponse; import org.restlet.data.ChallengeScheme; public c
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类中的以下代码正在清除我传递的凭据,并且总是抛出未经授权的错误
Service service = new Service(dataServiceUri);
if(service.getMetadata() == null)
{
errorMessage = "Cannot retrieve the metadata.";
}
您能否修复此问题并提供支持以生成安全Web服务的代码
谢谢
毗瑟奴我没有restlet作为OData客户端的答案,但如果您寻找的是客户端,ApacheOlingo可能是一个不错的选择: 它支持最新的ODataV4协议,从EDM模型生成强类型的java类,等等 您可能想查看@,这里有一个生成代码的完整示例项目@