<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FJSP%2FBeans</id>
		<title>Java/JSP/Beans - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FJSP%2FBeans"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/JSP/Beans&amp;action=history"/>
		<updated>2026-04-07T11:05:18Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java/JSP/Beans&amp;diff=8717&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/JSP/Beans&amp;diff=8717&amp;oldid=prev"/>
				<updated>2010-06-01T07:10:55Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 07:10, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java/JSP/Beans&amp;diff=8716&amp;oldid=prev</id>
		<title> в 18:01, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/JSP/Beans&amp;diff=8716&amp;oldid=prev"/>
				<updated>2010-05-31T18:01:47Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Bean property display ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;%@ taglib uri=&amp;quot;http://java.sun.ru/jstl/core&amp;quot; prefix=&amp;quot;c&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;jsp:useBean id=&amp;quot;emailer&amp;quot; class=&amp;quot;com.jexp.EmailBean&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;jsp:setProperty name=&amp;quot;emailer&amp;quot; property=&amp;quot;*&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&amp;lt;title&amp;gt;Bean property display&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Here are the EmailBean properties&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;SMTP host: &amp;lt;/strong&amp;gt;&amp;lt;c:out value=&amp;quot;${emailer.smtpHost}&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;Email recipient: &amp;lt;/strong&amp;gt;&amp;lt;c:out value=&amp;quot;${emailer.to}&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;Email sender: &amp;lt;/strong&amp;gt;&amp;lt;c:out value=&amp;quot;${emailer.from}&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;Email subject: &amp;lt;/strong&amp;gt;&amp;lt;c:out value=&amp;quot;${emailer.subject}&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;Email content: &amp;lt;/strong&amp;gt;&amp;lt;c:out value=&amp;quot;${emailer.content}&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Beans with scriptlet ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;%@ page import=&amp;quot;com.jexp.Book&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;%&lt;br /&gt;
  Book myBook = (Book) session.getAttribute(&amp;quot;myBookBean&amp;quot;);&lt;br /&gt;
  if ( myBook == null)&lt;br /&gt;
  {&lt;br /&gt;
    myBook = new Book();&lt;br /&gt;
    myBook.setAuthor(&amp;quot;Joe&amp;quot;);&lt;br /&gt;
    session.setAttribute(&amp;quot;myBookBean&amp;quot;, myBook);&lt;br /&gt;
  } // end of if ()&lt;br /&gt;
%&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;head&amp;gt;&amp;lt;title&amp;gt;JavaBean usage with scriptlets (1)&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;
  &amp;lt;body&amp;gt;&lt;br /&gt;
    This page creates a JavaBean if you don&amp;quot;t already have one.&amp;lt;P&amp;gt;&amp;lt;/P&amp;gt;&lt;br /&gt;
    Click  to go to a page that retrieves it.&lt;br /&gt;
  &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
//useAndSet2.jsp&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;head&amp;gt;&amp;lt;title&amp;gt;JavaBean usage - getProperty tag&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;
  &amp;lt;body&amp;gt;&lt;br /&gt;
    This page retrieves a JavaBean, and its properties.&amp;lt;P&amp;gt;&lt;br /&gt;
    &amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;th&amp;gt;JavaBean property&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;Value&amp;lt;/th&amp;gt;&lt;br /&gt;
      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;id&amp;lt;/td&amp;gt;    &amp;lt;td&amp;gt;&amp;lt;jsp:getProperty name=&amp;quot;myBookBean&amp;quot; property=&amp;quot;id&amp;quot;     /&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;title&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;&amp;lt;jsp:getProperty name=&amp;quot;myBookBean&amp;quot; property=&amp;quot;title&amp;quot;  /&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;author&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;jsp:getProperty name=&amp;quot;myBookBean&amp;quot; property=&amp;quot;author&amp;quot; /&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;price&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;&amp;lt;jsp:getProperty name=&amp;quot;myBookBean&amp;quot; property=&amp;quot;price&amp;quot;  /&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
    &amp;lt;/table&amp;gt;&lt;br /&gt;
  &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Calling a Private Method ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
