Netbeans  Introduction:-

  •  Type: IDE software for java environment.
  •  Vendor: sun Microsystems (oracle corp).
  • Open source software.
  • To download from www.netbeans.org gives glassfish as built-in server also allows configuring other extend servers.
  • To get help: www.netbeans.org version: 6.7.1 (compatable with jdk1.5/1.6).
  • Netbeans IDE is good for web application.

 

Database table of Struts application:-

SQL> create table user-list (username varchar (20), password varchar (20))

       >insert into user-list values (‘ramu’, ‘jalli’);

      > insert into user-list values (‘ramu’, ‘pass’);

Query of the Struts application:- 

Select count (*) from user-list where username = “ramu” and password = “jalli”;

Count (*) ->1 (Valid credentials)  (or)   count (*) -> 0 (invalid credentials)

Procedure to develop in the above diagram Struts application by using NetBeans IED:-

Step1:- create java web project in Net Beans IDE by adding Struts capabilities to it.

              File –> new project –>java web –>web applicatio –>Next –>

                       Project name: StrutsDemoApp2 –>Next  –>Next –>

                               Select Struts 1.3.8

                                 Select ass Struts tld  –>finish –> Delete endex.jsp, Welcome Struts.jsp files.

Step2: Add ojdbc 14.jar file to the libraries of the project.

                Right click on libraries –>add jar –>ojdbc14.jar file browser & select.

Note:-  Jar files added to the my computer class path environment variable is not visible & access with projects created in IDE s/w. so add them to the libraries of IDE project separately.

Step3: Add form bean class to project (RegisterForm)

            Right click on source packages folder –>new  –>Struts Actionform bean

                               Classname: RegisterForm

                               Package: app.ram –> finish –>delete existing code of RegisterForm class

                                     –> declare private string username, password; –>select this line & right click –>

                                    –>insert code(Alt+insert) –>getter & setter methods.

Step4: add Action class to Struts application (project)(RegisterAction)

             Rightclick on source package  –>new –>Struts Action

                                  Classname: RegisterAction

                                    Package: app

                                  Action path: /register –>next

                                  ActionFormbean name: RegisterForm

                                  Scope:  .session O request  –> finish.

Step5: add action forward configuration to RegisterAction class configuration pointing to register.jsp.

In Struts-config.xml

                     <action name = “RegisterForm” path = “/register” scope = ”session” type = “app.

                                                                                                RegisterAction”>

                               <forward name = “result” path =”/register.jsp” />

                                  </action>

Step6: add register.jsp to the profect

          Right click on web pages –>new  –> jsp

                             Filename: register –> finish.

Register.jsp

   <% @ taglib uri = “/WEB-INF/Struts-html.ltd” prefix = “j” %>

   <% @ taglib uri = “/WEB-INF/Struts-bean.ltd” prefix = “bean” %>

   <% @ taglib uri = “/WEB-INF/Struts-logic.ltd” prefix = “logic” %>

      <j: form action = “register”>

                Username: <j: text properties = “username”/><br>

                Username: <j: password properties = “password”/><br>

                    <j: submit value = “checkDetails”/>

                     <j: form>

                        <br><br>

                      Result is: <logic: notEmpty name = “msg”>

                                       <bean: write name = “msg”>

                                        </logic: notEmpty>

Write the following code in the execute () of RegisterAction class:-

    Public ActionForward execute (-,-,-,-) throws exception

           {

              //type casting

  RegisterForm fm = (RegisterForm) fm;

         //read form page form data from form bean class object

                 String user = fm.getusername ();

                 String pwd = fm.getpassword ();

                        // write jdbc code

                             //create jdbc con object

                              Class.forname (“oracle.jdbc.driver.oracleDriver”);

                        Connection con = DriverMananger.get connection (“jdbc: oracle: thin: @localhost: 1521:

                                                                                             orcl”, “scott”, “tiger”);

             // [ctrl+shift+I – gives import statement dynamically]

              //create jdbc statement object

                 // preparedstatement ps = con. Preparestatement (“select count (*) from user-list where

                                                                               Username =? and password =?”);

                 // set values to programs.

                   Ps.setString (1, user);

                  Ps.setString (2, pwd);

                  // send & execute SQL query in D>B> s/w

             ResultSet rs = ps.execute Query ();

              // process the result

                    Int cnt = 0;

                        If (rs.next ())

                              Cnt = rs.getint (1);

                   If (cnt == 1)

                      Request.setAttribute (“msg”, “valid credentials”);

                        Else

                           Request.setAttribute (“msg”, “ivalid credentials”);

             Return mapping.findForward (“result1”);

      }

}

Step7: Run the project.

        right click on project  –>Run

  • Most of the IDE software’s redeploy’s the project (web application) once modification are done in the source in the source code of the project.
  • In order to make ActionServlet as front controller we need to configure the ActionServlet class in web.xml file either with extension match url-pattern or Directory match url-pattern.

Procedure to make first Struts application working with directory match url-pattern based ActionServlet class. (with respect to 1st app.)

Step1: configure ActionServlet in web.xml file having directory match url-pattern

     In web.xml

          <servlet-mapping>

               <servlet-name> action </ servlet-name>

                <u-p> /x/y/* </u-p>

            </servlet-mapping>

Step2: configure the target action class of form page by having the following action path.

    In Struts-config.xml

            <action path = “/x/y/register” type = “app.RegisterAction” name = “rf”>

                 <forward name = “result” path = “/register.jsp”/>

             </action>

Step3: design form page Action url as shown below

            <% @ taglib uri ———-

                        —————-

               <html: form action = “/x/y/register”>

                     Username: < ——

                      Password: < ———–

                                 <html: submit  

                     </html: from>

Step4: develop remaining resource of application like other regular struts applications.

Conclusion:-

It is always to recommended to configure ActionServlet with Extension match url pattern.