gpt4 book ai didi

java - 通过 Wicket 6 中的 PageParameters 将可空参数传递给页面

转载 作者:行者123 更新时间:2023-11-29 05:41:40 25 4
gpt4 key购买 nike

我需要向我的页面传递一个参数,但我找不到传递可能为空的参数的方法。

如果我这样做:

PageParameters pageParameters = new PageParameters ();
pageParameters.add ("key", null);

这会导致异常

java.lang.IllegalArgumentException: Argument 'value' may not be null. at org.apache.wicket.util.lang.Args.notNull(Args.java:41)

如果我使用 Google Guava 的 Optional,即使 Optional 对象不包含 null,即不等于 Optional.absent(),我也找不到任何方法来转换对象:

在我的着陆页的构造函数中我这样做

StringValue sv = parameters.get ("key");
sv.to ( Optional.of (MyEnum.SOME_ENUM_CONSTANT).getClass () );

当我运行它时出现这个错误:

org.apache.wicket.util.string.StringValueConversionException: Cannot convert 'Optional.of(SOME_ENUM_CONSTANT)'to type class com.google.common.base.Present.

我做错了什么吗?

有没有其他方法可以在 wicket 6 中传递一个可能为 null 的对象?

我注意到在 wicket 1.4 中他们有 PageParameters.NULL,它似乎在 wicket 6 中消失了。

谢谢

最佳答案

这可能太简单了,但是有什么问题

Object value = ?
if (value != null) {
pageParameters.add ("key", value);
}

StringValue sv = pageParameters.get("key");
if (!sv.isNull()) {
// process string value
}

关于java - 通过 Wicket 6 中的 PageParameters 将可空参数传递给页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17299289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com