Neuigkeiten in der Apache OFBiz Community

In diesem Monat haben wir Neuigkeiten zu den für 2017 geplanten OFBiz Community Days, specialpurpose wird zu plugins, es wurde eine Initiative gestartet welche umfassende Akzeptanztestfälle für Releases bereitstellt und die Community diskutiert über die inhaltliche Definition von Apache OFBiz.

Was ist Apache OFBiz?

Bei den Community Diskussionen im Januar wurde überlegt, wie sich das Apache OFBiz inhaltlich definiert. Nach 10 Jahren als Top Level Projekt in der ASF scheint es seltsam, dass diese Diskussion geführt wird. Durch ein umfangreiches Refactoring und bedeutsame Änderungen innerhalb des Projekts in Bereichen wie dem Framework und dem Plugin Management besteht nun jedoch die Möglichkeit, OFBiz neu zu definieren. Es könnten nun Teilprojekte ins Leben gerufen werden, welche ihren Fokus auf spezifische OFBiz Bereiche und andere potentiell einzubindende Produkte setzen. Durch eine klarere Trennung des Frameworks von den Business Komponenten und Zusatzfunktionen soll es für die Projektmitarbeiter einfacher werden, sich auf ihre Spezialgebiete zu fokussieren. Gleichzeitig wird es deutlich einfacher, dedizierte neue Funktionalitäten zu entwickeln und als Plugin zur Verfügung zu stellen. Auch die projektspezifische Erweiterung von OFBiz Installationen wird dadurch erleichtert.

Weitere Informationen und Details über die Diskussion finden sich unter diesem Link: Discussion: What is Apache OFBiz? Es können auch Kommentare und Feedback hinzugefügt werden.

Umbenennung von Specialpurpose zu Plugins

OFBiz umfasst eine Reihe an Kernanwendungen (z.B. Accounting, Manufacturing, Order und Party) jedoch auch Spezialanwendungen, die bisherunter specialpurpose zusammengefasst wurden. Diese beinhalten Anwendungen wie z.B. E-Commerce, Asset Management, MyPortal, Project Manager und WebPos. Da diese specialpurpose Anwendungen den Kern funktional erweitern kann man sie als OFBiz Plugins ansehen. Der Begriff „Plugin“ ist eine wesentlich verständlichere Bezeichnung dieser Anwendungen und zeigt deutlicher, dass es sich um Zusatzfunktionen handelt (die, wie bspw. das E-Commerce Modul zeigt, sehr mächtig sein können).

Mit der Einführung des Plugin Managements wurde nun konsequent auch das „specialpurpose“ Verzeichnis in „plugins“ umbenannt. In einem zukünftigen Blogartikel werden wir beschreiben, wie ein Repository für offizielle Projektplugins erstellt wird.

Akzeptanztestfälle und Berichte

Die Community hat damit begonnen, eine Reihe von OFBiz User Stories zu verschiedensten Funktionalitäten zu dokumentieren und danach für diese Akzeptanztestfälle vorzubereiten. Diese Tests können als Qualitätscheck für jedes Release verwendet werden. Auch laufende Anpassungen in der Business Logik und den Prozessen sind dann einfacher möglich, ohne die bereits bestehende OFBiz Funktionalität zu schädigen. Weitere Informationen zu dieser Initiative gibt es in der Diskussion unter folgendem Link: User Acceptance Testing Discussion.

OFBiz Community Days 2017

In den letzten zwei Jahren fanden die OFBiz Community Days in jedem Quartal statt. Die Community möchte die Community Days in 2017 weiterführen, jedoch in einem etwas anderen Format. Ein Community Day findet nun nicht mehr an einem festen Samstag statt sondern das Event wird so erweitert, dass die Tage um den Samstag herum auch eingeschlossen werden. Durch dieses flexible Format können insgesamt mehr Personen teilnehmen. Die folgenden Termine wurden für die Community Days  in 2017 festgelegt:

  • Q1 – Februar 2017 : 17.02 (Freitag) bis 21.02 (Dienstag)
  • Q2 – Mai 2017 : 19.05 (Freitag) bis 23.05 (Dienstag)
  • Q3 – August 2017 : 18.08 (Freitag) bis 22.08 (Dienstag)
  • Q4 – November 2017 : 17.11 (Freitag) bis 22.11 (Dienstag)

Weitere Informationen finden sich auf der Community Days Seite im OFBiz Wiki.

Neue Features und Verbesserungen

Funktionelle Erweiterungen und Optimierungen sowie Updates von Bibliotheken und Source Code Refaktorisierung:

  • Aktualisierung von Apache Solr/Lucene von Version 5.3.1 auf 6.2.1 (OFBIZ-8316)
  • Erstellung und Nutzung einer OWASP PolicyFactory um Inhalte für den Birt Report Builder zu reinigen (noch in Arbeit) (OFBIZ-9166)
  • Neue und verbesserte Implementierung von Birt. Erstellung von Berichten von Nutzern ist nun einfacher (OFBIZ-6919)
    Es können nun vom Entwickler „report masters“ kreiert werden, welche es dem Nutzer ermöglichen neue Berichte zu erstellen. Die Datenverbindung des Berichts wird von OFBiz generiert und basiert auf dem „report master“. Das Design wird vom Nutzer erzeugt. Filterung erfolgt über Inhalts Formulare welche in der Datenbank („FORMS_COMBINED“) data_resource gespeichert sind.
  • xssi Präfix ist nun konfigurierbar und mandantenfähig (OFBIZ-9169)
  • Umbenennung des Verzeichnisses von specialpurpose zu plugins (OFBIZ-7972)
    Um das plugin System von OFBiz weiter aufzubauen wurde das /specialpurpose Verzeichnis zu /plugins umbenannt und alle Vorkommen von „specialpurpose“ in Ordnern im System mit „plugins“ ersetzt. Als Verweis findet sich hier die Diskussion zu dem Thema: http://markmail.org/message/hpyuxkmftiyn44w2
  • Hinzufügen von Geo id support für Neuseeland (OFBIZ-9172)
  • Entfernen der cleanGradle und cleanAnt Tasks wegen Problemen mit Windows (OFBIZ-9183)
  • Refaktorisieren der Ladungslogik für die Komponenten in Gradle (OFBIZ-9182)
    Die Verzeichnisstruktur zu ändern sollte keinen Einfluss auf build-Skripte haben. Gradle wird nun Komponenten ignorieren wenn sie existieren aber in ofbiz-component.xml deaktiviert sind (d.h. enabled=“false“).

    • Dadurch wird das Laden flexibel.
    • /plugins/component-load.xml wurde entfernt.
    • Deaktivieren  der ebaystore Komponente in ofbiz-component.xml.
    • Diese Änderungen sind nötig um das Projekt näher an die svn Struktur zu bringen.
  • Entfernen des plugin aktivieren/deaktivieren Feature (OFBIZ-9182)

Bugfixes

Funktionelle und technische Fehlerbehebungen:

  • Refaktorisieren der ContentWorkerInterface Methoden Signaturen (OFBIZ-9164)
    Behebung eines Problems in der ShowCartItems.ftl Datei indem ein Parameter in der Signatur der protected ShoppingCartItem() Methode von ShoppingCart.ShoppingCartItemGroup zu ShoppingCartItemGroup geändert wurde.
  • Fehler durch Hinzufügen eines Artikels zu einer Bestellung (OFBIZ-9167).
    Während der Behebung wurden auch Probleme mit cartLine.getName() in ftl Dateien gefunden. Es fehlten auch Dispatcher. Dies wurde durch das Ticket OFBIZ-9164 ausgelöst.
  • JobPoller kann nicht ausgeführt werden und somit auch keine geplanten oder asynchronen Jobs (OFBIZ-9155)
  • Verwendung eines Entity-Alias wird im entitymodel.xsd auf verpflichtend gesetzt (OFBIZ-9184)
  • „View Oder“ wirft eine Fehlermeldung in getReturnableQuantity  (OFBIZ-9157)
  • Veränderung des Log Levels, so dass Informationen in minilang angezeigt werden (OFBIZ-6206)
  • Konvertierung von delegator.find zu EntityQuery (OFBIZ-9189)

Dokumentation

  • Aktualisieren der Dokumentation im README.MD für das Wiki
    • Hinzufügen einer Notiz zu JDBC Treibern. Der Abschnitt über Sicherheit wurde hinter den „Quick start“  gesetzt.
    • Hinzufügen einer Notiz über die Anzeige von prozentualem Fortschritt.
    • Das README.MD soll im Wiki verwendet werden.