问题标签 [wicket]
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 RuntimeException
我无法确定 Wicket 应用程序中 RuntimeException 的原因。我设置了许多断点,但是当我提交表单时,没有一个会触发,只有在表单加载时才会触发。这是堆栈:
WicketMessage:没有为类定义获取方法:类 this.is.my.class.WicketDocumentModel 表达式:DocumentUpload
根本原因:
org.apache.wicket.WicketRuntimeException:没有为类定义获取方法:类 this.is.my.class.WicketDocumentModel 表达式:在 org.apache.wicket.util.lang.PropertyResolver.getGetAndSetter(PropertyResolver.java:445) 处的 DocumentUpload org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:90) 在 org.apache.wicket.model 的 org.apache.wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:287)。 AbstractPropertyModel.getObject(AbstractPropertyModel.java:117) 在 org.apache.wicket.Component.getDefaultModelObject(Component.java:1664) 在 org.apache.wicket.Component$3.compare(Component.java:548) 在 org.apache。 org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168) 上 org.apache.wicket.markup.html.form.upload 上的 wicket.Component.setDefaultModelObject(Component.java:3049)。FileUploadField.updateModel(FileUploadField.java:100) 在 org.apache.wicket.markup.html.form.Form$FormModelUpdateVisitor.component(Form.java:225) 在 org.apache.wicket.markup.html.form.FormComponent。 visitComponentsPostOrderHelper(FormComponent.java:514) at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493) at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent. java:465) 在 org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:2051) 在 org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:2019)在 org.apache.wicket.markup.html.form.Form.process(Form.java:984) 在 org.apache.wicket.markup.html.form.Form.process(Form.java:911) 在 org.apache .wicket.markup.html.form.Form.onFormSubmitted(Form.java:876) 在 java.lang。org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:182) 的 reflect.Method.invoke(Method.java:597) org.apache.wicket.request.target.component.listener.ListenerInterfaceRequestTarget.processEvents(ListenerInterfaceRequestTarget. java:73) 在 org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250) 在 org.apache.wicket.RequestCycle.step 的 org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92) (RequestCycle.java:1329) 在 org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428) 在 org.apache.wicket.RequestCycle.request(RequestCycle.java:545) 在 org.apache.wicket.protocol。 http.WicketFilter.doGet(WicketFilter.java:456) 在 org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:289) 在 org.apache.catalina.core。ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org .apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve .java:102) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 在 org.apache.jk。 server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) 在 org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) 在 org.apache.jk.common.ChannelSocket。在 org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889) 在 org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) 在 org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697) 调用(ChannelSocket.java:767) .apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) 在 java.lang.Thread.run(Thread.java:619)
我确实在这里找到了关于类似问题的讨论,但我还没有完全能够将那里提出的建议变成适合我情况的解决方案。我的类不包含名为 DocumentUpload 的 Java 变量,但包含以下内容:
java - Unit testing ModalWindow's content refresh fails while the actual functionality works as expected - what am I doing wrong?
So, I've spent a couple of hours first trying to "fix" this myself and then Googling like a madman but didn't find anything that would've helped so now I'm here.
Basically I have a custom Panel
within Wicket's own ModalWindow
and since I like unit testing, I want to test it. The specific behavior here is refreshing the ModalWindow
's content: In my actual code from where I extracted this the Ajax event handling actually reloads new stuff to the content panel, I just removed those to make this shorter.
So, here's the Panel
's code
and the corresponding markup
Do note that when run in servlet container such as Tomcat, this works correctly - there's no functional bugs here!
So what's the problem then? I'm not seemingly able to get the unit test for this to work! My test class for the panel looks like this
and here's the resulting stacktrace of running that
So, how can/should I fix my unit test so that it would pass?
richtextbox - 如何在 Wicket 元素中显示 html 文本?
我正在尝试在检票口元素中动态显示 html 即富文本。例如,在 div 标签中显示富文本电子邮件。我怎样才能用检票口完成这项工作。wicket Label 组件似乎不支持这一点。有没有一个组件可以
java - 在模棱两可的情况下应该使用哪个 Java 泛型?
我在 Wicket 1.3 -> Wicket 1.4 迁移时遇到了一些问题,但是这个问题也可以应用于 Java 泛型。迁移已经导致数百个警告突然出现——对于那些不熟悉 Wicket 的人来说,许多 Wicket 类都来自一个共同的祖先,它在 v1.4 中被泛化——我不确定要应用哪些参数在某些情况下,主要是各种表格和表格。我认为他们可以使用<?>
,<Object>
或<Void>
,但我不确定是哪个。
<?>
似乎最适合我,但有很多地方我不能使用通配符。 <Object>
在所有情况下都有效,但这让我感到不安,因为它基本上是在不使用通配符的情况下编写通配符,这对我的部分大脑来说是天生错误的。Wicket 迁移指南<Void>
中建议使用。
那么在这种情况下,正确的做法是什么?
编辑 2:我认为我的第一次编辑(现在在问题的底部)使人们看起来像是在询问字符串的集合,从而使人们感到困惑。以下是其他示例及其警告:
表单是原始类型。对泛型类型 Form 的引用应该被参数化
此行的多个标记
- 类型安全:构造函数 AjaxFallbackDefaultDataTable(String, List, ISortableDataProvider, int) 属于原始类型 AjaxFallbackDefaultDataTable。对泛型类型 AjaxFallbackDefaultDataTable 的引用应该被参数化
- AjaxFallbackDefaultDataTable 是一个原始类型。对泛型类型 AjaxFallbackDefaultDataTable 的引用应该被参数化
- AjaxFallbackDefaultDataTable 是一个原始类型。应该参数化对泛型类型 AjaxFallbackDefaultDataTable 的引用
编辑:我希望让问题如此广泛以至于不需要示例代码,但这里有一些。
生成这些警告:
[第一行] 处有多个标记
- IColumn 是原始类型。应该参数化对泛型类型 IColumn 的引用
- IColumn 是原始类型。应该参数化对泛型类型 IColumn 的引用[the second] 行的多个标记
- 类型安全:构造函数 PropertyColumn(IModel, String) 属于原始类型 PropertyColumn。应参数化对泛型类型 PropertyColumn 的引用
- PropertyColumn 是原始类型。应参数化对泛型类型 PropertyColumn 的引用
没有错误。
hibernate - Hibernate 代码生成器不生成任何东西
我正在尝试在模型层使用 Hibernate 和 Postgres DB 开发基于 Wicket 的 Web 应用程序。
我手动创建了所有表,并尝试使用从http://www.hibernate.org下载的 Hibernate 代码生成器工具对表中的代码进行逆向工程。
我创建了hibernate.cfg.xml
和hibernate.reveng.xml
. 另外,我可以从 Hibernate 的角度浏览表格。
当我使用导出器设置运行代码生成器时,导出器设置包含生成域的选项以及hbm
指定包上的文件,它不会生成任何内容。
使用环境:
Eclipse 3.5 (Galileo)
Postgres 8.3-604
Wicket 1.3 workbench
java - Wicket:如何在会话中同步请求
场景:在 Tomcat 服务器上运行的基于 Apache Wicket 的 Web 应用程序。
用户在浏览器中打开 URL,创建会话并在浏览器中显示简单的主页,用户单击按钮并调用 AJAX 调用。应用程序获取请求并做一些准备响应的事情。同时,浏览器中的用户或 JavaScript 调用另一个 AJAX 调用——第二个请求在应用程序的另一个线程中处理,并且因为应用程序的大多数部分是特定于会话的并且不是线程安全的(因为一个用户 = 一个会话),抛出异常。
可能的解决方案:
使所有应用程序类线程安全(非常昂贵)
调整 GUI,因此不会在一个会话中同时运行两个 AJAX 调用(由于浏览器 GUI 的性质,不可能)
在 Wicket 或 Tomcat 级别同步一个会话中的所有请求(但如何?)
另一种做法或技术???
谢谢
java - 什么 PHP 框架与 Apache Wicket 最相似?
我正在寻找的功能是基于组件但不是事件驱动的。
我也喜欢在他的父代码中定义组件的想法,但在他的父模板中描述它的位置和一些视觉方面。
java - Wicket 应用程序可以在没有管理员密码的情况下触发自身重启吗?
我是 Wicket 的新手,想从内部维护一个 Web 应用程序,使用某种维护管理页面来运行清理、数据库更新、恢复等。由于我计划使用 Hibernate 或类似的数据绑定,我想从内部触发应用程序的完全重新启动,而不向能够运行这些操作的每个人提供随附的 Tomcat 管理器密码。
据我所知,似乎没有一种简单的方法可以在没有管理员密码的情况下触发 Java Web 应用程序的真正重启?但是,由于许多 Java webapp 在其管理面板中具有此类重启功能,我认为应该可以在特定的 servlet 容器或某些 web 框架中触发重启。他们必须以某种方式解决问题?(或者也许他们并没有真正从头开始重新启动,而只是在没有干净重启的情况下重新初始化?)
我找不到任何关于 Wicket 或 Tomcat 能够通过关闭并从其应用程序重新启动来触发的信息,尽管 Wicket 中有一些内部方法可能能够做到这一点?(可以公开访问,但 JavaDoc 建议不要这样做,因为它们仅供内部使用)
从安全的角度来看,我真的不明白为什么应用程序不能从自己的代码中请求重新启动。
可以这样做吗?如果可以,我必须在我的应用程序中做什么才能重新启动它?
编辑:只是为了让我的问题更准确:用户和应用程序都不应该有任何可用于访问 Tomcat 管理器界面的密码。我正在考虑调用一些方法或设置一些标志,以触发 servlet 容器以重新启动该特定应用程序,而无需授权。我的想法是,由于应用程序在 servlet 容器中运行,它应该有某种方式来关闭和重新启动。如果 Java 应用程序服务器通常无法做到这一点,则可能有某种方法可以在应用程序级别通过调用底层框架(在本例中为 Wicket)来结束所有正在运行的线程,尽可能清理并重新启动使用框架的应用程序;类似于应用程序堆栈的“软重启”。
java - Wicket 的@SpringBean 注解是如何工作的?
@SpringBean
Wicket 的注解是如何工作的?它在运行时使用反射吗?它会让编译器注入一些代码吗?或者是什么?
java - gmail中聊天窗口的名称是什么?
我想写一个像gmail的聊天窗口这样的窗口,当我点击最小化时,它会转到页面的右上角并且滚动不会改变位置。我在java中使用wicket框架。有谁知道这个窗口的名称是什么,以便我可以在 Google 中搜索?谁能帮助我,我该怎么做?