`

<wicket:link><wicket:child><wicket:extend><wicket:remove>

 
阅读更多
转自:http://shazhifeng.iteye.com/blog/319885
我们使用wicket的Link控件之后我们可以对<a>标签进行强有力的控制,但是如果出现特殊的情况,一定要在HTML页面上出现连接URL,那么<a href="test.html">连接到test页面</a>就会失效,因为我们的wicket程序和页面是放在classes文件夹下面,因此这样会访问不到test.html。

   我们需要使用<wicket:link>标签围堵:

   <wicket:link>

       <a href="test.html">连接到test页面</a>

   <wicket:link/>

    这样就可以访问了。

    还有另外一个应用,我以前写J2EE页面的时候,那些重复出现的页面,例如导航栏,copyright栏,我一般都是使用include动作或者include指令包含进来,刚学习wicket的时候wicket也提供了一个Include控件实现同样的功能。但是我觉得最强大的还是使用<wicket:child> <wicket:extend>实现页面的继承,啊,好强大啊!我以前一直都想J2EE页面可不可以继承重用呢,wicket帮我实现了!

    例子:

    我有一个BasePage.html,只显示页头和页尾:

<html>

<body>

    <span wicket:id="header">这里显示页头</span>

    <wicket:child/>

    <span wicket:id="footer">这里显示页尾</span>

</body>

</html>

我们注意到中间那个<wicket:child/>。这标签表示在页头页尾之间显示BasePage.java的子类页面。

之后编写ChildPage.html页面:

<html>

<body>

<wicket:extend>

这里是我继承的地方!

<wicket:extend/>

</body>

</html>

我们需要BasePage extends WebPage,ChildPage extends BasePage

那么最后当我们链接到ChildPage.html的时候,就会显示:

页头

这里是我继承的地方!

页尾

<wicket:remove>主要用于屏蔽一些假数据,例如原来美工为了看到页面效果用来显示的假数据。用次标签围堵的数据不会显示到客户端。
分享到:
评论

相关推荐

    wicket国际化例子

    StringResourceModel model = new StringResourceModel("welcome.user", this, null, new Model&lt;&gt;(username)); String localizedText = model.getObject(); ``` **四、多语言切换** 1. **LocaleResolver**:...

    jboss as 7 support jsf2.2.1 modules

    JSF的无状态实现方式很直观,处理&lt;f:view&gt;的TagHandler将其布尔值属性transient 传递给UIViewRoot#setTransient即可。如果页面设置为临时的,JSF StateManager就不存储它的任何数据,页面还原时,它也会被创建为无...

    Wicket 开发指南

    - **模板继承**:可以使用`&lt;wicket:extend&gt;`标签实现模板的继承,减少重复代码。 - **条件标签**:如`&lt;wicket:container&gt;`可以根据模型值动态显示或隐藏元素。 6. **调试和测试** - **调试工具**:Wicket提供了...

    Wicket 1.4 开发手记(一) helloworld与环境配置

    &lt;groupId&gt;org.apache.wicket&lt;/groupId&gt; &lt;artifactId&gt;wicket-core&lt;/artifactId&gt; &lt;version&gt;1.4.17&lt;/version&gt; &lt;/dependency&gt; &lt;/dependencies&gt; ``` ##### 3. 编写Hello World应用 创建一个简单的Wicket页面,展示...

    wicket的ajax范例(级联选择框)

    DropDownChoice&lt;String&gt; firstName = new DropDownChoice&lt;&gt;("firstName", new CompoundPropertyModel&lt;&gt;(Test.this), firstList) { @Override protected void onComponentTagBody(final MarkupStream markupStream...

    第一个struts2

    例如,`&lt;s:textfield&gt;`用于创建输入字段,`&lt;s:submit&gt;`创建提交按钮,`&lt;s:property&gt;`用来显示值栈中的数据。这些标签使得开发者无需直接处理HTML代码,提高了代码的可读性和可维护性。 ValueStack是Struts2的核心...

    wicket的helloworld

    &lt;div wicket:id="message"&gt;&lt;/div&gt; &lt;/body&gt; &lt;/html&gt; ``` **五、运行并测试** 1. **配置Web服务器**:配置你的Web服务器(如Tomcat)或使用内置的Jetty服务器(如果使用Maven或Gradle插件)来运行你的应用。 2. *...

    wicket-handlebars:提供一些专门的面板和一些相关的实用程序,使用户能够使用 Handlebars.js 和 Apache Wicket

    文档:通过所有mustache模空白差异添加maven依赖: &lt; dependency&gt; &lt; groupId&gt;de.agilecoders.wicket.mustache&lt;/ groupId&gt; &lt; artifactId&gt;wicket-mustache&lt;/ artifactId&gt; &lt; version&gt;0.1.0&lt;/ version&gt;&lt;/ dependency&gt; ...

    wicket 官方JAVA教程

    Wicket使用Wicket标记语言(WML)或者直接使用HTML模板,通过`&lt;wicket:id&gt;`标签将HTML元素与Java组件关联。这使得开发者可以在不修改HTML的情况下更新组件的行为。 **6. 国际化与本地化** Wicket提供内置的国际化...

    wicket常用控件使用方法

    &lt;span wicket:id="lbName"&gt;&lt;/span&gt; ``` - Java部分: ```java Label lbName = new Label("lbName", "wyk"); this.add(lbName); ``` - 这种方法仅能显示静态文本“wyk”,并且无法动态修改。 - **使用Model*...

    wicket学习

    Form&lt;ClinicItem&gt; form = new Form&lt;&gt;("form"); add(new Component[]{form}); form.add(new Component[]{button}); ``` #### 四、Wicket配置与部署 1. **web.xml配置**:这是Wicket应用的重要配置文件,...

    wicket-ace:用于Wicket的AceEditor集成

    textarea wicket:id =" code " &gt; &lt;/ textarea &gt; 更多例子 您可以通过将wicket-ace maven项目导入到IDE中并运行Start类来运行示例。 下载 wicket-ace托管在Maven Central中 &lt; dependency&gt; &lt; groupId&gt;org....

    facelet.pdf

    &lt;param-value&gt;.xhtml&lt;/param-value&gt; &lt;/context-param&gt; ``` 4. **配置`faces-config.xml`**:指定使用Facelets的视图处理器。 ```xml &lt;application&gt; &lt;view-handler&gt;com.sun.facelets.FaceletViewHandler&lt;/view-...

    wicket 基础知识培训

    Wicket 是一个开源的Java Web框架,用于构建可重用且易于维护的Web应用程序。它以其组件模型和数据绑定机制而闻名,与Struts等传统MVC框架相比,提供了更直观和面向对象的编程方式。 在Wicket基础知识培训中,首先...

    Wicket1.4开发手记(四)[借鉴].pdf

    firstName = new DropDownChoice&lt;&gt;("firstName", new PropertyModel&lt;&gt;(this, "firstName"), firstList); firstName.add(new AjaxFormComponentUpdatingBehavior("onchange") { @Override protected void onUpdate...

    wicket:Apache Wicket-基于组件的Java Web框架

    什么是Apache Wicket?... 可以在以下位置找到Apache Wicket: : 并已获得Apache Software Foundation许可版本2.0的许可。 入门 Wicket项目包含多个资源和项目,您可以从中学习并快速入门: Wicket用户指南 ://w

    wicket7教程

    在页面标记方面,Wicket使用了自己的标记语言,特别是wicket:extend标签,它允许页面继承其他页面的标记,从而使得页面的组织更为清晰和有序。 在控制HTML方面,Wicket提供了多种机制,如隐藏或禁用组件、修改标签...

    wicket-jquery-ui:Wicket中的jQuery UI和Kendo UI集成(6.x,7.x和8.x)

    wicket-jquery-ui Wicket 7.x,Wicket 8.x和Wicket9.x中的jQuery UI和Kendo UI集成 ... &lt; artifactId&gt;wicket-jquery-ui&lt;/ artifactId&gt; &lt; version&gt;9.2.1&lt;/ version&gt; &lt;/ dependency&gt; &lt; dependency

    Wicket

    NULL 博文链接:https://fengyunxiao.iteye.com/blog/684835

    docker-wicket:适用于v1和v2的Docker注册表authindex服务器

    Docker Wicket 适用于v1和v2的Docker注册表身份验证/索引服务器。 该项目基于和。...v2 + auth)服务器docker login 127.0.0.1:5000&lt;any&gt;docker tag &lt;YOUR&gt; 127.0.0.1:5000/testdocker push 127.0.0.1:5000/te

Global site tag (gtag.js) - Google Analytics