<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<!--

   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->

<!-- Content Stylesheet for Site -->

        
<!-- start the processing -->
    <html>
    <!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! -->
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>

            
      <title>Jakarta BSF - BSF News</title>
    </head>

    <body bgcolor="#ffffff" text="#000000" link="#525D76">
      <table border="0" width="100%" cellspacing="0">
        <!-- TOP IMAGE -->
        <tr>
                <td align="left">
    <a href="http://jakarta.apache.org"><img src="images/jakarta-logo.gif" border="0"/></a>
    </td>
    <td align="right">
              <a href="http://jakarta.apache.org/bsf/"><img src="./images/bsf_logo.jpg" alt="Jakarta BSF" border="0"/></a>
        </td>
          </tr>
      </table>
      <table border="0" width="100%" cellspacing="4">
        <tr><td colspan="2">
          <hr noshade="" size="1"/>
        </td></tr>

        <tr>
          <!-- LEFT SIDE NAVIGATION -->
          <td valign="top" nowrap="true">
                <p><strong>BSF Essentials</strong></p>
    <ul>
          <li>      <a href="./index.html">Front Page</a>
  </li>
          <li>      <a href="./bsfnews.html">News</a>
  </li>
          <li>      <a href="./manual.html">Documentation</a>
  </li>
          <li>      <a href="./projects.html">Related Projects</a>
  </li>
          <li>      <a href="./resources.html">Resources</a>
  </li>
          <li>      <a href="./faq.html">BSF FAQ</a>
  </li>
          <li>      <a href="./problems.html">Having Problems?</a>
  </li>
        </ul>
      <p><strong>Download</strong></p>
    <ul>
          <li>      <a href="http://jakarta.apache.org/site/downloads/downloads_bsf.cgi">Binaries</a>
  </li>
          <li>      <a href="http://jakarta.apache.org/site/downloads/downloads_bsf.cgi">Source Code</a>
  </li>
        </ul>
      <p><strong>Jakarta</strong></p>
    <ul>
          <li>      <a href="http://jakarta.apache.org/site/news.html">News & Status</a>
  </li>
          <li>      <a href="http://jakarta.apache.org/site/mission.html">Mission</a>
  </li>
          <li>      <a href="http://jakarta.apache.org/site/guidelines.html">Guidelines Notes</a>
  </li>
          <li>      <a href="http://jakarta.apache.org/site/faqs.html">FAQs</a>
  </li>
        </ul>
      <p><strong>Get Involved</strong></p>
    <ul>
          <li>      <a href="http://jakarta.apache.org/site/getinvolved.html">Overview</a>
  </li>
          <li>      <a href="http://jakarta.apache.org/site/cvsindex.html">Source Repositories</a>
  </li>
          <li>      <a href="http://www.faqs.org/rfcs/rfc1855.html">Netiquette</a>
  </li>
          <li>      <a href="http://jakarta.apache.org/site/mail.html">Mailing Lists</a>
  </li>
          <li>      <a href="http://jakarta.apache.org/site/library.html">Reference Library</a>
  </li>
          <li>      <a href="http://issues.apache.org/jira/browse/BSF">Bug Database</a>
  </li>
          <li>      <a href="http://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&type=4&pid=12310621&resolution=-1&sorter/field=issuekey&sorter/order=ASC">Enhancement Requests</a>
  </li>
        </ul>
            </td>
          <td align="left" valign="top">
        <table border="0" cellspacing="0" cellpadding="2" width="100%">
    <tr><td bgcolor="#525D76">
      <font color="#ffffff" face="arial,helvetica,sanserif">
        <a name="BSF 3.0"><strong>BSF 3.0</strong></a>
      </font>
    </td></tr>
    <tr><td>
      <blockquote>
                        <h3>October 9th 2009 - BSF 3.0 Final Release Available</h3>
                                <p>
     The release of BSF 3.0 Final is now available for
     <a href="http://jakarta.apache.org/site/downloads/downloads_bsf.cgi">
     download</a>. If you have any feedback on this release, feel free to
     join the discussion on the bsf-dev and bsf-user mailing lists.
    </p>
                    </blockquote>
    </td></tr>
  </table>
        <table border="0" cellspacing="0" cellpadding="2" width="100%">
    <tr><td bgcolor="#525D76">
      <font color="#ffffff" face="arial,helvetica,sanserif">
        <a name="BSF 3.0 Beta 3"><strong>BSF 3.0 Beta 3</strong></a>
      </font>
    </td></tr>
    <tr><td>
      <blockquote>
                        <h3>April 5th 2009 - BSF 3.0 Beta3 Release Available</h3>
                                <p>
     The third beta release of BSF 3.0 is now available for
     <a href="http://jakarta.apache.org/site/downloads/downloads_bsf.cgi">
     download</a>. If you have any feedback on this release, feel free to
     join the discussion on the bsf-dev and bsf-user mailing lists.
    </p>
                    </blockquote>
    </td></tr>
  </table>
        <table border="0" cellspacing="0" cellpadding="2" width="100%">
    <tr><td bgcolor="#525D76">
      <font color="#ffffff" face="arial,helvetica,sanserif">
        <a name="BSF 3.0 Beta 2"><strong>BSF 3.0 Beta 2</strong></a>
      </font>
    </td></tr>
    <tr><td>
      <blockquote>
                        <h3>November, 9, 2007 - BSF 3.0 Beta2 Release Available</h3>
                                <p>
     The second beta release of BSF 3.0 is now available for
     <a href="http://jakarta.apache.org/site/downloads/downloads_bsf.cgi">
     download</a>. If you have any feedback on this release, feel free to
     join the discussion on the bsf-dev and bsf-user mailing lists.
    </p>
                    </blockquote>
    </td></tr>
  </table>
        <table border="0" cellspacing="0" cellpadding="2" width="100%">
    <tr><td bgcolor="#525D76">
      <font color="#ffffff" face="arial,helvetica,sanserif">
        <a name="BSF 3.0 Beta 1"><strong>BSF 3.0 Beta 1</strong></a>
      </font>
    </td></tr>
    <tr><td>
      <blockquote>
                        <h3>April, 16, 2007 - BSF 3.0 Beta1 Release Available</h3>
                                <p>
     The first beta release of BSF 3.0 is now available for
     <a href="http://jakarta.apache.org/site/downloads/downloads_bsf.cgi">
     download</a>. If you have any feedback on this release, feel free to
     join the discussion on the bsf-dev and bsf-user mailing lists.
    </p>
                    </blockquote>
    </td></tr>
  </table>
        <table border="0" cellspacing="0" cellpadding="2" width="100%">
    <tr><td bgcolor="#525D76">
      <font color="#ffffff" face="arial,helvetica,sanserif">
        <a name="BSF 2.4.0"><strong>BSF 2.4.0</strong></a>
      </font>
    </td></tr>
    <tr><td>
      <blockquote>
                        <h3>October, 06, 2006 - BSF 2.4.0 Available</h3>
                                <p>
     The release of BSF 2.4 from Apache Jakarta is now available for
     <a href="http://jakarta.apache.org/site/downloads/downloads_bsf.cgi">
     download</a>. If you have any feedback on this release, feel free to
     join the discussion on the bsf-dev and bsf-user mailing lists.
    </p>
                    </blockquote>
    </td></tr>
  </table>
        <table border="0" cellspacing="0" cellpadding="2" width="100%">
    <tr><td bgcolor="#525D76">
      <font color="#ffffff" face="arial,helvetica,sanserif">
        <a name="Interested?"><strong>Interested?</strong></a>
      </font>
    </td></tr>
    <tr><td>
      <blockquote>
                        <p>
     If you want to participate in developing BSF, join the
     <a href="http://jakarta.apache.org/site/mail.html">
     bsf-dev mailing list</a> and contribute your ideas.
    </p>
                    </blockquote>
    </td></tr>
  </table>
              </td>
        </tr>

        <!-- FOOTER -->
        <tr><td colspan="2">
          <hr noshade="" size="1"/>
        </td></tr>
        <tr><td colspan="2">
          <div align="center"><font color="#525D76" size="-1"><em>
          Copyright &#169; 2002-2010, Apache Software Foundation
          </em></font></div>
        </td></tr>
      </table>
    </body>
  </html>
<!-- end the processing -->




