Hi Samuel!
So it is better for me to pack all my components in the same app with the
template. (Actually there are in differents frameworks)?
Or is it a better solution to do this?

2015-06-02 15:17 GMT+01:00 Samuel Pelletier <[email protected]>:

> Hi,
>
> Usually, I use WOSwitchComponent for an editor component used for an
> entity with subclasses. The switch is based on the object real entity to
> select the right editor component.
>
> With WOSwitchComponent, there are 2 things to ensure:
>
> 1- Binding required for the used components are common to all of them.
>
> 2- Make sure the the component used by the WOSwitchComponent does not
> change between two responses, breaking this rule is easy and produce very
> nasty results. i.e. it should change only during appendToResponse. (Same
> rule for WORepetition list...)
>
>
> For surrounding contents commun to multiple pages, a PageWrapper using the
> WOComponentContent is a better pattern, I often even stack them. A main
> page wrapper for the application and a specialized one for admin sections
> or visitor pages that will include the main one.
>
> WOComponentContent indicate to place the content between the parent
> <WEBOBJECT> and </WEBOBJECT> tags. It is a reverse inclusion to add content
> around us !
>
>
> Samuel
>
>
> Le 2015-06-02 à 07:43, HOUNKPONOU Ronald <[email protected]> a
> écrit :
>
> Hi everyone,
> Actually, i think all my pages (managed by woswitch) will have the same
> binding.
> I am now implementing the woswitching and it seems to work fine for the
> moment.
> The one thing i am having problem with is the menu on which user will
> click to trigger
> the component switch.
>
> Trying to use AjaxUpdateLink for the first time.
>
> Thank you all for your contributions.
>
> Ronald.
>
>
>
> 2015-06-02 1:00 GMT+01:00 Timothy Worman <[email protected]>:
>
>> +1
>>
>> As is, WOSwitchComponent expects all child switched components to take
>> the same bindings. It can be a pretty surly limitation. If your
>> subcomponents take the same binding(s) then WOSwitchComponent works pretty
>> great.
>>
>> For “fun,” I created a set of interfaces (one each, for the base page
>> with the switch component, and the switched component) which, when
>> implemented, enforces an api where you can pass custom bindings. Then I can
>> pass a single dictionary of bindings.
>>
>> Works fine, but I’m not sure the cure was better than the disease!
>>
>> Tim Worman
>> UCLA GSE&IS
>>
>>
>> > On Jun 1, 2015, at 8:03 AM, Jean-François Veillette <
>> [email protected]> wrote:
>> >
>> > I can’t remember exactly.  It was solved a long time ago.
>> > All I can remember is that it was somehow related to instance not
>> having expected binding / ivars values.
>> >
>> > My comment where just to give good recommendation on the WOSwitch
>> strategy:  it’s working great.
>> >
>> > But also to warn you that once you make it work in dev, you might still
>> encounter bug in extensive testing, and when you do, keep in mind that it
>> might be related to multiples instances of your component (WOSwitch will
>> have to instantiate one of your switched component).
>> > At the time, once I figured out exactly what was the problem, it was
>> not hard to fix, so you should have no problem fixing it either.
>> >
>> > Sorry, it’s all I remember.
>> >
>> > jfv
>> >
>> >
>> >> On May 29, 2015, at 6:21 PM, HOUNKPONOU Ronald <
>> [email protected]> wrote:
>> >>
>> >> Please Jean-François!
>> >>
>> >> How to not use it?
>> >> I would like to learn good practices.
>> >>
>> >>
>> >> 2015-05-29 23:12 GMT+01:00 Jean-François Veillette <
>> [email protected]>:
>> >> WOSwitchComponent?
>> >> https://wiki.wocommunity.org/display/documentation/WOSwitchComponent
>> >>
>> >> I used it with great success, once I figured out how to not use it.
>> >> Right now I can’t remember what was the symptom, what what the cause
>> and how I fixed it.
>> >> All I remember is that it’s related to sharing instances your
>> component instantiated by the switch component.  So if you encounter a
>> problem, keep that in mind.
>> >>
>> >> jfv
>> >>
>> >>
>> >>> On May 29, 2015, at 5:22 PM, HOUNKPONOU Ronald <
>> [email protected]> wrote:
>> >>>
>> >>> Hi everyone!!
>> >>>
>> >>> Thanks for all your response.
>> >>> Everything is now working for me.
>> >>> I was doing a mistake in the call of the component A in a third one
>> (C) as if A require the binding value. (A is the template that all pages
>> should use).
>> >>>
>> >>> But i have another question (I don't know if it is best to make a
>> separate post):
>> >>>
>> >>> Question : What is the best way to make a dynamiq page inclusion
>> system?
>> >>>
>> >>> I have a lot of custumized components those i would like to listed on
>> a central page (this page use my template).
>> >>> And i want that depending of the clicked link the corresponding
>> components is load in the content area ofmy central page.
>> >>>
>> >>> Thanks for your help.
>> >>>
>> >>> 2015-05-29 16:57 GMT+01:00 Jean-François Veillette <
>> [email protected]>:
>> >>> Hi Ronald,
>> >>> is your B component syncronizing bindings?
>> >>> If so, your B instance should receive a call equivalent to  «
>> b.takeValueForKey(session().authenticatedUser(), “userAccount”); »  so you
>> should comply to KVC for this key (public ivar, get/set method .. your
>> choice) to get it assigned and available.
>> >>>
>> >>> If your B component is non-synchronized, then you have to get it
>> whenever you need it:
>> >>>     « User user = this.valueForBinding(“userAccount”); »
>> >>>
>> >>> Also, since your B component is in a framework and is aware of the
>> concept of a userAccount, I would try to keep the dependency as loose as
>> possible and NOT add coupling directly with the session object.
>> >>> But if you absolutely have to do it (last resort), it could be done
>> with simple KVC:
>> >>>      « User user = (User) session().valueForKey("authenticatedUser”);
>> »
>> >>> or even:
>> >>>      « User user = (User)
>> valueForKeyPath(“session.authenticatedUser”); »
>> >>>
>> >>> Ways of passing generic/contextual objects from the front-end layer
>> to the lower end without adding too much coupling is by going through the
>> editingContext.userInfo dictionary, or through the current thread userInfo
>> dictionary (see ERXThreadStorage).  Those 2 objects are available in most
>> lower level objects and can be set from the upper level just as easily.
>> >>>
>> >>> jfv
>> >>>
>> >>>
>> >>>> On May 29, 2015, at 9:11 AM, HOUNKPONOU Ronald <
>> [email protected]> wrote:
>> >>>>
>> >>>> In A.html
>> >>>>
>> >>>> <webobject name = "template">
>> >>>>
>> >>>> </webobject>
>> >>>>
>> >>>>
>> >>>> In A.wood
>> >>>>
>> >>>> template : B {
>> >>>>    userAccount = session.authenticatedUser;
>> >>>> }
>> >>>>
>> >>>>
>> >>>> in B.html
>> >>>>
>> >>>> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
>> >>>>    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
>> >>>>
>> >>>> <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en" lang="en">
>> >>>> <head>
>> >>>>    <meta http-equiv="Content-Type" content="text/html;
>> charset=utf-8"/>
>> >>>>    <title>untitled</title>
>> >>>> </head>
>> >>>> <body>
>> >>>> <webobject name = "specialitemedicale">
>> >>>> <label>Libellé</label>
>> >>>> <webobject name = "libelle"/>
>> >>>> <webobject name = "enregistrer"/>
>> >>>> </webobject>
>> >>>> </body>
>> >>>> </html>
>> >>>>
>> >>>> in B.wood
>> >>>>
>> >>>> specialitemedicale : WOForm {
>> >>>> }
>> >>>>
>> >>>> libelle : WOTextField {
>> >>>>   value = libelle;
>> >>>> }
>> >>>>
>> >>>> enregistrer : WOSubmitButton {
>> >>>> action=insertSpecialitemedicale;
>> >>>> value="Enregistrer";
>> >>>> }
>> >>>>
>> >>>> 2015-05-29 13:15 GMT+01:00 Johann Werner <[email protected]>:
>> >>>> What is your HTML? You need to wire up your binding with the actual
>> method/ivar of your component A:
>> >>>>
>> >>>> …
>> >>>> <wo:B userAccount="$account" />
>> >>>> …
>> >>>>
>> >>>> and in A.java:
>> >>>>
>> >>>> public MyAccountClass account = …;
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> > Am 29.05.2015 um 13:25 schrieb HOUNKPONOU Ronald <
>> [email protected]>:
>> >>>> >
>> >>>> > I forgot the image.
>> >>>> >
>> >>>> > 2015-05-29 12:23 GMT+01:00 HOUNKPONOU Ronald <
>> [email protected]>:
>> >>>> > Hi everyone,
>> >>>> >
>> >>>> > Iam facing a problem with subcomponent binding.
>> >>>> >
>> >>>> > I have 2 componets A & B. B is to be include in A.
>> >>>> >
>> >>>> > But B need some information (eg. Authenticated user object). So i
>> have create a binding as show in the attached picture and add its gette 7
>> setter in B.java.
>> >>>> >
>> >>>> > (I dont know how to specify Value Set to be my Objet Type. so i
>> try with undefined & ressources)
>> >>>> >
>> >>>> > But the object is not passed to B.
>> >>>> >
>> >>>> > I got a NullPointerException when trying to access the passed
>> vairable in B.java
>> >>>> >
>> >>>> > Thanks for your help.
>> >>>> >
>> >>>> > <Selection_005.png>
>> >>>>
>> >>>>
>> >>>>
>> >>>> _______________________________________________
>> >>>> Do not post admin requests to the list. They will be ignored.
>> >>>> Webobjects-dev mailing list      ([email protected])
>> >>>> Help/Unsubscribe/Update your Subscription:
>> >>>>
>> https://lists.apple.com/mailman/options/webobjects-dev/jean_francois_veillette%40yahoo.ca
>> >>>>
>> >>>> This email sent to [email protected]
>> >>>
>> >>>
>> >>
>> >>
>> >
>> > _______________________________________________
>> > Do not post admin requests to the list. They will be ignored.
>> > Webobjects-dev mailing list      ([email protected])
>> > Help/Unsubscribe/Update your Subscription:
>> >
>> https://lists.apple.com/mailman/options/webobjects-dev/lists%40thetimmy.com
>> >
>> > This email sent to [email protected]
>>
>>
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      ([email protected])
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/webobjects-dev/samuel%40samkar.com
>
> This email sent to [email protected]
>
>
>
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to