IDEA 2020.2 部署JSF項(xiàng)目的詳細(xì)過(guò)程
1、下載glassfish
去官網(wǎng)下載glassfish4.1.1(最后發(fā)現(xiàn)glassfish5也行)
官網(wǎng)地址:GlassFish
https://javaee.github.io/glassfish/
點(diǎn)擊download
選擇圖中版本
下載完解壓到自己指定的目錄即可
2、配置glassfish環(huán)境變量
將glassfish的bin目錄添加到系統(tǒng)變量path中
3、修改jdk環(huán)境變量
將之前系統(tǒng)環(huán)境變量path里的jdk1.8的環(huán)境變量上移到第一個(gè)
注意:jdk一定要是1.8,并且必須移到第一個(gè)
4、測(cè)試glassfish是否可以正常啟動(dòng)
在cmd里直接輸入 asadmin start-domain ,出現(xiàn)下圖所示即表明配置成功
再輸入 asadmin stop-domain 可以停止glassfish
5、在IDEA中創(chuàng)建一個(gè)JSF項(xiàng)目
1.選擇 java Enterprise, 點(diǎn)擊next
2.勾選 Web Profile,IDEA會(huì)自動(dòng)幫你勾選其他所需要的框架(包括JSF),點(diǎn)擊next
3.輸入模塊名,點(diǎn)擊finish
4.IDEA生成默認(rèn)的項(xiàng)目結(jié)構(gòu)
5.默認(rèn)pom文件內(nèi)容
<?xml version="1.0" encoding="UTF-8"?> <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>org.example</groupId> <artifactId>jsf-03</artifactId> <version>1.0-SNAPSHOT</version> <name>jsf-03</name> <packaging>war</packaging> <properties> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.source>1.8</maven.compiler.source> <junit.version>5.6.2</junit.version> </properties> <dependencies> <dependency> <groupId>javax</groupId> <artifactId>javaee-web-api</artifactId> <version>8.0.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>3.3.0</version> </plugin> </plugins> </build> </project>
6.修改默認(rèn)生成文件,不修改會(huì)報(bào)錯(cuò)
<faces-config 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-facesconfig_2_2.xsd" version="2.2"> </faces-config>
7.在webapp目錄下新建index.xhtml文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:f="http://xmlns.jcp.org/jsf/core"> <f:view> <h:outputLabel value="Hello, world"/> </f:view> </html>
8.配置運(yùn)行環(huán)境
點(diǎn)擊運(yùn)行->編輯配置
9.點(diǎn)擊左上角➕,選擇glassfish,local
10.點(diǎn)擊配置,找到自己解壓的glassfish的根目錄
11.點(diǎn)擊部署,點(diǎn)擊➕,點(diǎn)擊工件,選擇war_explore結(jié)尾的
12.點(diǎn)擊應(yīng)用,點(diǎn)擊服務(wù)器,修改默認(rèn)生成的url
13.點(diǎn)擊確定, 啟動(dòng)服務(wù)器,在瀏覽器里輸入相應(yīng)鏈接進(jìn)行訪問(wèn)
6.問(wèn)題:部分標(biāo)簽元素?zé)o法顯示
1.頁(yè)面代碼如圖所示
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:f="http://xmlns.jcp.org/jsf/core"> <head> MessagesTags </head> <h:head> </h:head> <h:body> <h:form> <h:panelGrid columns="1" width="60%"> <f:facet name="header">Login</f:facet> <f:facet name="footer"> <h:outputText value="快到中秋節(jié)了"/> <h:commandButton action="Layoutpage" value="Submit"/> </f:facet> <h:panelGroup> <h:outputText value="Enter ID:"/><h:inputText id="it1" required="true" requiredMessage="ynb"/> <h:message for="it1"/> </h:panelGroup> <h:panelGroup> <h:inputSecret required="true"> <h:outputLabel value="Enter Password"/> </h:inputSecret> </h:panelGroup> </h:panelGrid> <h:messages/> </h:form> </h:body> </html>
2.運(yùn)行效果圖
3.報(bào)錯(cuò)代碼:
Error in event handler: Error: Failed to execute 'appendChild' on 'Node': This node type does not support this method.
at Updater.check (chrome-extension://fhopckooaleifhophcpcakhfkajmnffo/js/gmWrapper.js:4:3204)
at init (chrome-extension://fhopckooaleifhophcpcakhfkajmnffo/js/jquery-1.7.2.js:1:3311)
at onReadyGM (chrome-extension://fhopckooaleifhophcpcakhfkajmnffo/js/jquery-1.7.2.js:1:76)
at Object.onInitializedGM (chrome-extension://fhopckooaleifhophcpcakhfkajmnffo/js/gmWrapper.js:4:636)
at Object.callbackResponse (chrome-extension://fhopckooaleifhophcpcakhfkajmnffo/js/gmWrapper.js:4:331)
at chrome-extension://fhopckooaleifhophcpcakhfkajmnffo/js/gmWrapper.js:4:3378
4.原因,web.xml 文件配置錯(cuò)誤
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <display-name>JSF_SE_CH2_html01_0915</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> <context-param> <description>State saving method: 'client' or 'server' (=default). See JSF Specification 2.5.2</description> <param-name>javax.faces.STATE_SAVING_METHOD</param-name> <param-value>client</param-value> </context-param> <context-param> <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name> <param-value>resources.application</param-value> </context-param> <listener> <listener-class>com.sun.faces.config.ConfigureListener</listener-class> </listener> <welcome-file-list> <welcome-file>faces/index.xhtml</welcome-file> </welcome-file-list> </web-app>
5.解決辦法,將web.xml文件內(nèi)容刪除,只保留 <welcome-file-list> 即可
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <display-name>JSF_SE_CH2_html01_0915</display-name> <welcome-file-list> <welcome-file>faces/index.xhtml</welcome-file> </welcome-file-list> </web-app>
6.運(yùn)行截圖,至此,大功告成!
到此這篇關(guān)于IDEA 2020.2 部署JSF項(xiàng)目的文章就介紹到這了,更多相關(guān)IDEA 2020.2 部署JSF項(xiàng)目?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MyBatis圖文并茂講解注解開(kāi)發(fā)一對(duì)一查詢
這篇文章主要介紹了SpringBoot中Mybatis注解一對(duì)一查詢的實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07plantuml畫(huà)圖實(shí)現(xiàn)代碼畫(huà)時(shí)序圖UML用例圖
這篇文章主要為大家介紹了plantuml畫(huà)圖實(shí)現(xiàn)代碼畫(huà)時(shí)序圖示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07java 中mongodb的各種操作查詢的實(shí)例詳解
這篇文章主要介紹了java 中mongodb的各種操作查詢的實(shí)例詳解的相關(guān)資料,希望通過(guò)本文能幫助到大家,需要的朋友可以參考下2017-09-09Spring Boot Web 開(kāi)發(fā)注解篇
在 Spring Boot 快速入門(mén)中,只要在 pom.xml 加入了 spring-boot-starter-web 依賴,即可快速開(kāi)發(fā) web 應(yīng)用。下文給大家詳細(xì)介紹了spring boot web 開(kāi)發(fā)注解,感興趣的朋友參考下吧2017-08-082020最新eclipse安裝過(guò)程及細(xì)節(jié)
這篇文章主要介紹了2020最新eclipse安裝過(guò)程及細(xì)節(jié),本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08