jsr372-experts@javaserverfaces-spec-public.java.net

[jsr372-experts] Re: [NEW] Converter chaining, global converters

From: arjan tijms <arjan.tijms_at_gmail.com>
Date: Thu, 11 Dec 2014 17:26:30 +0100

Hi,

For what it's worth, I've had converter chaining on my mind for some
time. One particular use case that I remember this came up is
converting numerical IDs to some entity. This would first need to
convert from String to say Long, and then from Long to say Order.

Apart from true chaining, a simple 1 step solution might be to have
converters with specific types (possibly via generics), for which the
runtime has global converters available. E.g.

@FacesConverter("someConverter")
public class SomeConverter implements TypedConverter<Long> {

    @Override
    public Object getAsObject(FacesContext context, UIComponent
component, Long parameter) {
        // ...
    }

    // ...
}

Kind regards,
Arjan



On Thu, Dec 11, 2014 at 5:04 PM, manfred riem <manfred.riem_at_oracle.com> wrote:
> Hi Kito,
>
> A phase listener would not do the trick for you?
>
> Note unless I am mistaken what you are describing seems more like a corner
> case to me?
>
> Thanks!
> Manfred
>
>
> On 12/11/14, 9:56 AM, Kito Mann wrote:
>
> Hello everyone,
>
> On my current project, I have a situation where I'd like to process input
> from _every_ JSF input component on the page. There are a few different ways
> I can do this, but what I really want is to be able to apply a global
> converter, much like global validators. However, in order to do this, we
> would have to have some sort of "converter chaining" mechanism so that
> existing converters won't get clobbered. I could implement this by walking
> through all of the EditableValueHolders in the view and adding a special
> converter that can wrap an existing converter if necessary. However, this is
> something that would work well at the spec level. Thoughts?
> ___
>
> Kito D. Mann | @kito99 | Author, JSF in Action
> Virtua, Inc. | http://www.virtua.com | JSF/Java EE training and consulting
> http://www.JSFCentral.com | @jsfcentral
> +1 203-998-0403
>
> * Listen to the Enterprise Java Newscast: http://enterprisejavanews.com
> * JSFCentral Interviews Podcast:
> http://www.jsfcentral.com/resources/jsfcentralpodcasts/
> * Sign up for the JSFCentral Newsletter: http://oi.vresp.com/?fid=ac048d0e17