ADAL для Java: разрешение зависимостей для примера клиентского приложения Java

Имеются ли какие-либо инструкции по запуску образца общедоступного клиентского приложения в ADAL для Java? После создания примера файлов jar и библиотеки jar попытка запустить "java -cp adal4j-0.1.0.jar;public-client-app-sample.jar PublicClient" дает (после ввода учетных данных) исключение в потоке "main" java.lang.NoClassDefFoundError: com/nimbusds/oauth2/s dk/AuthorizationGrant. Каким будет подходящий путь к классам или есть цель maven?


person FredericMH    schedule 01.04.2015    source источник


Ответы (2)


Я только что обновил код, чтобы включить плагин exec в образец. Просто используйте mvn exec:java для запуска примера. Я убедился, что это работает

person Kanishk Panwar    schedule 01.04.2015
comment
После ввода учетных данных я получаю следующее сообщение об ошибке: [INFO] Возникло исключение при выполнении класса Java. null error:invalid_request,error_description:AADSTS90014: Тело запроса должно содержать следующий параметр: «client_secret или client_assertion». - person FredericMH; 03.04.2015
comment
Похоже, вы используете идентификатор клиента веб-приложения. Вы должны использовать идентификатор клиента вашего собственного (мобильного/настольного) приложения. - person Kanishk Panwar; 03.04.2015
comment
Понятно. Я действительно зарегистрировал приложение TestClient как веб-приложение. После исправления конфигурации в Azure запуск кода заработал как положено. Спасибо. - person FredericMH; 04.04.2015
comment
Можете ли вы принять ответ, если он вам помог? Он также может обслуживать других пользователей ADAL. - person Kanishk Panwar; 08.04.2015

Версия 0.1.0 библиотеки maven adal4j неразрешима ни в com.microsoft.azure, ни в com.microsoft.aad. Вот результат поиска от maven Central, чтобы подтвердить, что:

http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22adal4j%22

При изменении adal4j на последнюю доступную версию (0.0.3) возникает следующее исключение:

Caused by: java.net.MalformedURLException: no protocol: at java.net.URL.<init>(URL.java:585) at java.net.URL.<init>(URL.java:482) at java.net.URL.<init>(URL.java:431) at com.microsoft.aad.adal4j.HttpHelper.openConnection(HttpHelper.java:110) at com.microsoft.aad.adal4j.HttpHelper.executeHttpGet(HttpHelper.java:43) at com.microsoft.aad.adal4j.HttpHelper.executeHttpGet(HttpHelper.java:38) at com.microsoft.aad.adal4j.MexParser.getWsTrustEndpointFromMexEndpoint(MexParser.java:87) at com.microsoft.aad.adal4j.AuthenticationContext.processPasswordGrant(AuthenticationContext.java:747) at com.microsoft.aad.adal4j.AuthenticationContext.access$000(AuthenticationContext.java:61) at com.microsoft.aad.adal4j.AuthenticationContext$1.call(AuthenticationContext.java:127) at com.microsoft.aad.adal4j.AuthenticationContext$1.call(AuthenticationContext.java:117) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

person Chavdar Bilyanski    schedule 14.04.2015