我需要向我的页面传递一个参数,但我找不到传递可能为空的参数的方法。
如果我做:
PageParameters pageParameters = new PageParameters ();
pageParameters.add ("key", null);
这将导致异常
java.lang.IllegalArgumentException:参数“值”可能不为空。在 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:无法将“Optional.of(SOME_ENUM_CONSTANT)”转换为类型类 com.google.common.base.Present。
难道我做错了什么?
有没有其他方法可以在检票口 6 中传递一个可能为空的对象?
我注意到在 wicket 1.4 他们有 PageParameters.NULL 这似乎在 wicket 6 中消失了。
谢谢