WEB开发网
开发学院软件开发Java 创建并扩展Apache Wicket Web应用 阅读

创建并扩展Apache Wicket Web应用

 2010-06-30 00:00:00 来源:WEB开发网   
核心提示: 可以看到,Global项目用Warsaw WAR创建最终的Web归档文件,创建并扩展Apache Wicket Web应用(4),出于编译需要,还使用了Warsaw的类(打包在JAR里),该系统能自动发现、装载classpath里JAR包中的Wicket网页,示例应用使用了WicketStuff

可以看到,Global项目用Warsaw WAR创建最终的Web归档文件,出于编译需要,还使用了Warsaw的类(打包在JAR里)。我们将属性classifier设置为classes,以此定义该从仓库中选择哪个工件。将scope设置为provided,则是告诉Maven只在编译时需要该工件,运行时则从其他地方获得。“其他地方”当然就是指Warsaw项目的WAR工件,WAR插件会将WAR和JAR合并在一起。现在已经正确配置了依赖关系,那我们就开始构建派生的Wicket应用吧。

Wicket框架介绍

要开始Apache Wicket之旅,建议你构建、研究一下Apache Wicket的QuickStart应用。如果你觉得这个框架有用且有趣,也推荐你读一读《Wicket in Action》这本书。Wicket框架中,主应用类必须继承 org.apache.wicket.protocol.http.WebApplication,Web页面可以在主应用类的init()方法中进行装载。该技术很常用,但也有一个不利之处。如果主应用类是在基项目(这里是Warsaw)里定义的,那依赖应用(Global)就不能添加新的Web页面了。当然,我们可以在其他项目中再一次继承该类,但接着还要修改web.xml中对该类的引用,如清单5所示。该问题的一个解决方法是引入一个系统,该系统能自动发现、装载classpath里JAR包中的Wicket网页。示例应用使用了WicketStuff注解驱动的解决方案。

清单5:Wicket QuickStart应用的web.xml文件片段。

<filter> 
 <filter-name>wicket.base</filter-name> 
 <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class> 
 <init-param> 
  <param-name>applicationClassName</param-name> 
  <param-value>com.example.modular.warsaw.WicketApplication</param-value> 
 </init-param> 
</filter> 

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:创建 扩展 Apache

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接