Why empty resultset ?????-URGENT

hi,

skill=volgetSKILL();
if(skill!=null&& skill.length() != 0 &&!skill.equals("")){
//insert data;
}

Problem is empty resultset is get entered, what to do  


thanks
Jasbir21Asked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

kennethxuCommented:
problem in somewhere else, post your real code.
0
jimmackCommented:
That sounds like you're in a bad mood kenneth ;-)
0
TimYatesCommented:
if(skill!=null&& skill.length() != 0 &&!skill.equals("")){
     out.println( "Adding '" + skill + "'<br/>" ) ;
//insert data;
}

what does it print?
0
Bootstrap 4: Exploring New Features

Learn how to use and navigate the new features included in Bootstrap 4, the most popular HTML, CSS, and JavaScript framework for developing responsive, mobile-first websites.

kennethxuCommented:
No, I'm not :-(
Could it be the cause that English is my second language?
I'm working on projects in same time, that might be another reason that I didn't pay attention to proper phrase the sentence. Sorry Jasbir21.
0
jimmackCommented:
>> Could it be the cause that English is my second language?

I'm sorry kenneth.  I was only joking.  For the record, I haven't seen you be anything other than patient and helpful :-)
0
kennethxuCommented:
Hi Jim, no sorry. In fact, I really thank you for reminding me on that. Look, Tim was obviously taking a much better approach then I did :-)
0
jimmackCommented:
Just for info:

if(skill!=null&& skill.length() != 0 &&!skill.equals(""))

could be shortened to:

if(skill!=null && skill.length() > 0)
0
TimYatesCommented:
and lengthened to:

if( skill == null ? false : skill.length() > 0 ? true : false )

hehehehehe
0
TimYatesCommented:
(sorry) :-(
0
Jasbir21Author Commented:
hi,
sorry for the late response, we had leave the lab because to late .Now, I can enter again:

the code is :
with println, i see empty string get inserted:...

if(skill!=null && skill.length() > 0)
 
{
 
out.println( "Adding '" + skill + "'<br/>" ) ;

  StringTokenizer st = new StringTokenizer(skill,",");
  String[] ar = new String[st.countTokens()];
  int i=0;


if(st.hasMoreTokens()){

while(st.hasMoreTokens())
 {
  ar[i]=st.nextToken();

 


 String query = "insert into userskills(username,skill) values(?,?)";
  prep3=connection.prepareStatement(query);
  prep3.setString(1,username);
  prep3.setString(2,ar[i]);
  prep3.executeUpdate();
   i++;

}

}

          }//if


prep3.close();

.....

it works like this:
In volunteer.jsp,you have this:
<textarea type="text" name="skill" rows="5"  cols="15" wrap readonly >
</textarea>
and this value is assinged to bean and directed to DB.jsp which does inserting.
the code skill!=null..........is in DB.jsp


thanks


0
Jasbir21Author Commented:
i forgot to say in volunteer.jsp , it is assigned like this:

String  skill=vol.getSkill();

I able to delete skill in volunteer.jsp and when i mysql database, i see in table userskills in database, skill really get deleted, not any empty strings.

But when i press button submit , then only empty string gets inserted.

Thansk you
0
jimmackCommented:
Unless you are using the array "ar" for some other purpose, it's not required, you could change:

if(st.hasMoreTokens()){

while(st.hasMoreTokens())
 {
  ar[i]=st.nextToken();
  String query = "insert into userskills(username,skill) values(?,?)";
  prep3=connection.prepareStatement(query);
  prep3.setString(1,username);
  prep3.setString(2,ar[i]);
  prep3.executeUpdate();
   i++;
}

to:

if(st.hasMoreTokens()){

while(st.hasMoreTokens())
 {
  String query = "insert into userskills(username,skill) values(?,?)";
  prep3=connection.prepareStatement(query);
  prep3.setString(1,username);
  prep3.setString(2, st.nextToken());
  prep3.executeUpdate();
}

However, this doesn't explain why you're getting empty strings inserted into the database.

Could you just confirm that you see the following:

Adding ''

0
jimmackCommented:
If you see something like:

Adding ' '

you might want to consider changing:

String  skill=vol.getSkill();

to

String  skill=vol.getSkill().trim();
0
Jasbir21Author Commented:
yah, i get something like this ' ', i  change now
0
Jasbir21Author Commented:
i got error:

java.lang.NullPointerException
      org.apache.jsp.jsp2.volunteerupdateDB_jsp._jspService(volunteerupdateDB_jsp.java:189)
      org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
      org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
      org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

maybe this is because, the skill value needs not to be entered, i think,not sure
thanks
0
Jasbir21Author Commented:
i mean, the skill textarea, need not to be entered, i mean, if user never enter skill textarea, it is ok.

i hope i not confusing with bad english
0
jimmackCommented:
OK.  I don't *think* that should be too much of a problem.  Remove the .trim() you have just added and move it here instead:

  StringTokenizer st = new StringTokenizer(skill.trim(),",");

At least when you get to this line, you've already checked for null.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Jasbir21Author Commented:
Thanks very much,it works
0
jimmackCommented:
;-)
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
JSP

From novice to tech pro — start learning today.