<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
    <head>  
        <title>NetBeans IDE - Web Application Frameworks</title>
        <meta http-equiv="content-language" content="en">
        <meta name="description" content="DESCRIPTION HERE">
        <link rel="stylesheet" type="text/css" href="../../features.css">
        <link rel="stylesheet" type="text/css" href="/images_www/js/colorbox/colorbox.css">
    </head>
    <body>
        <script type="text/javascript" src="/images_www/js/colorbox/jquery.colorbox-min.js"></script>

        <script type="text/javascript">
            $(document).ready(function(){
                $('a.cbox').colorbox({rel:'cbox',opacity:0.7});
            });
        </script>
        <div style="margin:10px 20px 0px 0px;">
            <h1>Developing with Web Application Frameworks</h1>
            <p>
                <a href="../../images_www/v7/screenshots/web-app2.png"><img
                        alt="JSP web application development in the NetBeans IDE"
                        src="../../images_www/v7/screenshots/web-app2-cut1.png" border="0"
                        width="649"><br/>
                    <span class="font-11">Click image for fullscreen preview</span></a></p>
            <p class="intro">
                NetBeans IDE supports various Web application frameworks, including all the specifications
                for Web application development provided as part of the Java EE specification. You can also customize
                the IDE to work with additional frameworks of your choice.
            </p>
            <div class="line">&nbsp;</div>

            <!-- left text section start -->
            <a name="o1"></a>
            <span id="im1" class="overview-right"><a href="../../images_www/v7/3/features/ee-6-web-profile.png" class="cbox" title="Java EE 6 Web Profile Support"><img src="../../images_www/v7/3/features/ee-6-web-profile-cut.png" width="320"  alt=""  /></a></span>
            <h2>Java EE 6 Web Profile Support</h2>
            <p>
                The <a href="http://www.oracle.com/technetwork/java/javaee/downloads/javaee6-standards-jsp-141130.html"> 
                    Java EE 6 Web Profile</a> defines a subset of specifications that can be used 
                to build Web applications. In addition to supporting the full Java EE specification, NetBeans 
                provides out of the box support for the Web profile, including support for JSF, JSPs, Servlets.
            </p>
            <div class="line">&nbsp;</div>
            <!-- left text section end -->

            <!-- right text section start -->
            <a name="o2"></a>
            <span class="overview-left" id="im2"><a href="../../images_www/v7/3/features/jsf-dev.png" class="cbox" title="Create JSF 2.1 based clients"><img src="../../images_www/v7/3/features/jsf-dev-cut.png" width="320" alt="" /></a></span>
            <h2>JSF Development</h2>
            <p>
                NetBeans IDE supports the latest JavaServer Faces (JSF) 2.1
                standard, as well as the older 2.0 and 1.2 standards.
                NetBeans IDE supports Facelets, the official view technology for JSF 2.1. You can 
                create a new web application project based on the Facelets framework and work with 
                standard JSF reference implementation components.<br/><br/>
                The IDE also supports various JSF component libraries (<b>PrimeFaces, RichFaces, ICEfaces</b>) 
                that can simplify the development of facelet pages.<br/><br/>
                <a href="../../kb/docs/web/jsf20-intro.html" class="arr-link">Introduction to JavaServer Faces</a>
            </p>
            <div class="line">&nbsp;</div>
            <!-- right text section end -->

            <!-- left text section start -->
            <a name="o3"></a>
            <span id="im3" class="overview-right"><a href="../../images_www/v7/3/features/jsf-crud-gen.png" class="cbox" title="Full Java EE 6 Support"><img src="../../images_www/v7/3/features/jsf-crud-gen-cut.png" width="320" alt=""  /></a></span>
            <h2>Wizard Based Client Generation</h2>
            <p>
                Use the JSF CRUD application generator (Create/Read/Update/Delete) to create a complete 
                functional JSF page for manipulating data from a database. The New File wizard can 
                generate customizable CRUD JSF pages from existing entities. Use the customizable HTML and 
                JSF components palettes to drag and drop HTML and JSF forms into web pages and to generate 
                JSF data tables from entities.
                The ability to create and work with Facelets templates is also provided.<br/><br/>
                The IDE now generates code using annotations instead of 
                deployment descriptors where possible.<br/><br/>
            </p>
            <div class="line">&nbsp;</div>
            <!-- left text section end -->

            <table>
                <tr>
                    <td class="valign-top"><h2>JSF Templates Support</h2></td>
                    <!--<td></td>-->
                    <td class="valign-top"><h2>JSP Development</h2></td>
                    <!--<td></td>-->
                    <td class="valign-top"><h2>Hibernate Support</h2></td>
                </tr>
                <tr>
                    <td class="valign-top" style="width:33%;padding-right:10px;"> 

                        <p> 
                            <span class="overview-centre" id="im4"><img src="../../images_www/v7/3/features/template-wizard-cut.png" width="200" alt="" /></span><br/>
                            The IDE provides a Facelets Template wizard for creating
                            Facelets templates, and a Facelets Template Client wizard for creating
                            files that rely on a template.
                        </p>
                    </td>
                    <!--<td>&nbsp;</td>-->
                    <td class="valign-top"  style="width:33%;padding-right:10px;">

                        <p> 
                            <span class="overview-centre" id="im6"><img src="../../images_www/v7/3/features/jsp-dev-cut.png" width="200" alt="" /></span><br/>
                            In JavaServer Pages (JSP) files, the editor assists you with code completion, 
                            hypertext navigation, error checking, and debugging. You can drag and drop 
                            code snippets from a pallete. There is support for creating and using custom tag libraries.
                            <br/><br/>
                            <a href="../../kb/docs/web/quickstart-webapps.html" class="arr-link">Introduction to developing Web applications with JSP</a>
                        </p>
                    </td>
                    <!--<td>&nbsp;&nbsp;&nbsp;</td>-->
                    <td class="valign-top"  style="width:33%">

                        <p>
                            <span class="overview-centre" id="im7"><img src="../../images_www/v7/3/features/hibernate-web-apps.png" alt="Spring Support" class="box" width="200"></span><br/>
                            Hibernate libraries are automatically bundled with your
                            application when you select the Hibernate framework in the New Project
                            wizard. The IDE provides wizards for creating Hibernate reverse engineering 
                            and configuration XML files and POJO classes.
                            <br/><br/>
                            <a href="../../kb/docs/web/hibernate-webapp.html" class="arr-link">Using Hibernate in a Web Application</a>
                        </p>
                    </td>
                </tr>
                <tr>
                    <td class="valign-top"><h2>Spring Support</h2></td>
                    <!--<td></td>-->
                    <td class="valign-top"><h2>Struts Support</h2></td>
                    <!--<td></td>-->
                    <td class="valign-top"><h2>Other Frameworks</h2></td>
                </tr>
                <tr>
                    <td class="valign-top" style="width:33%;padding-right:10px;"> 

                        <p>                             
                            <span class="overview-centre" id="im7"><img src="../../images_www/v7/3/features/spring-completion.png" alt="Spring Support" class="box" width="200"></span><br/>
                            Select the Spring framework in the New Project wizard
                            and immediately start out with a skeleton Spring Web MVC application.
                            Take advantage of refactoring (including XML
                            configuration files), and code completion in the editor.<br/><br/>
                            <a href="../../kb/docs/web/quickstart-webapps-spring.html" class="arr-link">Introduction to Spring Web MVC</a>
                        </p>
                    </td>
                    <!--<td>&nbsp;</td>-->
                    <td class="valign-top"  style="width:33%;padding-right:10px;">

                        <p>
                            <span class="overview-centre" id="im8"><img src="../../images_www/v7/3/features/struts.png" alt="Struts Support" class="box" width="200"></span><br/>
                            Select the Struts framework to create flexible web
                            applications based on standard technologies, such as JSP pages,
                            JavaBeans, resource bundles, and XML. Benefit from code completion for
                            Struts tags, and Struts Javadoc pop-ups in the editor.<br/><br/>
                            <a href="../../kb/docs/web/quickstart-webapps-struts.html" class="arr-link">Introduction to the Struts Web Framework</a>
                        </p>
                    </td>
                    <!--<td>&nbsp;&nbsp;&nbsp;</td>-->
                    <td class="valign-top"  style="width:33%">

                        <p>
                            <span class="overview-centre" id="im8"><img src="../../images_www/v7/3/features/plugin-portal-uc.png" alt="Struts Support" class="box" width="200"></span><br/>
                            You can install additional plugins providing support for other frameworks, when provided, 
                            from the IDE's Update Center.<br/><br/>
                            For example, the <strong>Wicket</strong> plugin can be installed to enable support for the Wicket framework.<br/><br/>
                            <a href="../../kb/docs/web/quickstart-webapps-wicket.html" class="arr-link">Introduction to the Wicket Web Framework</a><br/><br/>
                            <a href="../../kb/docs/web/framework-adding-support.html" class="arr-link">Adding Support for a Web Framework</a>
                        </p>
                    </td>
                </tr>
            </table>

            <h2>See Also</h2>
            <ul class="bigger">
                <li><a href="/community/releases/73/index.html">NetBeans IDE 7.3  Release Page</a> for a list of specific features in the latest stable release.</li>
                <li>Get more details about features of the latest stable release on the <a href="http://wiki.netbeans.org/NewAndNoteworthyNB73">NetBeans IDE 7.3 New and Noteworthy page</a>.</li>
                <li><a href="../../kb/trails/java-ee.html">Java EE and Java Web Learning Trail</a> for tutorials that will help you get started.</li> 
            </ul>

        </div>
    </body>
</html>
