2017-11-24 10 views
0

私はJSFの新機能で、問題に直面しています。私はタグ<h:inputText>を含む小さなアプリケーションを開発しました。アプリケーションを実行すると、テキスト入力部分は表示されません。JSFタグ<h:inputText>が動作しません

User.java: (管理対象Bean)

package com.JSF.UIExample; 

import javax.faces.bean.ManagedBean; 
import javax.faces.bean.RequestScoped; 

@ManagedBean(name = "user", eager = true) 
@RequestScoped 
public class User { 
    private String name; 
    private String password; 
    private String email; 
    private String gender; 
    private String address; 

    public User(){ } 
    // getter and setter 
} 

Detail.xhtml: (ユーザー登録の詳細を作成します)

<!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:f="http://xmlns.jcp.org/jsf/core"> 

<h:head> 
    <title>User Registration</title> 
</h:head> 

<h:body> 
    <h:form id="form"> 
     <table> 
      <tr> 
       <td><h:outputLabel for="username"><b>Username:</b></h:outputLabel></td> 
       <td><h:inputText id="name-id" value="#{user.name}" /></td> 
      </tr> 
      <tr> 
       <td><h:outputLabel for="password"><b>Password:</b></h:outputLabel></td> 
       <td><h:inputSecret id="password-id" value="#{user.password}" /></td> 
      </tr> 
      <tr> 
       <td><h:outputLabel for="email">Email:</h:outputLabel></td> 
       <td><h:inputText id="email-id" value="#{user.email}" /></td> 
      </tr> 
      <tr> 
       <td><h:outputLabel for="gender">Gender:</h:outputLabel></td> 
       <td><h:selectOneRadio value="#{user.gender}"> 
         <f:selectItem itemValue="Male" itemLabel="Male" /> 
         <f:selectItem itemValue="Female" itemLabel="Female" /> 
        </h:selectOneRadio></td> 
      </tr> 
      <tr> 
       <td><h:outputLabel for="address">Address:</h:outputLabel></td> 
       <td><h:inputText id="address-id" value="#{user.address}" cols = "50" rows = "5" /></td> 
      </tr> 
     </table> 
     <h:commandButton value = "Submit" action = "Response.xhtml"></h:commandButton> 
    </h:form> 
</h:body> 
</html> 

Response.xhtml:

以下 コードです
<!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:f="http://xmlns.jcp.org/jsf/core"> 

<h:head> 
    <title>User Details</title> 
</h:head> 

<h:body> 
    <h2> 
     <h:outputText value="Hello #{user.name}" /> 
    </h2> 
    <h4>You have been registered successfully. Following are your 
     details</h4> 
    <table> 
     <tr> 
     <td><b>Email:</b></td> 
     <td><h:outputText value = "#{user.email}"/></td> 
     </tr> 
     <tr> 
     <td><b>Gender:</b></td> 
     <td><h:outputText value = "#{user.gender}"/></td> 
     </tr> 
     <tr> 
     <td><b>Address:</b></td> 
     <td><h:outputText value = "#{user.address}"/></td> 
     </tr> 
    </table> 
</h:body> 

web.xml:

<?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" 
    xmlns:web = "http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    xsi:schemaLocation = "http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
    id = "WebApp_ID" version="2.5"> 

    <welcome-file-list> 
     <welcome-file>faces/Detail.xhtml</welcome-file> 
    </welcome-file-list> 

    <!-- 
     FacesServlet is main servlet responsible to handle all request. 
     It acts as central controller. 
     This servlet initializes the JSF components before the JSP is displayed. 
    --> 

    <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> 

    <servlet-mapping> 
     <servlet-name>Faces Servlet</servlet-name> 
     <url-pattern>*.jsf</url-pattern> 
    </servlet-mapping> 

    <servlet-mapping> 
     <servlet-name>Faces Servlet</servlet-name> 
     <url-pattern>*.faces</url-pattern> 
    </servlet-mapping> 

    <servlet-mapping> 
     <servlet-name>Faces Servlet</servlet-name> 
     <url-pattern>*.xhtml</url-pattern> 
    </servlet-mapping> 

</web-app> 

Mavenの依存関係:のxmlns用のXHTMLファイルの両方で

 <dependency> 
      <groupId>com.sun.faces</groupId> 
      <artifactId>jsf-api</artifactId> 
      <version>2.1.7</version> 
     </dependency> 

     <dependency> 
      <groupId>com.sun.faces</groupId> 
      <artifactId>jsf-impl</artifactId> 
      <version>2.1.7</version> 
     </dependency> 

:H = "http://xmlns.jcp.org/jsf/html"が警告を見つけることができません示していURI http://xmlns.jcp.org/jsf/html & のxmlnsのためにfaceletタグライブラリ:F =「http://xmlns.jcp.org/jsf/core」は私がつもりどこ誰かが教えてもらえ警告がURI http://xmlns.jcp.org/ ためにfaceletタグライブラリを見つけることができません示してい違う。

答えて

0
+0

おかげでお返事のために多くのことを。古い名前空間に変更され、うまくいきました。 –

+0

私はあなたの答えを役に立つとマークして嬉しく思いますが、私は同じことをするには十分な評判がありません。 –

+1

良いとマークしました。 –

関連する問題