2012-02-15 1 views
1

これは私がuseBeanと書かれたもので、本体がjsp:setPropertyである私のjspです! Beanが存在しない場合、useBeanタグのためにContainerが新しいBeanを作成している場合にのみ、ルールに従ってuseBeanタグの本体を実行する必要があります。<jsp:useBean>には実行が条件付きですが、この場合毎回実行される本体がありますが、なぜですか?

私の場合は、すでにweb-infのclassesフォルダ内のfooフォルダにPerson.class beanを作っています。 したがって、Beanが既に存在する場合、setPropertyタグは実行されるべきではなく、毎回実行されるというルールがあります。

そして私がfooフォルダから豆を除去した場合、その後、私はがNoClassDefFound

の例外を取得し、いくつかのいずれかがそれについて知っている場合、適切な推論を提供したり、私は、このための任意のロジックを教えてください。 &よろしく アンクル・ガーグ

答えて

0

<%@ page import="foo.Person"%> <html> <head> <title>Action JSP</title> </head> <body> <h1 align="center">Standard Actions are used Here.</h1> <br> <jsp:useBean id="person" class="foo.Person" scope="request" > <jsp:setProperty name="person" property="name" value="Ankur Garg" /> </jsp:useBean> Name is: <jsp:getProperty name="person" property="name" /> <br> Name set by Standard action: <% foo.Person p = (foo.Person) pageContext.getAttribute("person",PageContext.REQUEST_SCOPE); %> <%= p.getName() %> <br> Residence not set: <%= p.getResidence() %> Password passes by user is: <% String param = request.getParameter("Password"); out.print("<br>"+param); %> <br> <a href="CallActionJsp">Call Again </a> </body> </html> 

action.jspおかげで規則に従ってuseBeanタグの本体は、コンテナがnew Beanのために製造されている場合にのみ実行されるべきBeanが存在しない場合はuseBeanタグを使用します。

しかし、私の場合、私はすでにweb-infclassesフォルダにfooフォルダにPerson.class Beanを行いました。つまり、Beanがすでに存在する場合、setPropertyタグは実行されるべきではなく、毎回実行されているという規則があります。

「クラス」と「インスタンス」を混同しています。 Person.classは、Beanインスタンスとしてカウントされません。これは、Beanクラスの青写真です。

部分Beanが存在しない場合」は、指定されたスコープに配置されたBeanクラスのインスタンスに関係します。リクエストスコープに配置するように指定しました。したがって、リクエストが終了するまでインスタンスが破棄されるため、HTTPリクエストごとにBeanインスタンスが再作成されます。それをscope="session"でセッションスコープに配置すると、HTTPセッションの開始時に作成され、セッションの終了時に破棄されます。セッションは複数の要求にまたがる可能性があります。

+0

ええ、実際に本に収まっているのは、豆が存在しない場合、私はそれが間違って解釈されているため、「豆のインスタンス」のように戻ってくるはずです。義務付けられています。 ありがとうございました! –

+0

ようこそ。あなたがここでは新しいので、問題を解決するのに最も役立ったときは、必ず答えをマークすることを忘れないでください。 http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235必要に応じて以前の質問を確認してください。 – BalusC

関連する問題