Получение карты из PageParameters в Wicket 1.5 - PullRequest
1 голос
/ 26 октября 2011

Я пытаюсь перенести приложение с помощью OpenId4Java на Wicket 1.5.Используя примечания по миграции Я получил все для работы.

За исключением одного: до Wicket 1.5 PageParameters была картой, которая была идеальной, так как OpenId4Java ParameterList взял картув качестве аргумента.

Однако в Wicket 1.5 я не могу понять, как получить карту из параметров PageParameters.Пройдя через PageParameters NamedPairs и составив карту этого, нетрудно.Но создание класса (создание списка параметров в нескольких местах) не кажется хорошим решением.

Какое простое решение для этого?

ParameterList response = new ParameterList( pageParameters);

- ПРАВИТЬ -- Код, который решил проблему для меня.

public static ParameterList toParameterList(PageParameters p){
    HashMap<String, String> h = new HashMap<String, String>();
    for(NamedPair pair: p.getAllNamed()){
        h.put(pair.getKey(), pair.getValue());
    }
    return new ParameterList(h);
}

public static ParameterList toParameterList(IRequestParameters rP) {
    HashMap<String, String> h = new HashMap<String, String>();
    for(String name : rP.getParameterNames()){
        h.put(name, rP.getParameterValue(name).toString());
    }
    return new ParameterList(h);
}

1 Ответ

0 голосов
/ 07 ноября 2011

См. http://apache -wicket.1842946.n4.nabble.com / Upgrade-1-5-PageParameters-toRequestParameters-tp3871781p3873818.html для той же проблемы.

Ближайшим является org.apache.wicket.request.mapper.parameter.PageParameters.getAllNamed (). Вы можете написать вспомогательную функцию для преобразования ее в Map

...