Laden von Drools / KIE Workbench-Artefakten direkt aus dem Repository

Wir versuchen, mit der brandneuen KIE-Workbench (ehemals Guvnor) und den neuen Maven-basierten Artefakten zu Drools 6 zu wechseln.

Nun möchte ich das in beschriebene System verwendendieser Blogbeitrag im zweiten Bild ("Bereitstellung"): Laden der Regeln über HTTP aus dem Workbench-Repository (der gepunktete Pfeil, der von HTTP links direkt in die Anwendung geht).

Das Problem ist, dass ich keine Ahnung habe, wie ich das Artefakt in mein KieServices / KieModule-Objekt laden soll. Ich möchte Maven grundsätzlich nicht verwenden, ich kann auch nicht den Pfad zu Maven angebensettings.xml global als Java-Parameter, daher ist diese Option nicht verfügbar.

Ich denke, dass ein ähnliches Problem istdieses. Wie dort erwähnt, habe ich auch versucht, eine URL-Ressource zu laden, aber das Problem scheint zu sein, dass das System nicht bestimmen kann, welche Art vonResourceType die angegebene URL (http://localhost:8080/kie-drools/maven2/.../-1.0.0.jar) ist. Und ja, ich kann ohne Authentifizierung direkt vom Browser aus auf die .jar-Datei aus dem Repository zugreifen.

Irgendwelche Ideen oder Tutorials, wie das geht?

Mein Testcode:

public static void main(String[] args) {
    KieServices ks = KieServices.Factory.get();
    KieRepository repo = ks.getRepository();

    String url = "http://localhost:8080/kie-drools/maven2/de/test/test/1.0.0/test-1.0.0.jar";

    Resource urlResource = ks.getResources().newUrlResource(url);
    KieModule kModule = repo.addKieModule(urlResource); // this already fails
}

Der Fehler:

Exception in thread "main" java.lang.RuntimeException: Unable to fetch module from resource :[UrlResource path='http://localhost:8080/kie-drools/maven2/de/itm/Herma400/1.0.1/Herma400-1.0.1.jar']
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:205)
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.addKieModule(KieRepositoryImpl.java:161)
    at kieTest.MainKieTest.main(MainKieTest.java:24)
Caused by: java.lang.NullPointerException
    at org.drools.compiler.kie.builder.impl.ClasspathKieProject.getPomProperties(ClasspathKieProject.java:197)
    at org.drools.compiler.kie.builder.impl.ClasspathKieProject.fetchKModule(ClasspathKieProject.java:148)
    at org.drools.compiler.kie.builder.impl.ClasspathKieProject.fetchKModule(ClasspathKieProject.java:109)
    at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:190)
    ... 2 more

Danke im Voraus!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage