...
There are a small number of component sets current in OFBiz (from lowest-level to highest-level):1.
- framework
...
- applications
- plugins
3. specialpurpose
4. hot-deployDependencies between components in these sets must ONLY go up the list. For example components in specialpurpose plugins can depend on components in applications, but components in applications can not depend on components in specialpurpose.
...
Digraph | ||
---|---|---|
| ||
compound=true; fontname="helvetica-bold"; node [shape=plaintext fontname="helvetica-bold" ]; subgraph clusterBaseApplications{ style=filled; color=cornsilk; BaseApplications [shape="plaintext" label="base applications"]; node [shape=plaintext fontname="helvetica-bold" ]; node [color=cornsilk fontcolor=blue]; {rank=same; humanres; marketing;} {rank=same; order;} {rank=same; workeffort;} {rank=same; accounting;manufacturing;} {rank=same; party;} {rank=same; product;} {rank=same; content;} BaseApplications->humanres [style=invis weight=0]; BaseApplications->marketing [style=invis weight=0]; } subgraph clusterFramework{ style=filled; color=cornsilk; nodesep=.25; Framework [shape="plaintext" label="framework"]; node [shape=plaintext fontname="helvetica-bold" ]; node [color=cornsilk fontcolor=purple]; "entity(ext)"; service; webapp; security; common; Framework->"entity(ext)" [style="invis"]; Framework->service [style="invis"]; Framework->webapp [style="invis"]; } subgraph clusterExtended { Extended [shape="plaintext" label="extended"]; style=filled; color=cornsilk; node [color=cornsilk fontcolor=firebrick]; subgraph clusterSpecialpurposeclusterPlugins { specialpurposeplugins [shape="plaintext" label="specialpurposeplugins"]; style=filled; color=ivory; node [color=cornsilk fontcolor=orange]; eCommerce; } Extended->"hot deploy">plugins[style="invis"]; Extended->specialpurpose [style="invis"]; specialpurposeplugins->eCommerce [style="invis"]; } //{rank=same; Extended} //{rank=same; Framework; BaseApplications} edge [color=darkgreen weight=1]; marketing->order; marketing->product; edge [color=seagreen weight=1]; order->workeffort; order->accounting; order->party; order->content; order->product; humanres->accounting; humanres->party; manufacturing->product; workeffort->accounting; workeffort->party; workeffort->content; workeffort->product; workeffort->manufacturing; accounting->party; accounting->product; accounting->manufacturing; accounting->workeffort; product->party; product->content; "entity(ext)"->common; service->common; service->security; webapp->common; webapp->security; edge [color=grey weight=0]; order->marketing; party->marketing; Framework->party[ltail=clusterFramework, sametail=t1]; Framework->content[ltail=clusterFramework, sametail=t1]; Framework->product[ltail=clusterFramework, sametail=t1]; Framework->accounting[ltail=clusterFramework, sametail=t1]; edge [color=salmon weight=0]; product->eCommerce [fontcolor="salmon", label="OFBIZ-6110", samehead=h2]; order -> eCommerce [fontcolor="salmon", label="OFBIZ-6110", samehead=h2 ]; BaseApplications->Framework[arrowsize=1,color="red",ltail=clusterBaseApplications, lhead=clusterFramework weight=10]; Extended->BaseApplications[arrowsize=1,color="red",ltail=clusterExtended, lhead=clusterBaseApplications weight=10]; Extended->Framework[arrowsize=1,color="red",ltail=clusterExtended, lhead=clusterFramework weight=10]; |
An overview of the base applications can be found here:
...
Plugins
Components within the specialpurpose plugins set should not depend on each other. If there is a need for components in this set to depend on something in another set, that something should be put into the most appropriate component in the applications set and both specialpurpose plugins components can depend on the applications component. We have currently a dependency of the applications components from, at least, the ecommerce component with regards to the demo data, see
Jira | ||||||
---|---|---|---|---|---|---|
|
An overview of the special purpose plugins applications can be found here:
hot-deploy
Hot deploy consists of user-User-define components that are not part of OFBiz. Components in this set are created by 3rd parties, as add-ons plugins to OFBiz. The same guidelines suggested for the specialpurpose component set are recommended here as well.
Other information
The Framework-only distribution page is related and about "features that should be available in the framework-only OFBiz distribution".