// JSP file&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
    &amp;lt;HEAD&amp;gt;&lt;br /&gt;
        &amp;lt;TITLE&amp;gt;Calling a Private Method&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
    &amp;lt;/HEAD&amp;gt;&lt;br /&gt;
    &amp;lt;BODY&amp;gt;&lt;br /&gt;
        &amp;lt;H1&amp;gt;Calling a Private Method&amp;lt;/H1&amp;gt;&lt;br /&gt;
        &amp;lt;jsp:useBean id=&amp;quot;bean1&amp;quot; class=&amp;quot;beans.Message&amp;quot; /&amp;gt;&lt;br /&gt;
        The message is: &amp;lt;jsp:getProperty name=&amp;quot;bean1&amp;quot; property=&amp;quot;message&amp;quot; /&amp;gt; &lt;br /&gt;
        &amp;lt;BR&amp;gt;&lt;br /&gt;
        &amp;lt;jsp:setProperty name=&amp;quot;bean1&amp;quot; property=&amp;quot;message&amp;quot; value=&amp;quot;Hello again!&amp;quot; /&amp;gt;&lt;br /&gt;
        Now the message is: &amp;lt;jsp:getProperty name=&amp;quot;bean1&amp;quot; property=&amp;quot;message&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
///////////////////////////////////////&lt;br /&gt;
//Java Source Code&lt;br /&gt;
package beans;&lt;br /&gt;
import java.io.Serializable;&lt;br /&gt;
public class Message implements Serializable&lt;br /&gt;
{&lt;br /&gt;
    private String message = &amp;quot;Hello from JSP!&amp;quot;;&lt;br /&gt;
    public void setMessage(String m) &lt;br /&gt;
    {&lt;br /&gt;
        this.message = m;&lt;br /&gt;
    }&lt;br /&gt;
    public String getMessage() &lt;br /&gt;
    {&lt;br /&gt;
        return privateMessage();&lt;br /&gt;
    }&lt;br /&gt;
    private String privateMessage() &lt;br /&gt;
    {&lt;br /&gt;
        return this.message;&lt;br /&gt;
    }&lt;br /&gt;
    public Message() &lt;br /&gt;
    {&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Get Set Properties JSTL ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
//File: index.jsp&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
    &amp;lt;head&amp;gt;&lt;br /&gt;
        &amp;lt;title&amp;gt;Using a JavaBean&amp;lt;/title&amp;gt;&lt;br /&gt;
    &amp;lt;/head&amp;gt;&lt;br /&gt;
    &amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;h2&amp;gt;Using a JavaBean&amp;lt;/h2&amp;gt;&lt;br /&gt;
    &amp;lt;jsp:useBean id=&amp;quot;myCar&amp;quot; class=&amp;quot;beans.CarBean&amp;quot; /&amp;gt;&lt;br /&gt;
    I have a &amp;lt;jsp:getProperty name=&amp;quot;myCar&amp;quot; property=&amp;quot;make&amp;quot; /&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;jsp:setProperty name=&amp;quot;myCar&amp;quot; property=&amp;quot;make&amp;quot; value=&amp;quot;Ferrari&amp;quot; /&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
    Now I have a &amp;lt;jsp:getProperty name=&amp;quot;myCar&amp;quot; property=&amp;quot;make&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//////////////////////////////////////////////////////////////&lt;br /&gt;
//Java Bean&lt;br /&gt;
package beans;&lt;br /&gt;
import java.io.Serializable;&lt;br /&gt;
public class CarBean implements Serializable &lt;br /&gt;
{&lt;br /&gt;
  private String make = &amp;quot;Company&amp;quot;;&lt;br /&gt;
  private double cost = 100.00;&lt;br /&gt;
  private double taxRate = 17.5;&lt;br /&gt;
  public CarBean() {}&lt;br /&gt;
  public String getMake()&lt;br /&gt;
  {&lt;br /&gt;
    return make;&lt;br /&gt;
  }&lt;br /&gt;
  public void setMake(String make)&lt;br /&gt;
  {&lt;br /&gt;
    this.make = make;&lt;br /&gt;
  }&lt;br /&gt;
  public double getPrice()&lt;br /&gt;
  {&lt;br /&gt;
    double price = (cost + (cost * (taxRate/100)));&lt;br /&gt;
    return price;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Getting a Property Value ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
//File: index.jsp&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
  &amp;lt;HEAD&amp;gt;&lt;br /&gt;
    &amp;lt;TITLE&amp;gt;Getting a Property Value&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
  &amp;lt;/HEAD&amp;gt;&lt;br /&gt;
  &amp;lt;BODY&amp;gt;&lt;br /&gt;
    &amp;lt;H1&amp;gt;Getting a Property Value&amp;lt;/H1&amp;gt;&lt;br /&gt;
    &amp;lt;jsp:useBean id=&amp;quot;bean1&amp;quot; class=&amp;quot;beans.Message&amp;quot; /&amp;gt;&lt;br /&gt;
    The message is: &amp;lt;jsp:getProperty name=&amp;quot;bean1&amp;quot; property=&amp;quot;message&amp;quot; /&amp;gt; &lt;br /&gt;
  &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
////////////////////////////////////////////&lt;br /&gt;
//Java Bean Class&lt;br /&gt;
package beans;&lt;br /&gt;
public class Message&lt;br /&gt;
{&lt;br /&gt;
    private String message = &amp;quot;Hello from JSP!&amp;quot;;&lt;br /&gt;
    public String getMessage() &lt;br /&gt;
    {&lt;br /&gt;
        return message;&lt;br /&gt;
    }&lt;br /&gt;
    public Message() &lt;br /&gt;
    {&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JSP and Java beans 3 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
&amp;lt;%@ taglib uri=&amp;quot;http://java.sun.ru/jstl/core&amp;quot; prefix=&amp;quot;c&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;jsp:useBean id=&amp;quot;priceFetcher&amp;quot; class=&amp;quot;com.jexp.StockPriceBean&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&amp;lt;title&amp;gt;Price Fetch&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;c:choose&amp;gt;&lt;br /&gt;
    &amp;lt;c:when test=&amp;quot;${empty param.symbol}&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;h2&amp;gt;Please submit a valid stock symbol&amp;lt;/h2&amp;gt;&lt;br /&gt;
   &amp;lt;form method=&amp;quot;POST&amp;quot; action =&amp;quot;&amp;lt;c:out value=&amp;quot;${pageContext.request.contextPath}&amp;quot; /&amp;gt;/priceFetch.jsp&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;table border=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
   Stock symbol: &amp;lt;/td&amp;gt;  &amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; name=&amp;quot;symbol&amp;quot; size=&amp;quot;10&amp;quot;&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit Info&amp;quot;&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
   &amp;lt;/c:when&amp;gt;&lt;br /&gt;
   &amp;lt;c:otherwise&amp;gt;&lt;br /&gt;
   &amp;lt;h2&amp;gt;Here is the latest value of &amp;lt;c:out value=&amp;quot;${param.symbol}&amp;quot; /&amp;gt;&amp;lt;/h2&amp;gt;&lt;br /&gt;
       &amp;lt;jsp:setProperty name=&amp;quot;priceFetcher&amp;quot; property=&amp;quot;symbol&amp;quot; value=&amp;quot;&amp;lt;%= request.getParameter(\&amp;quot;symbol\&amp;quot;) %&amp;gt;&amp;quot; /&amp;gt;&lt;br /&gt;
       &amp;lt;jsp:getProperty name=&amp;quot;priceFetcher&amp;quot; property=&amp;quot;latestPrice&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;/c:otherwise&amp;gt;&lt;br /&gt;
 &amp;lt;/c:choose&amp;gt; &lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
*/&lt;br /&gt;
package com.jexp;  &lt;br /&gt;
import java.io.BufferedReader;&lt;br /&gt;
import java.io.IOException;&lt;br /&gt;
import java.io.InputStreamReader;&lt;br /&gt;
import java.net.URL;&lt;br /&gt;
import java.net.MalformedURLException;&lt;br /&gt;
import javax.swing.text.html.HTMLEditorKit.ParserCallback;&lt;br /&gt;
import javax.swing.text.MutableAttributeSet;&lt;br /&gt;
import javax.swing.text.html.parser.ParserDelegator;&lt;br /&gt;
public class StockPriceBean {&lt;br /&gt;
    /**  &lt;br /&gt;
     *   The URL base for requesting a stock price; it looks like&lt;br /&gt;
     *   &amp;quot;http://finance.yahoo.ru/q?d=t&amp;amp;s=&amp;quot;&lt;br /&gt;
     */&lt;br /&gt;
     private static final String urlBase =  &amp;quot;http://finance.yahoo.ru/q?d=t&amp;amp;s=&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    /**  &lt;br /&gt;
     *   The character stream of HTML that is parsed for the stock price &lt;br /&gt;
     *    returned by java.net.URL.openStream()&lt;br /&gt;
     *   &lt;br /&gt;
     *   see java.net.URL&lt;br /&gt;
     *   @see java.io.BufferedReader&lt;br /&gt;
     */&lt;br /&gt;
    private BufferedReader webPageStream = null;&lt;br /&gt;
     &lt;br /&gt;
    /**  &lt;br /&gt;
     *   The java.net.URL object that represents the stock Web page&lt;br /&gt;
     *   &lt;br /&gt;
     */&lt;br /&gt;
     private URL stockSite = null;&lt;br /&gt;
    &lt;br /&gt;
    /**  &lt;br /&gt;
     *   The ParserDelegator object for which ParserDelegator.parse() is&lt;br /&gt;
     *   called for the Web page&lt;br /&gt;
     *&lt;br /&gt;
     *   @see javax.swing.text.html.parser.ParserDelegator&lt;br /&gt;
     */&lt;br /&gt;
     private ParserDelegator htmlParser = null;&lt;br /&gt;
    &lt;br /&gt;
    /**  &lt;br /&gt;
     *   The MyParserCallback object (inner class); this object is an&lt;br /&gt;
     *   argument to the ParserDelegator.parse() method&lt;br /&gt;
     *&lt;br /&gt;
     *   @see javax.swing.text.html.HTMLEditorKit.ParserCallback&lt;br /&gt;
     */&lt;br /&gt;
     private MyParserCallback callback = null;&lt;br /&gt;
    /**  &lt;br /&gt;
     *   This String holds the HTML text as the Web page is parsed.&lt;br /&gt;
     *   &lt;br /&gt;
     *   @see MyParserCallback&lt;br /&gt;
     */&lt;br /&gt;
     private String htmlText = &amp;quot;&amp;quot;;&lt;br /&gt;
   private String symbol = &amp;quot;&amp;quot;;&lt;br /&gt;
     private float stockVal = 0f;&lt;br /&gt;
  //A JavaBean has to have a no-args constructor (we explicitly show this &lt;br /&gt;
  //constructor as a reminder; the compiler would have generated a default&lt;br /&gt;
  //constructor with no arguments automatically&lt;br /&gt;
  public StockPriceBean() {}&lt;br /&gt;
  &lt;br /&gt;
  //Setter or mutator method for the stock symbol&lt;br /&gt;
  public void setSymbol(String symbol){&lt;br /&gt;
  &lt;br /&gt;
      this.symbol = symbol;&lt;br /&gt;
  }&lt;br /&gt;
   &lt;br /&gt;
  class MyParserCallback extends ParserCallback {&lt;br /&gt;
      //bread crumbs that lead us to the stock price&lt;br /&gt;
      private boolean lastTradeFlag = false; &lt;br /&gt;
      private boolean boldFlag = false;&lt;br /&gt;
  &lt;br /&gt;
    public MyParserCallback(){&lt;br /&gt;
    &lt;br /&gt;
      //Reset the enclosing class&amp;quot; instance variable&lt;br /&gt;
    if (stockVal != 0)&lt;br /&gt;
          stockVal = 0f;&lt;br /&gt;
    &lt;br /&gt;
   }&lt;br /&gt;
        &lt;br /&gt;
    public void handleStartTag(javax.swing.text.html.HTML.Tag t,&lt;br /&gt;
      MutableAttributeSet a,int pos) {&lt;br /&gt;
        &lt;br /&gt;
        if (lastTradeFlag &amp;amp;&amp;amp; (t == javax.swing.text.html.HTML.Tag.B )){&lt;br /&gt;
            &lt;br /&gt;
            boldFlag = true;&lt;br /&gt;
       }&lt;br /&gt;
        &lt;br /&gt;
    }//handleStartTag&lt;br /&gt;
    public void handleText(char[] data,int pos){&lt;br /&gt;
              &lt;br /&gt;
        htmlText  = new String(data);&lt;br /&gt;
    &lt;br /&gt;
    //System.out.println(htmlText);&lt;br /&gt;
      &lt;br /&gt;
        if (htmlText.indexOf(&amp;quot;No such ticker symbol.&amp;quot;) != -1){&lt;br /&gt;
             &lt;br /&gt;
          throw new IllegalStateException(&lt;br /&gt;
      &amp;quot;Invalid ticker symbol in handleText() method.&amp;quot;);&lt;br /&gt;
                &lt;br /&gt;
        }  else if (htmlText.equals(&amp;quot;Last Trade:&amp;quot;)){&lt;br /&gt;
                    &lt;br /&gt;
            lastTradeFlag = true;&lt;br /&gt;
                    &lt;br /&gt;
        } else if (boldFlag){&lt;br /&gt;
                &lt;br /&gt;
            try{&lt;br /&gt;
                &lt;br /&gt;
                stockVal = new Float(htmlText).floatValue();&lt;br /&gt;
            } catch (NumberFormatException ne) {&lt;br /&gt;
                    &lt;br /&gt;
                try{&lt;br /&gt;
                        &lt;br /&gt;
                    // tease out any commas in the number using &lt;br /&gt;
                    //NumberFormat&lt;br /&gt;
                        &lt;br /&gt;
                    java.text.NumberFormat nf = java.text.NumberFormat.&lt;br /&gt;
                      getInstance();&lt;br /&gt;
                    &lt;br /&gt;
                    Double f = (Double) nf.parse(htmlText);&lt;br /&gt;
                    &lt;br /&gt;
                    stockVal =  (float) f.doubleValue();&lt;br /&gt;
                     &lt;br /&gt;
                } catch (java.text.ParseException pe){&lt;br /&gt;
                        &lt;br /&gt;
                     throw new IllegalStateException(&lt;br /&gt;
                &amp;quot;The extracted text &amp;quot; + htmlText +&lt;br /&gt;
                         &amp;quot; cannot be parsed as a number!&amp;quot;);&lt;br /&gt;
                        &lt;br /&gt;
                 }//try&lt;br /&gt;
            }//try&lt;br /&gt;
            &lt;br /&gt;
            lastTradeFlag = false;&lt;br /&gt;
            boldFlag = false;&lt;br /&gt;
      &lt;br /&gt;
         }//if&lt;br /&gt;
                &lt;br /&gt;
      } //handleText&lt;br /&gt;
  }//MyParserCallback&lt;br /&gt;
  public float getLatestPrice() throws IOException,MalformedURLException {&lt;br /&gt;
      stockSite = new URL(urlBase + symbol);&lt;br /&gt;
       &lt;br /&gt;
      webPageStream = new BufferedReader(new InputStreamReader(stockSite.&lt;br /&gt;
       openStream()));&lt;br /&gt;
     &lt;br /&gt;
      htmlParser = new ParserDelegator();&lt;br /&gt;
     &lt;br /&gt;
      callback = new MyParserCallback();//ParserCallback&lt;br /&gt;
     &lt;br /&gt;
      synchronized(htmlParser){  &lt;br /&gt;
  &lt;br /&gt;
          htmlParser.parse(webPageStream,callback,true);&lt;br /&gt;
       }//synchronized&lt;br /&gt;
     &lt;br /&gt;
    //reset symbol&lt;br /&gt;
    symbol = &amp;quot;&amp;quot;;&lt;br /&gt;
     return stockVal;&lt;br /&gt;
  }//getLatestPrice&lt;br /&gt;
}//StockPriceBean&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JSP and Java beans (JavaBeans) 1 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
Beginning JavaServer Pages&lt;br /&gt;
Vivek Chopra, Jon Eaves, Rupert Jones, Sing Li, John T. Bell&lt;br /&gt;
ISBN: 0-7645-7485-X&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JSP and Java beans (JavaBeans) 2 ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
Beginning JavaServer Pages&lt;br /&gt;
Vivek Chopra, Jon Eaves, Rupert Jones, Sing Li, John T. Bell&lt;br /&gt;
ISBN: 0-7645-7485-X&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JSP email valid check ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
//validCheck.jsp&lt;br /&gt;
/*&lt;br /&gt;
&amp;lt;%@page contentType=&amp;quot;text/html&amp;quot;%&amp;gt;&lt;br /&gt;
&amp;lt;%@ taglib uri=&amp;quot;http://java.sun.ru/jstl/core&amp;quot; prefix=&amp;quot;c&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;jsp:useBean id=&amp;quot;chk&amp;quot; class=&amp;quot;com.jexp.ClientValidator&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;jsp:setProperty name=&amp;quot;chk&amp;quot; property=&amp;quot;*&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/jsp:useBean&amp;gt;&lt;br /&gt;
&amp;lt;%-- get valid property from ClientValidator bean --%&amp;gt;&lt;br /&gt;
&amp;lt;c:set var=&amp;quot;isValid&amp;quot; value=&amp;quot;${chk.valid}&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;c:if test=&amp;quot;${isValid}&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;c:set var=&amp;quot;email&amp;quot; value=&amp;quot;${chk.email}&amp;quot; scope=&amp;quot;request&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;c:set var=&amp;quot;password&amp;quot; value=&amp;quot;${chk.password}&amp;quot; scope=&amp;quot;request&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/c:if&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&amp;lt;title&amp;gt;Client Checker&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;h2&amp;gt;Welcome&amp;lt;/h2&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
     &amp;lt;strong&amp;gt;Email&amp;lt;/strong&amp;gt;: &lt;br /&gt;
    &amp;lt;c:out value=&amp;quot;${email}&amp;quot; /&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
    &amp;lt;strong&amp;gt;Password&amp;lt;/strong&amp;gt;: &lt;br /&gt;
    &amp;lt;c:out value=&amp;quot;${password}&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
*/&lt;br /&gt;
package com.jexp;&lt;br /&gt;
public class ClientValidator implements java.io.Serializable{&lt;br /&gt;
String email;&lt;br /&gt;
String password;&lt;br /&gt;
boolean valid;&lt;br /&gt;
public ClientValidator(){&lt;br /&gt;
    this.valid=false;}&lt;br /&gt;
public boolean isValid(){&lt;br /&gt;
  /* Use a Data Access Object to validate the email and password.&lt;br /&gt;
        If the validation does not fail then set this.valid to true*/&lt;br /&gt;
   this.valid=true;&lt;br /&gt;
   return valid;&lt;br /&gt;
   &lt;br /&gt;
   }&lt;br /&gt;
public void setEmail(String _email){&lt;br /&gt;
     if(_email != null &amp;amp;&amp;amp; _email.length() &amp;gt; 0)&lt;br /&gt;
        email = _email;&lt;br /&gt;
    else&lt;br /&gt;
         email = &amp;quot;Unknown&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
public String getEmail(){&lt;br /&gt;
    return email; }&lt;br /&gt;
public void setPassword(String _password){&lt;br /&gt;
     if(_password != null &amp;amp;&amp;amp; _password.length() &amp;gt; 0)&lt;br /&gt;
        password = _password;&lt;br /&gt;
    else&lt;br /&gt;
         password = &amp;quot;Unknown&amp;quot;; &lt;br /&gt;
}&lt;br /&gt;
public String getPassword(){&lt;br /&gt;
    return password; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JSP Standard Actions: set property ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
Beginning JavaServer Pages&lt;br /&gt;
Vivek Chopra, Jon Eaves, Rupert Jones, Sing Li, John T. Bell&lt;br /&gt;
ISBN: 0-7645-7485-X&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
  &amp;lt;jsp:useBean id=&amp;quot;myProduct&amp;quot; class=&amp;quot;com.wrox.begjsp.ch03.Product&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;jsp:setProperty name=&amp;quot;myProduct&amp;quot; property=&amp;quot;sku&amp;quot; value=&amp;quot;12345&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;jsp:setProperty name=&amp;quot;myProduct&amp;quot; property=&amp;quot;name&amp;quot; value=&amp;quot;DSL Modem&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/jsp:useBean&amp;gt;&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Sku:&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;%= myProduct.getSku() %&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td&amp;gt;Name:&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;${myProduct.name}&amp;lt;/td&amp;gt;&lt;br /&gt;
 &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
  &amp;lt;jsp:useBean id=&amp;quot;myMap&amp;quot;  class=&amp;quot;java.util.HashMap&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;jsp:useBean id=&amp;quot;myMap2&amp;quot;  class=&amp;quot;java.util.HashMap&amp;quot;  type=&amp;quot;java.util.Map&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JSP with Java bean ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;%@ page import=&amp;quot;java.util.*&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;head&amp;gt;&lt;br /&gt;
    &amp;lt;title&amp;gt;WishList&amp;lt;/title&amp;gt;&lt;br /&gt;
    &amp;lt;jsp:useBean class=&amp;quot;com.jexp.WishList&amp;quot; id=&amp;quot;wishList&amp;quot; scope=&amp;quot;session&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;jsp:useBean class=&amp;quot;com.jexp.WishListItems&amp;quot; id=&amp;quot;wishListItems&amp;quot; scope=&amp;quot;application&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/head&amp;gt;&lt;br /&gt;
  &amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;% Enumeration e = request.getParameterNames(); %&amp;gt;&lt;br /&gt;
    &amp;lt;% Set map = wishList.getMap(); %&amp;gt;&lt;br /&gt;
    &amp;lt;% while(e.hasMoreElements()){&lt;br /&gt;
      String key = (String)e.nextElement();&lt;br /&gt;
        if(key.equals(wishListItems.getItem(0).getId())){&lt;br /&gt;
          map.add(wishListItems.getItem(0));&lt;br /&gt;
        }&lt;br /&gt;
        if(key.equals(wishListItems.getItem(1).getId())){&lt;br /&gt;
          map.add(wishListItems.getItem(1));&lt;br /&gt;
        }&lt;br /&gt;
        if(key.equals(wishListItems.getItem(2).getId())){&lt;br /&gt;
          map.add(wishListItems.getItem(2));&lt;br /&gt;
        }&lt;br /&gt;
        if(key.equals(wishListItems.getItem(3).getId())){&lt;br /&gt;
          map.add(wishListItems.getItem(3));&lt;br /&gt;
        }&lt;br /&gt;
        if(key.equals(wishListItems.getItem(4).getId())){&lt;br /&gt;
          map.add(wishListItems.getItem(4));&lt;br /&gt;
        }&lt;br /&gt;
      } %&amp;gt;&lt;br /&gt;
      Items currently In your Wish List:&amp;lt;br&amp;gt;&lt;br /&gt;
      &amp;lt;% if(map.size()==0){ %&amp;gt;&lt;br /&gt;
           There are no items in your Wish List&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;%   }&lt;br /&gt;
      else {&lt;br /&gt;
        Set set = map; %&amp;gt;&lt;br /&gt;
        &amp;lt;% if (set!=null){&lt;br /&gt;
            com.jexp.Item[] keys = new com.jexp.Item[0];&lt;br /&gt;
            keys = (com.jexp.Item[])set.toArray(keys);&lt;br /&gt;
            for (int i=0;i&amp;lt;keys.length;i++){ %&amp;gt;&lt;br /&gt;
              &amp;lt;%=keys[i].getName()%&amp;gt;&amp;lt;%=&amp;quot;&amp;lt;br&amp;gt;&amp;quot;%&amp;gt;&lt;br /&gt;
   &amp;lt;%       }&lt;br /&gt;
          }&lt;br /&gt;
      }%&amp;gt;&lt;br /&gt;
    &amp;lt;br&amp;gt;&lt;br /&gt;
  &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
package com.jexp;&lt;br /&gt;
public class Item {&lt;br /&gt;
  private String id;&lt;br /&gt;
  private String name;&lt;br /&gt;
  &lt;br /&gt;
  public Item(){}&lt;br /&gt;
  &lt;br /&gt;
  public Item(String s, String t){&lt;br /&gt;
    name=s;&lt;br /&gt;
    id=t;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  public String getId(){&lt;br /&gt;
    return id;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  public String getName(){&lt;br /&gt;
    return name;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
package com.jexp;&lt;br /&gt;
import javax.servlet.http.HttpSessionBindingListener;&lt;br /&gt;
import javax.servlet.http.HttpSessionBindingEvent;&lt;br /&gt;
import java.util.Set;&lt;br /&gt;
import java.util.HashSet;&lt;br /&gt;
import java.util.Iterator;&lt;br /&gt;
public class WishList implements HttpSessionBindingListener {&lt;br /&gt;
  private Set map = new HashSet();&lt;br /&gt;
  public Set getMap(){&lt;br /&gt;
    return map;&lt;br /&gt;
  }&lt;br /&gt;
  //Session binding methods&lt;br /&gt;
  public void valueBound(HttpSessionBindingEvent e){&lt;br /&gt;
    System.out.println(&amp;quot;The WishList has been Bound!&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  public void valueUnbound(HttpSessionBindingEvent e){&lt;br /&gt;
    Item[] keys = new Item[0];&lt;br /&gt;
    System.out.println(&amp;quot;Getting values...&amp;quot;);&lt;br /&gt;
    Iterator it = map.iterator();&lt;br /&gt;
    while(it.hasNext()){&lt;br /&gt;
      Item item = (Item)it.next();&lt;br /&gt;
      System.out.println(item.getName());&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
package com.jexp;&lt;br /&gt;
public class WishListItems {&lt;br /&gt;
  &lt;br /&gt;
  private Item[] items = {&lt;br /&gt;
        new Item(&amp;quot;ID 1&amp;quot;,&amp;quot;Name 1&amp;quot;),&lt;br /&gt;
        new Item(&amp;quot;ID 2&amp;quot;,&amp;quot;Name 2&amp;quot;),&lt;br /&gt;
        new Item(&amp;quot;ID 3&amp;quot;,&amp;quot;Name 3&amp;quot;),&lt;br /&gt;
        new Item(&amp;quot;ID 4&amp;quot;,&amp;quot;Name 4&amp;quot;),&lt;br /&gt;
        new Item(&amp;quot;ID 5&amp;quot;,&amp;quot;Name 5&amp;quot;)&lt;br /&gt;
        };&lt;br /&gt;
    &lt;br /&gt;
  public Item getItem(int i){&lt;br /&gt;
    if (items[i]!=null){&lt;br /&gt;
      return items[i];&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    else {&lt;br /&gt;
      return null;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Set Property Value ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using a Constructor ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
//File: index.jsp&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
    &amp;lt;HEAD&amp;gt;&lt;br /&gt;
        &amp;lt;TITLE&amp;gt;Using a Constructor&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
    &amp;lt;/HEAD&amp;gt;&lt;br /&gt;
    &amp;lt;BODY&amp;gt;&lt;br /&gt;
    &amp;lt;H1&amp;gt;Using a Constructor&amp;lt;/H1&amp;gt;&lt;br /&gt;
    &amp;lt;% beans.Message m = new beans.Message(&amp;quot;Hello from JSP!&amp;quot;); %&amp;gt;&lt;br /&gt;
    The message is: &amp;lt;%= m.msg() %&amp;gt; &lt;br /&gt;
  &amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
&lt;br /&gt;
///////////////////////////////////////////////////////////////////////////&lt;br /&gt;
//File: Message.java&lt;br /&gt;
package beans;&lt;br /&gt;
public class Message&lt;br /&gt;
{&lt;br /&gt;
    String msg;&lt;br /&gt;
    public Message(String message) &lt;br /&gt;
    {&lt;br /&gt;
        msg = message;&lt;br /&gt;
    }&lt;br /&gt;
    public String msg() {&lt;br /&gt;
      return msg;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using a Java Bean Jsp ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
//////////////////////////////////////       &lt;br /&gt;
//File: index.jsp       &lt;br /&gt;
       &lt;br /&gt;
&amp;lt;%@ page import=&amp;quot;beans.MessageBean&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
  &amp;lt;HEAD&amp;gt;&lt;br /&gt;
    &amp;lt;TITLE&amp;gt;Using a JavaBean&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
  &amp;lt;/HEAD&amp;gt;&lt;br /&gt;
  &amp;lt;BODY&amp;gt;&lt;br /&gt;
    &amp;lt;h1&amp;gt;Using a JavaBean&amp;lt;/h1&amp;gt;&lt;br /&gt;
    &amp;lt;% MessageBean m = new MessageBean(); %&amp;gt;&lt;br /&gt;
    The message is: &amp;lt;%= m.msg() %&amp;gt; &lt;br /&gt;
  &amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
//////////////////////////////////////////////////&lt;br /&gt;
//File: MessageBean.java&lt;br /&gt;
package beans;&lt;br /&gt;
&lt;br /&gt;
public class MessageBean&lt;br /&gt;
{&lt;br /&gt;
    public MessageBean() &lt;br /&gt;
    {&lt;br /&gt;
    }&lt;br /&gt;
    public String msg() &lt;br /&gt;
    {&lt;br /&gt;
        return &amp;quot;Hello from JSP!&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Bean Counter JSP ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
//File: BeanCounter.jsp&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
&amp;lt;HEAD&amp;gt;&lt;br /&gt;
&amp;lt;/HEAD&amp;gt;&lt;br /&gt;
&amp;lt;BODY&amp;gt;&lt;br /&gt;
&amp;lt;%@ page language=&amp;quot;java&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;jsp:useBean id=&amp;quot;counter&amp;quot; scope=&amp;quot;session&amp;quot; class=&amp;quot;beans.Counter&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;jsp:setProperty name=&amp;quot;counter&amp;quot; property=&amp;quot;count&amp;quot; param=&amp;quot;count&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;%&lt;br /&gt;
    out.println(&amp;quot;Count from scriptlet code : &amp;quot;&lt;br /&gt;
      + counter.getCount() + &amp;quot;&amp;lt;BR&amp;gt;&amp;quot;);&lt;br /&gt;
%&amp;gt;&lt;br /&gt;
Count from jsp:getProperty :&lt;br /&gt;
  &amp;lt;jsp:getProperty name=&amp;quot;counter&amp;quot; property=&amp;quot;count&amp;quot; /&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
///////////////////////////////////////////////////////////&lt;br /&gt;
//File: Counter.java&lt;br /&gt;
package beans;&lt;br /&gt;
import java.io.Serializable;&lt;br /&gt;
public class Counter implements Serializable{&lt;br /&gt;
  // Initialize the bean on creation&lt;br /&gt;
  int count = 0;&lt;br /&gt;
  // Parameterless Constructor&lt;br /&gt;
  public Counter() {&lt;br /&gt;
  }&lt;br /&gt;
  // Property Getter&lt;br /&gt;
  public int getCount() {&lt;br /&gt;
    // Increment the count property, with every request&lt;br /&gt;
    count++;&lt;br /&gt;
    return this.count;&lt;br /&gt;
  }&lt;br /&gt;
  // Property Setter&lt;br /&gt;
  public void setCount(int count) {&lt;br /&gt;
    this.count = count;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using Package Jsp ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using UseBean in Jsp ==&lt;/div&gt;</summary>
			</entry>

	</feed>