-
1. Re: Coordination work
julien1 Jul 22, 2008 8:08 PM (in response to julien1)one glitch I noticed is that in the explicit case, if a parameter is not explicit declared in a binding then it will simply never retain its state.
It is visible in the explicit sample if you update PublicParametersPortletWindow1 juu1 parameter. The value is lost.
I think it should rather remain private rather than being discarded, which would mean that in the explicit case this parameter is considered like a private parameters and is stored in the per window navigational state. Which would mean to add a Map<String, String[]> in the WindowNavigationalState to store such state.
What do you think ? -
2. Re: Coordination work
julien1 Jul 22, 2008 8:09 PM (in response to julien1)Is the alias implementation started (Map<QName, Set>) ? I haven't seen sample yet.
-
3. Re: Coordination work
bdaw Jul 23, 2008 3:04 AM (in response to julien1)"julien@jboss.com" wrote:
Is the alias implementation started (Map<QName, Set<QName>>) ? I haven't seen sample yet.
Yes. its in CoordinationConfigurator:/** * Set alias binding for a given page. If alias with given name already exists it will be overwritten * * @param page * @param aliasName * @param qnames * @throws IllegalCoordinationException */ void setAliasBinding(Page page, String aliasName, Set<QName> qnames) throws IllegalCoordinationException; /** * Removes alias binding * * @param aliasInfo * @throws IllegalCoordinationException */ void removeAliasBinding(AliasBindingInfo aliasInfo) throws IllegalCoordinationException; /** * @param page * @return collection of alias bindings connected to the given page */ Collection<AliasBindingInfo> getAliasBindings(Page page);
So at the moment the alias String name maps Set in scope of page. Should the alias name be QName rather? -
4. Re: Coordination work
bdaw Jul 23, 2008 3:10 AM (in response to julien1)"julien@jboss.com" wrote:
one glitch I noticed is that in the explicit case, if a parameter is not explicit declared in a binding then it will simply never retain its state.
It is visible in the explicit sample if you update PublicParametersPortletWindow1 juu1 parameter. The value is lost.
I think it should rather remain private rather than being discarded, which would mean that in the explicit case this parameter is considered like a private parameters and is stored in the per window navigational state. Which would mean to add a Map<String, String[]> in the WindowNavigationalState to store such state.
What do you think ?
I remember we discussed it some time ago a bit. The thing is what behaviour would be expected. This would be the difference between FALLBACK and EXPLICIT strategy. In EXPLICIT param not wired is lost while in FALLBACK not. -
5. Re: Coordination work
julien1 Jul 23, 2008 4:20 AM (in response to julien1)it means that in the explicit case if you do not wire a public render parameter then it is never possible to set it with a value which means that the portlet will not work as expected.
"bdaw" wrote:
"julien@jboss.com" wrote:
one glitch I noticed is that in the explicit case, if a parameter is not explicit declared in a binding then it will simply never retain its state.
It is visible in the explicit sample if you update PublicParametersPortletWindow1 juu1 parameter. The value is lost.
I think it should rather remain private rather than being discarded, which would mean that in the explicit case this parameter is considered like a private parameters and is stored in the per window navigational state. Which would mean to add a Map<String, String[]> in the WindowNavigationalState to store such state.
What do you think ?
I remember we discussed it some time ago a bit. The thing is what behaviour would be expected. This would be the difference between FALLBACK and EXPLICIT strategy. In EXPLICIT param not wired is lost while in FALLBACK not. -
6. Re: Coordination work
julien1 Jul 23, 2008 4:21 AM (in response to julien1)is it configurable from XML already ?
"bdaw" wrote:
"julien@jboss.com" wrote:
Is the alias implementation started (Map<QName, Set<QName>>) ? I haven't seen sample yet.
Yes. its in CoordinationConfigurator:/** * Set alias binding for a given page. If alias with given name already exists it will be overwritten * * @param page * @param aliasName * @param qnames * @throws IllegalCoordinationException */ void setAliasBinding(Page page, String aliasName, Set<QName> qnames) throws IllegalCoordinationException; /** * Removes alias binding * * @param aliasInfo * @throws IllegalCoordinationException */ void removeAliasBinding(AliasBindingInfo aliasInfo) throws IllegalCoordinationException; /** * @param page * @return collection of alias bindings connected to the given page */ Collection<AliasBindingInfo> getAliasBindings(Page page);
So at the moment the alias String name maps Set<QName> in scope of page. Should the alias name be QName rather? -
7. Re: Coordination work
bdaw Jul 23, 2008 5:04 AM (in response to julien1)"julien@jboss.com" wrote:
is it configurable from XML already ?
Yes but I didn't test it :)<!-- Shared render parameter bindings. Can be defined only for a page --> <!ELEMENT bindings (parameter-binding*, alias-binding*)> <!-- Alias binding definition --> <!ELEMENT alias-binding (name, qname+)>