What I remembered to have discussed about is actually here:
https://issues.apache.org/jira/browse/OFBIZ-3373

-Bruno

2010/5/2 David E Jones <d...@me.com>

>
> Just read this... I guess Bruno is thinking along the same lines.
>
> -David
>
>
> On May 2, 2010, at 12:04 AM, Bruno Busco wrote:
>
> > Thank you Scott for working on this feature.
> > "plug-in" type extensions will help a lot.
> >
> > I agree with you, I prefer the latter solution also.
> > It simply overrides the entries in a single file with the ones
> contentained
> > in a new one. Crystal clear.
> >
> > Wouldn't it be better to use the "merge" term instead of the "extend" to
> > differentiate from the "extension" mechanism that is already in place?
> >
> > About the menu widget, I remember we talk about some time ago.
> > At that time I proposed something like a "merge" feature more than an
> > extension.
> > This was because base menu items should be added/modified/deleted in the
> > plugin file.
> > There should be also some way to specify in which place the new menu
> entries
> > are shown in the existent menu.
> >
> > Thank you,
> > Bruno
> >
> > 2010/5/2 Scott Gray <scott.g...@hotwaxmedia.com>
> >
> >> On 1/05/2010, at 12:35 AM, Scott Gray wrote:
> >>
> >>> On 30/04/2010, at 1:49 PM, Scott Gray wrote:
> >>>
> >>>> What about adding something like the following to ofbiz-component.xml
> >> schema
> >>>> <extend-web-app name="order"
> >>>>  include-controller="path/to/controller.xml"
> >>>> />
> >>>
> >>> Finding the webapp to extend doesn't look so easy, it looks like it
> would
> >> need to be something like:
> >>> <extend-webapp server-name="default-server" mount-point="/ordermgr">
> >>> That would be the only way to be sure that you're extending the correct
> >> webapp.  The name attribute is really only informational and does
> nothing, I
> >> could for example name every webapp in OFBiz "order" and it would have
> no
> >> effect whatsoever.
> >>
> >> So I ended up doing two implementations:
> >>   <!-- extends the catalog webapp with the ordermgr's controller from a
> >> hot-deploy component -->
> >>
> >>   <extend-webapp server="default-server" mount-point="/catalog">
> >>       <controller-extension
> >>
> location="../../applications/order/webapp/ordermgr/WEB-INF/controller.xml"/>
> >>   </extend-webapp>
> >>
> >> and:
> >>   <!-- extends the catalog's controller with the ordermgr's controller
> >> from a hot-deploy component -->
> >>
> >>   <extend-controller
> >>
> base-location="component://product/webapp/catalog/WEB-INF/controller.xml"
> >>
> >>
> extend-location="component:///order/webapp/ordermgr/WEB-INF/controller.xml"/>
> >>
> >> And I prefer the latter for a number of reasons:
> >> - The former requires that you supply a ServletContext (or server name
> and
> >> mount point) when retrieving a ControllerConfig and a number of calling
> >> methods do not have that information available
> >> - The latter doesn't depend on the mount point or server name meaning
> that
> >> you can change them at will without breaking the extensions
> >> - The latter allows you to extend controllers that don't have a webapp,
> for
> >> example you can extend common-controller.xml and then your extensions
> will
> >> be available to everything that includes it.
> >> - The implementation on the latter feels a lot cleaner
> >>
> >> Any thoughts?
> >>
> >> Both work and I really like this feature, having the ability to plug
> >> additional functionality into the base apps so easily seems pretty cool.
> >> It's a pity I didn't decide to work on this earlier for 10.04.
> >>
> >> I think the next step would be to add a similar type of feature for
> >> extending the menu widget so that you don't have to override
> >> view-maps/screens to add access to extensions.
> >>
> >> Regards
> >> Scott
>
>

Reply via email to