使用maven在netbeans下构建wicket项目
在netbeans下构建wicket项目,网上流传较多的方法是直接使用netbeans的wicket插件,这种方法虽然简单,但是依赖的wicket版本较老,更新较慢,并且很容易与其他第三方库不兼容。使用maven构建wicket项目,可以很好的整合第三方依赖库,并且也能使用最新的wicket版本,减少一定的安全风险。下面介绍方法。
首先选择新建项目->Maven->Web应用程序->下一步
接下来输入项目名称和项目位置,选择下一步,选择你使用的服务器和Java EE版本,点击完成,创建了一个基于maven组织的web项目。接下来添加这个web依赖的项目。
当这个web项目创建后,会在“项目文件”中生成pom.xml,打开它,找到<dependencies>节点,在该节点下添加wicket依赖:
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-core</artifactId>
<version>6.22.0</version>
</dependency>
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-auth-roles</artifactId>
<version>6.22.0</version>
</dependency>
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-extensions</artifactId>
<version>6.22.0</version>
</dependency>
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-ioc</artifactId>
<version>6.22.0</version>
</dependency>
如果需要添加jquery-ui,可以增加以下依赖:
<dependency>
<groupId>com.googlecode.wicket-jquery-ui</groupId>
<artifactId>wicket-jquery-ui</artifactId>
<version>6.22.0</version> <!-- or 1.5.11, 6.21.0 -->
</dependency>
<dependency>
<groupId>com.googlecode.wicket-jquery-ui</groupId>
<artifactId>wicket-jquery-ui-core</artifactId>
<version>6.22.0</version>
</dependency>
<dependency>
<groupId>com.googlecode.wicket-jquery-ui</groupId>
<artifactId>wicket-jquery-ui-calendar</artifactId>
<version>6.22.0</version>
</dependency>
<dependency>
<groupId>com.googlecode.wicket-jquery-ui</groupId>
<artifactId>wicket-kendo-ui</artifactId>
<version>6.22.0</version>
</dependency>
这时候依赖关系就创建好了,最新版本的wicket库也导入了进来。接下来设置代码和资源所在的位置。找到<build>节点,在该节点下添加资源节点,如下所示:
<resources>
<resource>
<filtering>false</filtering>
<directory>src/main/java</directory>
<includes>
<include>**</include>
</includes>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
这里<directory>节点指定了java资源的位置,即以pom.xml所在位置为根目录,其下资源路径为src/main/java。
之后可以在资源路径下编写wicket的应用程序代码,例如定义一个Application类继承自WebApplication,重载一些必须的方法。当完成wicket代码编写后,修改“web页”,将index.jsp删除掉,添加一个WEB-INF目录,在这个目录下添加一个web.xml,将以下内容复制进去:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<filter>
<filter-name>WicketApplication</filter-name>
<filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
<init-param>
<param-name>applicationClassName</param-name>
<param-value>com.example.src.Application</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>WicketApplication</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
</web-app>
<param-value>节点即对应了你src/main/java下Application类的名称和路径(此处为com/example/src)
于是netbeans下wicket项目就构建完成了。