Интеграция KIE Workbench отвечает кодом 401

Я пытаюсь интегрировать свое развертывание KIE Workbench 6.1.FINAL с простым приложением, использующим Drools 6.1.FINAL. Я использую следующий код:

String url = "http://localhost:8088/workbench/maven2/com/sep/test/myProject/1.0/myProject-1.0.jar";

KieServices ks = KieServices.Factory.get();
UrlResource urlResource = (UrlResource) ks.getResources().newUrlResource(url);
urlResource.setBasicAuthentication("enabled");
urlResource.setUsername("admin");
urlResource.setPassword("admin");

try {
    InputStream is = urlResource.getInputStream();
    KieModule kModule = ks.getRepository().addKieModule(ks.getResources().newInputStreamResource(is));
    kieContainer = ks.newKieContainer(kModule.getReleaseId());
    kieContainer.newStatelessKieSession();

    scanner = ks.newKieScanner(kieContainer);
} catch(Exception e) {
    System.out.println("Exception thrown while constructing InputStream");
    System.out.println(e.getMessage());
}

Каждый раз, когда я запускаю этот код, я вижу следующий вывод:

Exception thrown while building InputStream
Server returned HTTP response code: 401 for URL: http://localhost:8088/workbench/maven2/com/sep/test/myProject/1.0/myProject-1.0.jar

Я убедился, что ошибка исходит из строки, получающей InputStream. Я могу войти в свое рабочее место в http://localhost:8088/workbench с именем пользователя и паролем «admin», и я могу загрузить файл .jar, следуя http://localhost:8088/workbench/maven2/com/sep/test/myProject/1.0/myProject-1.0.jar в своем веб-браузере. Я также могу получить .jar, используя следующую команду curl:

curl --user admin:admin http://localhost:8088/workbench/maven2/com/sep/test/myProject/1.0/myProject-1.0.jar

Однако мне не удалось получить .jar с помощью wget.

Как я могу пройти аутентификацию? Это только прототип; есть ли способ отключить аутентификацию для загрузки этого файла .jar?


person Larry Price    schedule 15.12.2014    source источник


Ответы (2)


В UrlResource есть ошибка, которая была исправлена. См. https://issues.jboss.org/browse/DROOLS-693.

Вот альтернативное решение: https://stackoverflow.com/a/28230876/418730

person rvernica    schedule 19.02.2015

это нормально с 6.2.0.Final и НЕ использовать

KieModule module = ks.getRepository().addKieModule(urlResource);

он также возвращает 401

person Xever Jiang    schedule 08.04.2015