我正在将一个应用程序从旧版本的wicket迁移到wicket 8。一些页面工作正常(简单页面,如登录)。这些页面不使用扩展机制。当我访问具有该机制的页面时,该机制不起作用。我不知道这是否是一个bug,但我尝试了所有的方法,但没有找到解决方案。我正在使用wicket 8.0.0-M5(我知道这不是一个稳定的版本)。有人有同样的问题吗?这是我的代码:
WerklijstPagexxx.html
<html xmlns:wicket>
<body>
<wicket:extend>
<div wicket:id="panelXXX"></div>
</wicket:extend>
</body>
Werklijspanelxxx.html
<wicket:head xmlns:wicket>
</wicket:head>
<wicket:panel xmlns:wicket>
<div wicket:id="filter">
<div wicket:id="label"></div>
</div>
</wicket:panel>
WerklijstPageXXX.java
public class WerklijstPageXXX extends BasePage {
private WerklijstPanelXXX werklijstPanel;
public WerklijstPageXXX() {
werklijstPanel = new WerklijstPanelXXX("panelXXX"){};
add(werklijstPanel);
}
@Override
public Panel getContextPanel(String id)
{
return werklijstPanel.getWerklijstFilterPanel();
}
Werklijspanelxxx.java
public abstract class WerklijstPanelXXX extends Panel {
private static final Logger LOG = LoggerFactory
.getLogger(WerklijstPanelXXX.class);
private Panel filterPanel;
public WerklijstPanelXXX(String id) {
super(id);
WebMarkupContainer upperPanel = new WebMarkupContainer("filter");
filterPanel = new Panel("filterPanel") {
};
add(upperPanel);
upperPanel.add(new Label("label"));
}
public Panel getWerklijstFilterPanel() {
return filterPanel;
}
编辑:BasePage。html(它的一部分)
<div id="body" class="body">
<div id="aside" class="aside">
<div wicket:id="contextPanel"></div>
</div>
<div id="content" class="content">
<div class="padding">
<wicket:child></wicket:child>
</div>
</div>
</div>
BasePage.java
@Override
protected void onInitialize() {
super.onInitialize();
add(getContextPanel("contextPanel"));
addTabMenu();
addMenu();
addPatientBar();
}
错误:
根源:
org.apache.wicket.WicketRuntimeException:下面的组件无法呈现。可能的原因是:1)您在代码中添加了一个组件,但忘记在标记中引用它(因此组件永远不会呈现),2)如果您的组件添加在父容器中,请确保子容器的标记包含它们。
> < Li >[WerklijstPanelXXX[Component id = panel XXX,page = nl . Philips . raris . web . werklijst . werklijstpagexxx,path = panelXXX,type = nl . Philips . raris . web . werklijst . werklijst . WerklijstPanelXXX,isVisible = true,isVersioned = true],children =[web markup container[Component id = filter]]] < Li >[web markup container[Component id = filter,page = nl . Philips . raris . web . werklijst . werklijstpagexxx,path = panelXXX:filter,type = org . Apache . wicket . markup . html . web markup container,isVisible = true,isVersioned = true],children =[Component id = label]] < li>[Component id = label,page = nl . Philips . raris . web . werklijst . werklijstpagexxx,path = panelXXX:filter:label,type = org . Apache . wicket . markup . html . basic . label,isVisible = true,isVersioned = true] < Li > < p >[Panel[Component id = filter Panel,page = nl . Philips . raris . web . werklijst . werklijstpagexxx,path = filterPanel,type = org . Apache . wicket . markup . html . Panel . Panel,isVisible = true,isVersioned = true]]
在RequestCycle.java:912(org.apache.wicket.request.RequestHandlerExecutor.execute)在RequestHandlerExecutor.java:65(org.apache.wicket.request.cycle.RequestCycle.execute)在RequestCycle.java:283(org.apache.wicket.request.cycle.RequestCycle.processRequest)在RequestCycle.java:253(org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach)在RequestCycle.java:221(org.apache.wicket.protocol.http.WicketFilter.processRequestCycle)在WicketFilter.java:262(org.apache.wicket.protocol.http.WicketFilter.processRequest)在WicketFilter.java:204(WebPageRenderer.java:124)在org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:236)在org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)在org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(org.apache.wicket.Page.checkRendering)在Page.java:662(org.apache.wicket.Page.onAfterRender)在Page.java:805(org.apache.wicket.markup.html.WebPage.onAfterRender)在WebPage.java:209(org.apache.wicket.Component.afterRender)在Component.java:919(org.apache.wicket.Component.render)在Component.java:2335(org.apache.wicket.Page.renderPage)在Page.java:987(org.apache.wicket.request.handler.render.WebPageRenderer.renderPage)在org. apache. wicklet. servlet. doGet(WicketServlet. java: 137)在javax. servlet. http. HttpServlet. service(HttpServlet. java: 687)在javax. servlet. http. HttpServlet. service(HttpServlet. java: 790)在org. eclipse. jetty. servlet. ServletHandler(ServletHandler. java: 808)在org. eclipse. jetty. servlet. ServletHandler$CachedChain. doFilter(ServletHandler. java: 1669)在org.在org. springframework. orm. hibernate4. support. OpenSessionInViewFilter. doFilter内部(OpenSessionInViewFilter. java: 151)在org. springframe. web. filter. OncePerRequest estFilter. doFilter(OncePerRequest estFilter. java: 107)在org. eclipse. jetty. servlet. ServletHandler$CachedChain. doFilter(ServletHandler. java: 1652)
Java和超文本标记语言组件树应该匹配。
您的HTML状态:<代码>
public WerklijstPageXXX() {
werklijstPanel = new WerklijstPanelXXX("panelXXX"){};
add(werklijstPanel);
}
@Override
public Panel getContextPanel(String id) // HERE id is ignored
{
return werklijstPanel.getWerklijstFilterPanel(); // This returns a panel with id `filterPanel`
}
Ark 容器和 Ark Plugin 在运行时由不同的类加载器加载,不能使用常规的 ServiceLoader 提供 SPI 扩展,SOFAArk 自定义扩展点 SPI 机制, Ark Plugin 实现 SPI 机制,考虑到 Biz 卸载问题,Ark Biz 暂时不支持该 SPI 机制,只适用于 Ark Plugin 之间。 声明扩展接口 使用注解 @Extensible 声明扩展接口,注解定义
本文根据 SOFAChannel#14 直播分享整理,主题:云原生网络代理 MOSN 扩展机制解析。 本文根据 SOFAChannel#14 直播分享整理,主题:云原生网络代理 MOSN 扩展机制解析。 大家好,我是今天的讲师永鹏,来自蚂蚁集团,目前主要负责 MOSN 的开发,也是 MOSN 的Committer。今天我为大家分享的是云原生网络代理 MOSN 的扩展机制,希望通过这次分享以后,能让
本文介绍的是 MOSN 的扩展机制。 本文将才从以下几个方面介绍 MOSN 的扩展机制: MOSN 扩展能力和扩展机制的详细介绍; 结合示例对 MOSN 的 Filter 扩展机制与插件扩展机制进行详细介绍; MOSN 后续扩展能力规划与展望; 本问中的示例在 MOSN 的 Github 的 examples/codes/mosn-extensions 目录下,大家也可以下载下来运行一下。 MOS
在WildFly 8-1上,我的webapps目录中有和。 我已配置: 我有以下JSF。 其中是 更新: 应Guaido79的请求,我的:
PHP-X是一个基于PHP ZendVM的C++封装层,可以基于PHP-X开发PHP扩展、C++嵌入PHP、PHP SAPI等程序。PHP-X可以大大降低PHP内核扩展开发的难度,提升效率。 开源中国码云:http://git.oschina.net/swoole/PHP-X Github仓库:https://github.com/swoole/PHP-X QQ群:376696453 环境依赖 P
嘿,我对typo3很陌生,我想建立一个网站。我正在运行10.4版。安装了引导程序包的类型3中的4个。我已经试着跟着导游走了https://docs.typo3.org/typo3cms/extensions/gridelements/stable/ 我已将打字稿复制到模板设置中,但前端没有输出。记住我是新手,所以我还不能很好地理解打字稿<那我能做些什么呢? 编辑:我想使用GriElements,这