从 Wicket 1.5 中的 PageParameters 获取地图
我正在尝试将使用 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);
}
I'm trying to migrate an application using OpenId4Java to Wicket 1.5. Using the migration notes I've gotten everything to work.
Except one thing: Before Wicket 1.5 PageParameters was a map which was perfect since OpenId4Java's ParameterList took an map as an argument.
However in Wicket 1.5, I can't figure out how to get an map out of the PageParameters.
Going trough the PageParameters NamedPairs and making a map of of that is not to hard. But creating an class (the creation of a ParameterLists are in several places) does not feel as a good solution.
What is the simpler solution to this?
ParameterList response = new ParameterList( pageParameters);
-- EDIT --
Code that solved the problem for me.
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);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
请参阅http://apache-wicket.1842946.n4.nabble.com/Upgrade-1-5-PageParameters-toRequestParameters-tp3871781p3873818.html 解决同样的问题。
See http://apache-wicket.1842946.n4.nabble.com/Upgrade-1-5-PageParameters-toRequestParameters-tp3871781p3873818.html for the same issue.