2011-03-24 11 views
0

JSPページの3つの変数に対してヌル出力が表示されています。これらは、私のファイルは、次のとおりです。JavaクラスのJSPページのヌル出力

index.jspを

<jsp:useBean id="user" scope="session" class="user.CompileClass" /> 
<jsp:setProperty property="*" name="user"/> 
<HTML> 
<BODY> 
<FORM METHOD=POST ACTION="Result.jsp"> 
What's your name? <INPUT TYPE=TEXT NAME=uname SIZE=20><BR> 
What's your e-mail address? <INPUT TYPE=TEXT NAME=mail SIZE=20><BR> 
What's your age? <INPUT TYPE=TEXT NAME=age SIZE=4> 
<P><INPUT TYPE=SUBMIT> 
</FORM> 
</BODY> 
</HTML> 

CompileClass.java

package user; 

public class CompileClass { 
    public String uname; 
    public String mail; 
    public int age; 


    public CompileClass(){ 
    } 



    public void setUname(String name) { 
     uname = name; 
    } 
    public void setMail(String name) { 
     mail = name; 
    } 
    public void setAge(int num) { 
     age = num; 
    } 

    public String getUname() { 
     return uname; 
    } 

    public String getMail() { 
     return mail; 
    } 

    public int getAge() { 
     return age; 
    } 
/*public void main() 
{ 


}*/ 
} 

はresult.jsp

<jsp:useBean id="user" scope="session" class="user.CompileClass" /> 

<html> 

    <body> 
    You entered:<BR> 

Name: <%= user.getUname() %><br/> 
Email: <%= user.getMail() %><BR> 
Age: <%= user.getAge() %><BR> 
    </body> 
</html> 

Eclipseでこれらのファイルを含むプロジェクトをコンパイルし、正常に実行されているが、私は名前 * メール *と年齢のための任意の入力を与えているとき、出力に含まがヌル

すべてのヘルプですか?れますか

答えて

1

開始ページの表示中ではなく、結果ページの表示中にBeanのプロパティを設定する必要があります(単に送信されたものがないため)。 result.jspindex.jspから

<jsp:setProperty property="*" name="user"/> 

を移動します。実際にはの<jsp:useBean>も無意味ですが、あなたはどこにいてもそれを使用していません。その行をindex.jspから削除するだけです。

また、古い形式のスクリプトレットをELで置き換えて、実際のBeanプロパティを表示する必要があります。

Name: ${user.uname}<br/> 
Email: ${user.mail}<br/> 
Age: ${user.age}<br/> 
+0

ありがとう:)問題を解決しました – Anurag

+0

提案ありがとうございます。しましょう。 – Anurag