Hi all,
In my login application I want to validate whether the textfield for Usename
and password is not null and also if some user enters some username say
"admin" and password as "admin" it should get logged in. For this I am using
postgresql database and I have already stored username  and password as both
as "admin. Now the problem is my Login page is able to check whether the 
textfield for Usename is Null or not but not able to validate with database
stored username and pasword. 
Initially I did not check for null textfield and I was able to validate the
username  and password  directly from database.but When I applied validate
method in my action class It began to validate for null fields but not for
stored  username  and password. I am pasting my code..


My Action class :-
package struts2demo.login.action;
import com.opensymphony.xwork2.ActionSupport;
import java.sql.*;
import java.text.*;
import java.io.*;


public class Login extends ActionSupport {
        private String userid;
        private String pwd;
        Connection db;
        Statement sql;
        DatabaseMetaData dbmd;
        
        public Login() {
                
        }
        
          public void validate() {
                if (getUserid().length() == 0) {
                    addFieldError("userid", "User Name is required");
                
                }
                if (getPwd().length() == 0) {
                    addFieldError("pwd","password isrequired");
                }
            }
        
        public  String execute() throws ClassNotFoundException,SQLException 
        {
         String database = "LOGIN";
         String username ="vikrant";
         String password ="vikrant";
         System.out.println("inside action class");
         
         Class.forName("org.postgresql.Driver");
         db =
DriverManager.getConnection("jdbc:postgresql:"+database,username,password );
         dbmd =db.getMetaData();
         System.out.println("Connection to "+dbmd.getDatabaseProductName()+" "
                     +dbmd.getDatabaseProductVersion()+" successful \n");
         System.out.println("Connected to the database");
         sql=db.createStatement();

         System.out.println("Now executing the command : " +"select * from
my_table");
         System.out.println("select * from my_table where usr = "+" 
'"+userid+"'"+"
and pass = "+"'"+pwd+"'");
         ResultSet results =sql.executeQuery("select * from my_table where usr =
"+" '"+userid+"'"+" and pass = "+"'"+pwd+"'");
         
         if (results != null)
         {
                                return SUCCESS; 
         }
         else
                 return ERROR;
        
 }
 

        public String getUserid() {
                return userid;
        }
        public void setUserid(String userid) {
                this.userid = userid;
        }
        public String getPwd() {
                return pwd;
        }
        public void setPwd(String pwd) {
                this.pwd = pwd;
        }
        
}

 And my struts.xml is as follows:- 

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd";> 
<struts>
        <package name="struts2demo.login.action" extends="struts-default">
                <action name="Login" class="struts2demo.login.action.Login">
                        <result>success.jsp</result>
                        <result name="input">/login.jsp</result>
                        <result name="error">error.jsp</result>
                </action>
        </package>
</struts>

I am not able to understand that  why the validation failed for database
when I applied validation for textfield.?
Could you please help me out of this..?
-- 
View this message in context: 
http://old.nabble.com/Trouble-with-struts2-validation-tp26316586p26316586.html
Sent from the Struts - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org

Reply via email to