You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by fachhoch <fa...@gmail.com> on 2010/10/31 21:34:57 UTC

using autocomplete with an object

here is my code


			AbstractAutoCompleteRenderer<InfUser> autoCompleteRenderer = new
AbstractAutoCompleteRenderer<InfUser>() {
				protected final String getTextValue(final InfUser infUser) {
					return MessageFormat.format("{0} {1}", infUser.getFirstName(),
infUser.getLastName());
				}
				@Override
				protected void renderChoice(InfUser infUser, Response response,
						String criteria) {
					response.write(getTextValue(infUser));
				}
			};
			AbstractAutoCompleteTextField<InfUser>    gfmsTextField=new
AbstractAutoCompleteTextField<InfUser>("gfms",(IModel)null,InfUser.class,autoCompleteRenderer,true)
{
				@Override
				protected List<InfUser> getChoiceList(String searchTextInput) {
					List<InfUser>  criteriaUsers=new ArrayList<InfUser>();
					for(InfUser  infUser :financeOfficers){
						if(StringUtils.startsWithIgnoreCase(infUser.getFirstName(),
searchTextInput)){
							criteriaUsers.add(infUser);
						}
					}
					return criteriaUsers ;
				}
				@Override
				protected String getChoiceValue(InfUser choice)
						throws Throwable {
					return String.valueOf(choice.getSysUserId());
				}
				@Override
				public IConverter getConverter(Class<?> type) {
					return new IConverter() {
						
						@Override
						public String convertToString(Object value, Locale locale) {
							InfUser  infUser=(InfUser)value;
							return infUser==null ? "":MessageFormat.format("{0} {1}",
infUser.getFirstName(),infUser.getLastName()); 
						}
						
						@Override
						public Object convertToObject(String value, Locale locale) {
							throw  new ConversionException("Not a vlaid User");
							//return null;
						}
					};
				}
			};



my form uses compoundproperty model.

I was expecting   id of Infuser in convertToObject  method but I am getting
display name of InfUser.
Please tell me if Iam doing anything wrong.
-- 
View this message in context: http://apache-wicket.1842946.n4.nabble.com/using-autocomplete-with-an-object-tp3021478p3021478.html
Sent from the Users forum mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@wicket.apache.org
For additional commands, e-mail: users-help@wicket.apache.org