论坛登陆 用户名:  密 码:
设为首页  加入收藏
08年北京名校秋季招生
名牌院校免试入学宽进严出,突破考分限制,名校与你零距离,以下院校按报名先后顺序录取,24小时网上报名覆盖全国
  您现在的位置: 中国教育招生在线 >> IT >> JAVA认证 >> IT正文
Wicket初次接触之HelloWorld
 作者:佚名     2007-3-14 17:35:57        来源:不详  浏览次数:

 

 

 

 

 

 

 

 

Wicket是一个新出现的表现层框架(实际上从立项到现在也不短了)。Java社区里就是这样,各种各样的框架都快成灾了。以表现层的最多(在表现层、中间层和持久层中,表现层是最好开发的),估计大的小的,出名的不出名的,国内国外的能有几十个。Wicket目前最大的问题是名气太小,相关资料也少得可怜.即使有一点,也大都是英文的(国内的朋友听到英文,很多都头疼吧,喵!其实猫咪也很头疼,怎么也没中文的好理解)。
  行了,废话不说了。现在我们来做第一个Wicket例子,所有教程中用烂了的“Hello World”。猫咪平时使用Eclipse3.2(搭配MyEclipse5)开发,你也可以使用其它IDE。Wicket的开发环境支持目前还比较差,没有Eclipse插件(今天猫咪把文章转到这里的时候,已经发现了一个插件,叫Wicekt Bench)。首先到Wicket的老窝把这个框架下到自己的机器上。网址是http://wicket.sourceforge.net。目前只要下载核心包就可以了。猫咪写这篇文章的时候,最新的版本是1.2.2。
  首先,打开Eclipse,新建一个Web工程。把下来的wicket-1.2.2-bin.zip解压缩,把其中的wicket-1.2.2.jar拷贝到新建工程的WebRoot\WEB-INF\lib下。现在就可以开始写了。
  首先是编写web.xml文件。< web-app>中加入如下内容:
< display-name>Wicket Examples
< servlet>
    < servlet-name>HelloWorldApplication
    < servlet-class>wicket.protocol.http.WicketServlet
    < init-param>
     < param-name>applicationClassName
     < param-value>org.Miao.HelloWorldApplication
    < /init-param>
    < load-on-startup>1< /load-on-startup>
< /servlet>
< servlet-mapping>
    < servlet-name>HelloWorldApplication< /servlet-name>
    < url-pattern>/app/*< /url-pattern>
< /servlet-mapping>
  其中WicketServlet有点类似于Struts中的ActionServlet。这个配置把所有对/app的访问由Wicket进行处理。但是Wicket中没有那些Action类。applicationClassName也只是负责返回实际处理请求的Java类。这个配置中,由一个叫HelloWorldApplication的Java类负责。这个类继承了wicket.protocol.http.WebApplication,需要实现getHomePage()方法。这个方法,返回实际处理请求的Java类。
  我们需要在网页上显示一个“HelloWorld!”。我设定这个请求由一个叫HelloWorld的类处理。
  下面是HelloWorldApplication的代码:
package org.Miao;
import wicket.protocol.http.WebApplication;
public class HelloWorldApplication extends WebApplication {
 @Override
 public Class getHomePage() {
  // TODO Auto-generated method stub
  return HelloWorld.class;
 }
}
很简单吧。HelloWorldApplication只是把具体处理的类拿处理,自己什么也不干。
  然后是显示的页面,这里的网页名称是HelloWorld.html.Wicket中网页和Java处理类的名称必须一致,而且要放在一个目录下,不然就会发生异常。猫咪也是自己试验了好久,根据Wicket提供的QuickStart和自己根据网站HelloWorld例子写的代码做对比,才发现的。不知道是不是猫咪的英语功底太差,没有在英文说明中看到这个要求。结果好久才调好。
  HelloWorld.html如下:
      Message goes here   
注意红色的部分,Wicket在html标准标记里加了一个属性。这样一来,美工和网页编写人员,可以不管Java代码,把精神放在网页本身。编写网页的人员,即使不懂任何Java知识也没关系,不用担心排版会破坏代码。
  下面是具体的处理类HelloWorld.class。
package org.Miao;
import wicket.markup.html.WebPage;
import wicket.markup.html.basic.Label;
public class HelloWorld extends WebPage {
 public HelloWorld(){
  add(new Label("message","HelloWorld!"));
 }
}
这个类继承自一个WebPage类。在构造函数里,使用add方法,添加了一个标签。标签名是message,内容是HelloWorld!。看到这个message了吗?它就是对应着网页里那个wicket:id属性的。
  好了,现在就可以部署了。猫咪用的是自己的美国亲戚-Tomcat。大家也可以使用其它Web容器。然后运行浏览器,输入http://localhost:8080/HelloWorld/app/
(这是猫咪的工程缺省路径,你根据自己的开发环境修改)。看看是不是和下面一样?如果一样,那就表示你的程序成功运行。如果显示Message goes here,那就表示哪里出了问题,你要仔细查下代码,看和猫咪写的哪里不一样,是不是这些不同造成了运行失败。
 


责任编辑:lss
  相关新闻
爽!我的Windows Server 2003学习体会
1999年4月二级笔试试题BASIC答案,基础教程网
Jsp中的Application使用
1998年4月二级笔试试题BASIC答案,基础教程网
1998年9月二级笔试试题BASIC答案,基础教程网
计算机等级一级WINDOWS笔试考试技巧
JAVA测试:使用JMock来实现孤立测试
1999年4月一级笔试试题WINDOWS答案,基础教程网
通过java.net.Socket类抓取网页内容
Win2003下Exchange 2003安装全图解二
1999年4月二级笔试试题BASIC答案,基础教程网
1998年9月二级笔试试题BASIC答案,基础教程网
1998年4月二级笔试试题BASIC答案,基础教程网
1999年4月一级笔试试题WINDOWS答案,基础教程网
六招应对一级Windows笔试,基础教程网
计算机等级一级WINDOWS笔试考试技巧
爽!我的Windows Server 2003学习体会
Windows Server 2003“教父”访谈录
Windows NT平台下Oracle优化策略简介
微软新推Dynamics社区 打造Myspace商务版
  评论
现在有100人对本文发表评论
查看所有评论
 
推  荐
 
100本成功必读热销书
热门招生
  北京文理研修学院   前进大学
  北京明园大学   北京建设大学
  北京邮电大学世纪学院   北方工商管理学院
  联想软件定向委培班   香港数码动画学院
  青年企业管理研修学院   北京华夏管理学院
热门培训
网络化办公专家培训认证 电子科技大学软件学院
软件测试工程师培训认证 北大青鸟十大授权培训
IT硬件工程师培训认证班 北京环球雅思荷兰预科
JAVA开发工程师培训 潜能时代IT服务管理培训
网络信息化工程师培训 清华大学继续教育学院
论坛精选
 
有些细节是男人也该注意的风度!最容易读错的字
某强人手机里保存的30条短信 中国十大高薪职业
最感人的十大韩剧经典台词 嫁给工程师的N个理由
爆强!只有一句话的鬼故事 转贴教你如何做妖精
 女人一定要記住的話 女人最好别嫁给最爱的男人
城市联盟
 大连 上海 天津 广州 西安 深圳  天津  青岛  大连  福州  沈阳  青海  连云港  南京  吉林  厦门  威海  辽宁  呼和浩特
Copyright © 2006   www.edu999.com   All rights reserved. 中国教育招生在线  版权所有
北京市通信管理局[2004]字第552号函    京ICP证040442号