在netbeans下構建wicket項目,網上流傳較多的方法是直接使用netbeans的wicket插件,這種方法雖然簡單,但是依賴的wicket版本較老,更新較慢,並且很容易與其他第三方庫不兼容。使用maven構建wicket項目,可以很好的整合第三方依賴庫,並且也能使用最新的wicket版本,減少一定的安全風險。下面介紹方法。
首先選擇新建項目->Maven->Web應用程序->下一步
<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項目就構建完成了。