2012-01-31 3 views
0

私はこの問題を解決できません。JSPでJavaBeanを使用中に例外が発生しました

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Insert title here</title> 
</head> 
<body> 

<jsp:useBean id="musteri" class="beanler.MusteriBean" scope="request" ></jsp:useBean> 

<%musteri.setIsim("Ferid");%> 
<%=musteri.getIsim() %> 
</body> 
</html> 

EXCEPTION:SEVERE: パス[/ Servlet_Projesi]に関連してサーブレット[JSP]のためのServlet.service()は例外をスローした[/beanTest.jsp(ライン:11、 カラム:0) useBeanクラス属性の値 beanler.MusteriBeanが無効です。根本原因 org.apache.jasper.JasperException:/beanTest.jsp(行:11、列:0) useBeanクラス属性の値beanler.MusteriBean が無効です。

package beanler; 

public class MusteriBean { 
    private String isim; 
    private String soyad; 

    public String getIsim() { 
     return isim; 
    } 
    public void setIsim(String isim) { 
     this.isim = isim; 
    } 
    public String getSoyad() { 
     return soyad; 
    } 
    public void setSoyad(String soyad) { 
     this.soyad = soyad; 
    } 
} 

enter image description here

答えて

1

あなたは試してみることができます<%=musteri.getIsim() %>

+0

..

<jsp:useBean id="musteri" class="beanler.MusteriBean" scope="request" /> 

、それは働きます! –

+0

あなたは大歓迎です... –

1

2点を使用することができます表示しながら<jsp:setProperty>

<jsp:useBean id="musteri" class="beanler.MusteriBean" scope="request" > 
<jsp:setProperty name="musteri" property="isim" value=" Ferid" /> 
</jsp:useBean> 

を使用してプロパティを設定してみてください。

は、[1] [2] [必須ではありません]

private String isim = null; 
private String soyad = null; 

のようなあなたのクラスのプロパティを初期化

public class MusteriBean implements java.io.Serializable

+0

ありがとう@RaviGは仕事です。しかし、なぜこの変更を行ったのか説明できますか? –

+1

これはこれを機能させたものではありません。私の推測では、ソースコードを変更すると、Eclipseで再コンパイルがトリガーされたため、サーバーに再デプロイメントがトリガーされ、クラスをJSPで使用できるようになりました。あなたのコードは初めからうまくいきました(スクリプトレットはもう10年以上使用すべきではありません)。非プリミティブフィールドのデフォルト値はnullです。 nullに初期化するだけでノイズが追加されます。 –

+0

@JB Nizet No。Beanを初期化するときに、クラスプロパティが初期化されることが期待されます。 –

1

のようなSerializableを実装し、私はまた、別の解決策を見つけました。

<jsp:useBean id="musteri" class="beanler.MusteriBean" scope="request" ></jsp:useBean> 

私はそれを変更:Thanxsラメシュは、この作品