Each time a piece of information is rendered several times in a page.
Say for example in a contact list. Each contact is displayed by a component including 'remove', 'update', 'details' links. I already know what you will say ... "move the handler from the page to the component" ;-)

But, in the point of view of application architecture, i'm not sure that it is a good thing to split in different components the functions which manage the same piece of informations. In the contact list sample, my component won't be able to manage the creation of a new contact. So i will end up with the CRUD functions of my contact split in the page displaying the contacts and the component displaying a contact details.

If i could handle all events in the page, my page would be able to encompass all the contact management functions ...


Davor Hrg a écrit :
please say more about your use case,
maybe a different approach can help :)

Davor Hrg

On Feb 18, 2008 10:47 AM, Steph <[EMAIL PROTECTED]> wrote:
Thanks Davor for the explanation.
I understand the event type is intact but can you confirm me that i
can't make a distinction between all the events bubbling from B in my C
component ?
In practice, if i have 2 actionlinks A and A' in my B component. I don't
know from which actionlink comes an "action" event bubbling from B in my
page C and so the handling of these events can't be made at the page
level ... It's quite annoying for a frequent use case.

Davor Hrg a écrit :

the event type is intact,
but the source changes

onSubmitFromA
onSubmitFromB

onActionFromA
onActionFromB


On Feb 18, 2008 10:26 AM, Steph <[EMAIL PROTECTED]> wrote:

Thanks Howard,
But if my event from A is seen as "FromB" in component C, all events
from components B are melted and one can't handle a specific event !
Shouldn't we be able to differ events from their id or at least from
their type from Form, Links, ... ?

Howard Lewis Ship a écrit :


This simply isn't how its done. Once an event bubbles up from
component A to container B to container C, it will appear as "FromB"
in the methods of C.  Is that clear?  This is explicitly to enforce
that component implementations are private to the component, such that
a component (A or B) may change its structure, including the ids of
embedded components, without requiring changes outside the component.

On Feb 16, 2008 6:24 AM, Steph <[EMAIL PROTECTED]> wrote:


I've achieved to handle the event of my component in its container by
changing the event handler like this :
@OnEvent(component="the_name_of_my_component_in_the_container")

So i can handle now all the events bubbling from my component.
But what if i just want to handle the event of my 'detaillink' in the
component ?

I've tried something like that :
@OnEvent(component="the_name_of_my_component_in_the_container.detaillink")

without success ...

Any advice is welcome

Stephane

Steph a écrit :



Hi,

I've got a strange behavior in event bubbling ...

I have an actionlink in a component :

<t:actionlink t:id="detaillink" context="${id}" class="highlight">Show
details ...</t:actionlink>

If I write an event handler in the component, the event is handle
correctly :

@OnEvent (component="detaillink")
Object detailLink(Long id) {
   ... do the handling based on the id and return a page to redirect
to ...
}

But if i move this handler (with no modifications) from the component
to the page that includes the component, the handler is never called ...
According to the documentation, i thought that event bubbling implies
that the handlers of the container of my component should be parsed ...

Thanks in advance for any advice.

Stephane





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to