问题标签 [wicket-8]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wicket - Wicket 8 AnnotatedMountScanner 不再工作
从 Wicket 7 升级到 Wicket 8 后,页面安装不再起作用。
在 Wicket 7 中,我添加了
在我的init()
方法中,我AuthenticatedWebApplication
在我的页面上添加了@MountPath("/mypage")
.
在 Wicket 8 中,这不再起作用,而不是/mypage
浏览器 URL 指向wicket/bookmarkable/com.example.MyPage
,但是当我手动添加
mountPage("AAA", MyPage.class);
它时。
这是我的所有检票口依赖项的类路径:
$ mvn 依赖:树 | grep 检票口 [INFO] +-
org.apache.wicket:wicket-core:jar:8.0.0:compile [INFO] | +-
org.apache.wicket:wicket-request:jar:8.0.0:compile [INFO] | +-
org.apache.wicket:wicket-util:jar:8.0.0:compile [INFO] +-
org.wicketstuff:wicketstuff-annotation:jar:8.0.0:compile [INFO] +-
org.apache.wicket: wicket-spring:jar:8.0.0:compile [INFO] | -
org.apache.wicket:wicket-ioc:jar:8.0.0:compile [INFO] +-
org.apache.wicket:wicket-datetime:jar:8.0.0-M7:compile [INFO] +-
org.apache .wicket:wicket-auth-roles:jar:8.0.0:compile [INFO] +-
de.agilecoders.wicket:wicket-bootstrap-core:jar:2.0.2:compile [INFO]
| +- de.agilecoders.wicket:jquery-selectors:jar:2.0.0:compile [INFO] | +- de.agilecoders.wicket.webjars:wicket-webjars:jar:2.0.7:compile [INFO] | +- org.apache.wicket:wicket-extensions:jar:8.0.0:compile [INFO] +- de.agilecoders.wicket:wicket-bootstrap-extensions:jar:2.0.2:compile
[INFO] +-
com. googlecode.wicket-jquery-ui:wicket-jquery-ui-plugins:jar:8.0.0-M7:compile [INFO] | -
com.googlecode.wicket-jquery-ui:wicket-jquery-ui-core:jar:8.0.0-M7:compile
但我不想手动添加所有 mypages。是否也可以AnnotatedMountScanner
在 Wicket 8 中使用再次?
java - Wicket 8 wicket setDefaultModel 与 setDefaultModel 冲突
从 Wicket 7 升级到 Wicket 8 后,我在 IntelliJ 中遇到了多个擦除警告。
例如,当使用AjaxLink
IntelliJ 抱怨时
'org.apache.wicket.MarkupContainer' 中的 'setDefaultModel(IModel model)' 与 'org.apache.wicket.IGenericComponent' 中的 'setDefaultModel(IModel model)' 冲突;两种方法都有相同的擦除,但都没有覆盖另一个
我能做些什么吗?
wicket - Wicket LambdaModel 和 NumberTextField 无法解析类型
在我的 Wicket 8 应用程序中切换到我的一个表格LambdaModel
作为替代方案后,我提交测试失败,说明:PropertyModel
java.lang.ClassCastException:java.lang.String 无法转换为 java.math.BigDecimal
我的表单面板有一个NumberTextField
在我的工作场景中绑定到一个PropertyModel
.
这行得通
这不起作用
问题是它LambdaModel
没有实现IObjectClassAwareModel
,PropertyModel
因此当NumberTextField
尝试解析类型AbstractTextComponent#152
并随后检查getModelType
模型是否是它的实例 IObjectClassAwareModel
时将不起作用,因为LambdaModel
没有实现此接口。
这是LamdaModel
不是有意为之IObjectClassAwareModel
。顺便说一句,我知道我可以通过显式声明NumberTextField
.
wicket - Wicket 8 ClientProperties 一些方法已弃用
我最近从 Wicket 7.x 升级到 8.1.0 并想知道某些ClientProperties
方法会发生什么,现在这些方法被标记为@Deprecated
没有提示它们为什么或会变成什么。
迁移指南也没有提到它们。
我发现这个提交引入了更改,但无法将其追溯到 Jira 故事(WICKET-6544 是关于错误的用户代理检测,我在这里看不到链接)。
那么这个功能会变成什么,它会在没有替换的情况下被删除吗?
wicket - Wicket 1.8 DropDownChoice 未显示正确的模型对象
我遇到了 DropDownChoice 及其模型的问题。所涉及的 HTML 是一个模态窗口,用户可以使用它编辑对象的设置:第一个 DDC 会在其模型更改时更改第二个 DDC 的列表,并且一切正常。问题是两个 DDC 都没有显示保存的值,但它们显示了关联列表中的第一项。这是一些代码:
所以,假设你有这种情况:
- sede1(包含 sala1、sala2、sala3)
- sede2(包含 sala4、sala5)
“Sede”有一个部门的意思,“Sala”就像一个房间,所以对于每个部门,你可以有一个不同房间的列表。
如果用户尝试编辑设置为“sede1”和“sala2”的对象,则对话框窗口将加载第一个显示“sede1”的 DDC(这是正确的,只是偶然),第二个显示“sala1”(因为是与“sede1”关联的列表的第一个),而不是“sala2”。同样,如果对象的设置是“sede2”和“sala5”,则 DDC 将分别显示“sede1”(“sede”列表的第一个)和“sala4”(与“sede2”关联的列表的第一个项目),而模型对象是“sala5”。因此,目前,用户在编辑相关对象时必须重新设置这两个字段的已保存值,这并不好。
我做了一些调试,从我收集的信息来看,模型和默认模型总是正确的:DDC 只是不显示它们,我不明白为什么。如果需要更多信息,请告诉我。
java - Wicket 8:写入响应流后如何防止 sendRedirect?
我有一个表单,它在 onSubmit() 结束时将 PDF 文件下载给用户。
当我运行代码时,onSubmit 正确地允许用户下载 PDF 文件。然而,日志文件得到 19 条堆栈跟踪抱怨:在提交响应后无法调用 sendRedirect()。如何在我的 onSubmit 之后阻止 Wicket 调用 sendRedirect?
java - Wicket 6 到 8 升级:RadioGroup.onSelectionChanged() 替换
我们继承了一个使用 Wicket 6 的大型代码库,其中我们有一个RadioGroup
首选的联系类型选择(SMS、电子邮件等)。Radio
选择 SMS时TextField
,电话号码可见,电子邮件等相同。
这是通过向AjaxEventBehavior
每个Radio
. 该onEvent(AjaxRequestTarget)
方法调用RadioGroup.onSelectionChanged()
并更新 each 的可见性TextField
:
我们的问题是我们必须升级到 Wicket 8,该onSelectionChanged()
方法已被删除RadioGroup
,我们找不到任何关于可能替换的文档。从 Wicket 6 JavaDocs 的两行之间阅读,我觉得甚至不应该手动调用 onSelectionChanged() 方法,因为文档仅以被动形式声明“在选择新选项时调用。 ”。
我有问题:
onSelectionChanged()
我们的祖先是否通过手动调用滥用了 Wicket API ?RadioGroup.onSelectionChanged()
Wicket 8 中有替代品吗?- 实现第一段中描述的功能的正确方法是什么?
java - 检票日期文本字段与不工作
我想拥有<input type="date">
带有日期选择器等的 HTML 组件。
我不能让它与 Wicket 一起工作。我需要在没有提交表单的情况下更改 onChange() 事件的模型值,并且我需要在我的模型的 java.util.Date 对象的输入字段中显示初始值,这也不起作用。
我的代码java:
HTML 标记:
如您所见,日期被初始化为new Date(),但<input type="date">
我只能看到dd.mm.yyyy并且与 setObject() 方法相同。Date 对象参数在更改后始终为空。
我究竟做错了什么?感谢您的任何回答。