临汾信息港
故事
当前位置:首页 > 故事

Wicket初次接触2之Navomatic_a

发布时间:2020-01-17 02:12:27 编辑:笔名

喵。猫咪又来把自己Blog上的文章转到这里来了。欢迎大家访问猫咪的Blog。地址是:http://blog.sina.com.cn/u/1400658603

猫咪这几天上网搜索了一下。发现Wicket已经有了Eclipse插件了,叫WicketBench。不过我试用了一下。发现如果直接使用WicketBench建立工程,无法自动部署(也许是有办法,但是我没找到)。而且好像还有些毛病,总是提示找不到Wicket的包文件。有可能是我设置哪里不对吧。不过用来建立WebPage还是相当好用的。WicketBench没办法直接下载,把http://www.laughingpanda.org/svn/wicket-bench/trunk/wicket-bench-site加入Eclipse的升级站点后运行就可以了。

还有,因为Wicket不需要JSP来显示网页,所以IDE本身只要能支持自动部署和HTML编辑就可以了。猫咪现在推荐使用Eclipse+WTP+WicketBench来编写。和MyEclipse相比,不需要缴纳任何费用,而且全中文(WTP也有自己的中文包。而MyEclipse使用时,即使Eclipse中文包安装了,也只能用英文界面,不然就有可能出错)。如果需要编写Hibernate和Spring,可以再添加Hibernate和Spring专用插件。

好了,这次我们来个稍微复杂一点的,做一个自定义导航条。这次猫咪改用Eclipse+WTP+WicketBench来写。

制作导航条这个自定义组件,需要继承wicket.markup.html.border.Border这个类。而且还要做一个模版页面。

我们首先来看一下模版页面的设计。下面就是一个自定义导航条的模版:

<html>

<body>

<wicket:border>

First<wicket:body/>Last

</wicket:border>

</body>

</html>

其中<wicket:border></wiecket:border>之间的就是导航条的具体内容。格式你可以随便组合。<wicket:body/>标签,表示具体每个使用导航条的页面要显示的文字部分。比如具体页面如下:

<html>

<body>

<spanwicket:id="myBorder">

Middle

</span>

</body>

</html>

那么显示出来就是:

<html>

<body>

FirstMiddleLast

</body>

</html>

“First”和“Last”是模版中的文字,“Middle”是具体网页中的文字。显示的是二者的组合。

好了,现在我们开始编写这个导航条。打开Eclipse,新建一个动态Web工程。建立工程后,首先是建立控制器,NavomaticApplication.class。代码如下:

packagewicket.examples.navomatic;

importwicket.protocol.http.WebApplication;

publicclassNavomaticApplicationextendsWebApplication{

publicClassgetHomePage(){

returnPage1.class;

}

}

然后调整web.xml文件,把这个类加进去。内容如下:

<?xmlversion="1.0"encoding="UTF-8"?>

<web-app>

<servlet>

<servlet-name>NavomaticApplication</servlet-name>

<servlet-class>wicket.protocol.http.WicketServlet</servlet-class>

<init-param>

<param-name>applicationClassName</param-name>

<param-value>wicket.examples.navomatic.NavomaticApplication</param-value>

</init-param>

<load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>NavomaticApplication</servlet-name>

<url-pattern>/app/*</url-pattern>

</servlet-mapping>

</web-app>

现在我们开始编写导航条控件。制作自定义控件和Asp.net差不多,包括一个处理类和一个网页模版。首先建立导航条类NavomaticBorder.class。这个类需要继承wicket.markup.html.border.Border类。在类的构造函数中,添加两个BoxBorder控件。这两个控件如何放置,则是模版文件的工作。类具体代码如下:

packagewicket.examples.navomatic;

importwicket.markup.html.border.Border;

importwicket.markup.html.border.BoxBorder;

publicclassNavomaticBorderextendsBorder{

publicNavomaticBorder(Stringarg0){

super(arg0);

add(newBoxBorder("navigationBorder"));

add(newBoxBorder("bodyBorder"));

}

}

查看本文来源

轻度脑梗死药物治疗可以选通心络吗
儿童咳嗽专用药哪个好
小儿手足口病治疗有几种方法
老君炉藤黄健骨丸的作用
友情链接