生活随笔
收集整理的這篇文章主要介紹了
eclipse开发jsf_在Eclipse上创建JSF / CDI Maven项目
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
eclipse開發(fā)jsf
當我在研究JSF和CDI示例時,我認為提到創(chuàng)建JSF和CDI Maven項目所需的步驟會很有用。 您可以找到以下步驟。
工具類
- 默認情況下,M2E插件隨附的Eclipse Luna。 因此,無需自己安裝插件。
- WildFlye8.x。
從主菜單中選擇文件->新建->其他。 然后選擇Maven-> Maven項目。
單擊下一步按鈕,然后選中“創(chuàng)建簡單項目(跳過原型選擇)”。
寫下組ID和工件ID,然后選擇包裝作為WAR。
單擊“完成”按鈕創(chuàng)建項目,并在“導航器”視圖中顯示波紋管結(jié)構(gòu)。
如您所見,由于沒有WEB-INF文件夾,因此沒有部署描述符文件(web.xml)。 同樣,通過檢查Project Facets(選擇項目,然后選擇ALT + ENTER,然后從左側(cè)菜單中選擇Project Facets),我們可以看到Dynamic Web Module的版本為2.5,并且未選擇JavaServer Faces。 因此,現(xiàn)在該對我們的項目進行一些配置了。
右鍵單擊項目名稱,然后單擊配置->添加JSF功能。 這會將項目配置為JSF項目,并添加帶有web.xml和faces-config.xml的WEB-INF。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"version="2.5"><display-name>JSFCDIMavenProject</display-name><servlet><servlet-name>Faces Servlet</servlet-name><servlet-class>javax.faces.webapp.FacesServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>Faces Servlet</servlet-name><url-pattern>/faces/*</url-pattern></servlet-mapping>
</web-app><?xml version="1.0" encoding="UTF-8"?>
<faces-configxmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"version="2.2"></faces-config> 將必要的API作為依賴項添加到pom.xml。 另外,添加帶有版本3.1的maven-compiler-plugin。 我還指出了maven使用Java編譯器1.7版。 所以這是最終的pom.xml。 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.ithinkisink</groupId><artifactId>JSFCDIMavenProject</artifactId><version>0.0.1-SNAPSHOT</version><packaging>war</packaging><name>JSFCDIMavenProject Maven Webapp</name><dependencies><dependency><groupId>javax.inject</groupId><artifactId>javax.inject</artifactId><version>1</version><scope>provided</scope></dependency><dependency><groupId>javax.faces</groupId><artifactId>jsf-api</artifactId><version>2.1</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency><dependency><groupId>javax.enterprise</groupId><artifactId>cdi-api</artifactId><version>1.0</version><scope>provided</scope></dependency></dependencies><build><finalName>JSFCDIMavenProject</finalName><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><source>1.7</source><target>1.7</target></configuration></plugin></plugins></build>
</project> 現(xiàn)在,右鍵單擊項目名稱,然后選擇“ Maven”->“更新項目”以使用新添加的配置更新項目。 部署描述符(web,xml)的版本為2.5,我們在依賴項中指向servlet 3.1。 因此,按照Java EE 7XML模式,名稱空間更改為http://xmlns.jcp.org/xml/ns/javaee/。 這是應用更改后的最終web.xml。 <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"version="3.1"><display-name>JSFCDIMavenProject</display-name><servlet><servlet-name>Faces Servlet</servlet-name><servlet-class>javax.faces.webapp.FacesServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>Faces Servlet</servlet-name><url-pattern>/faces/*</url-pattern></servlet-mapping>
</web-app> 再次檢查項目構(gòu)面。 您可以更改版本3.1的動態(tài)Web模塊,并根據(jù)依賴項中添加的版本將JavaServer Faces與版本2.2進行檢查。
所需的最后一個配置是啟用CDI上下文。 這可以通過創(chuàng)建一個名為beans.xml的XML文件并將其作為以下文件添加到WEB-INF文件夾中來完成。 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"bean-discovery-mode="all">
</beans>
最后,將項目添加到WildFly,然后啟動服務器。 您將在控制臺視圖中看到WildFly啟動了將CDI部署到應用程序的服務。
我已將此存根項目推送到我的GitHub,您可以通過以下URL找到它。
- https://github.com/belalgalal/Blogging/tree/master/JSFCDIMavenProject
翻譯自: https://www.javacodegeeks.com/2016/02/creating-jsfcdi-maven-project-eclipse.html
eclipse開發(fā)jsf
總結(jié)
以上是生活随笔為你收集整理的eclipse开发jsf_在Eclipse上创建JSF / CDI Maven项目的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。