We are using MixedParamUrlCodingStrategy to create "user/SEO friendly" URLs for booking website. The booking can have two different types as fixed or flexible that do share some parameters, but not stuff like time periods. >From what I read in API it is my understanding that if some of the parameters are not specified these will get empty string as value. However when we tried this we can see that setResponsePage gets correct set PageParameters, however on the page side the values are associated with keys that should have been empty strings.
Example MixedParamUrlCodingStrategy search = new MixedParamUrlCodingStrategy( MyHttpParams.SEARCH, SearchDestinationPage.class, new String[]{ MyHttpParams.SEARCH_TYPE, /** * Search params */ MyHttpParams.DEPARTURE_AIRPORT, MyHttpParams.RETURN_AIRPORT, /** * Fix dates search params */ MyHttpParams.DEPARTURE_DATE, MyHttpParams.RETURN_DATE, MyHttpParams.BUDGET, /** * Flex dates search params */ MyHttpParams.FROM_DAY, MyHttpParams.TO_DAY, MyHttpParams.WEEKS, MyHttpParams.MONTHS, /** * Secondary params */ MyHttpParams.ADULTS, MyHttpParams.CHILDREN, MyHttpParams.INFANT, MyHttpParams.DEPARTURE_TIME, MyHttpParams.RETURN_TIME, MyHttpParams.CLASS_TYPE, MyHttpParams.DESTINATION_ID } ); mount(search); Model to PageParameters public PageParameters toPageParameters() { PageParameters params = new PageParameters(); params.put(MyHttpParams.DEPARTURE_AIRPORT, getDepartureAirportIATA()); params.put(MyHttpParams.RETURN_AIRPORT, getArrivalAirportIATA()); params.put(MyHttpParams.DEPARTURE_DATE, format(getDepartureDate(), new SimpleDateFormat("ddMMyyyy"))); params.put(MyHttpParams.RETURN_DATE, format(getArrivalDate(), new SimpleDateFormat("ddMMyyyy"))); params.put(MyHttpParams.BUDGET, getBudget()); params.put(MyHttpParams.ADULTS, getAdults()); params.put(MyHttpParams.CHILDREN, getChildren()); params.put(MyHttpParams.INFANT, getInfants()); params.put(MyHttpParams.DEPARTURE_TIME, getDepartureTime()); params.put(MyHttpParams.RETURN_TIME, getArrivalTime()); params.put(MyHttpParams.CLASS_TYPE, getFlightClass()); return params; } IN >< OUT from=PRG >< search_type=PRG to=BTS >< from=BTS from_date=05052011 >< to=05052011 to_date=12052011 >< from_date=12052011 budget=500.0 >< to_date=500.0 adults=1 >< budget=1 children=0 >< from_day=0 infant=0 >< to_day=0 departure_time=00:00-23:59 >< weeks=00:00-23:59 return_time=00:00-23:59 >< months=00:00-23:59 class_type=ECONOMY >< adults=ECONOMY destination_id=44281 >< children=44281 I hope that my question makes sense. Peter