Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Строка не проверяется на null 
:(
    Опции темы
Гость_junior
Дата 7.11.2005, 15:37 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Привет, всем,
вопрос:
есть два поля куда надо вводить значения. эти значения передаются в джавабины. никак не получается отловить нулевые значения, т.е. когда пользователь ничего не вводит, а сразу жмет кнопочку сабмит. В обычном приложении все ок, а когда через ЖСП делаю, ничего не получается. Внутри проверяю на равенство null, не отлавливается. Что делать?
  Вверх
KostenkoSergey
Дата 7.11.2005, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 31.10.2005
Где: Kiev

Репутация: 3
Всего: 8



кидай исходину.. - так не понятно ничего smile
PM ICQ   Вверх
erka
Дата 7.11.2005, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 13.7.2005

Репутация: нет
Всего: 1



"".equals(string) ?
PM MAIL   Вверх
___Yuri
Дата 7.11.2005, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 2.3.2005
Где: МО

Репутация: нет
Всего: нет



trim(); а потом проверить на размер?...

Кинь код
PM MAIL ICQ   Вверх
KostenkoSergey
Дата 7.11.2005, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 31.10.2005
Где: Kiev

Репутация: 3
Всего: 8



smile
Цитата(erka @ 7.11.2005, 16:46)
"".equals(string) ?

дык пустая строка и нулл это ДВЕ БОЛЬШИЕ РАЗНИЦЫ
в жсопе чтось типа такой проверки пиндуль :
Код

if(request.getParameter("param") != null) {
....
}
или как там у тебя .... исходник то всё равно зажал smile
smile
PM ICQ   Вверх
batigoal
Дата 7.11.2005, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 16
Всего: 151



Вообще, если поля должны быть обязательно заполнены, это нужно проверять на клиенте (джаваскриптом). Это совсем просто, но сэкономит юзеру кучу времени.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
KostenkoSergey
Дата 7.11.2005, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 31.10.2005
Где: Kiev

Репутация: 3
Всего: 8



Цитата(Lamer @ 7.11.2005, 17:48)
Вообще, если поля должны быть обязательно заполнены, это нужно проверять на клиенте (джаваскриптом). Это совсем просто, но сэкономит юзеру кучу времени.
- smile

ЗЫ ну не выучил я "джаваскриптом" smile

Это сообщение отредактировал(а) KostenkoSergey - 7.11.2005, 17:52
PM ICQ   Вверх
erka
Дата 7.11.2005, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 29
Регистрация: 13.7.2005

Репутация: нет
Всего: 1



к тому же javascript можно отключить или javascript может некорректно работать на стороне клиента. так что идеальный вариант - и на клиенте и на сервере.

PM MAIL   Вверх
batigoal
Дата 7.11.2005, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 16
Всего: 151



Цитата(KostenkoSergey @ 7.11.2005, 18:50)
ЗЫ ну не выучил я "джаваскриптом" smile

Там все несложно. Вот примитивный пример (работает в IE и FireFox, насчет остальных браузеров не уверен):

Код

<html>
  <head>
    <script>
      function validateFields()
      {
        if(document.getElementById("name").value.length == 0 ||
           document.getElementById("password").value.length == 0 )
        {
          alert("Вы не заполнили обязательные поля!");
          return false;
        }
        else
        {
          return true;
        }
      }
    </script>
  </head>
  <body>
    <form onSubmit="return validateFields();">
      Name: <input type="text" name="name" id="name">
      <br>
      Password: <input type="text" name="password" id="password">
      <br>
      <input type="submit" value="Send">
    </form>
  </body>
</html>

Добавлено @ 23:12
Ну и, как было справедливо подмечено, валидацию на сервере никто не отменял.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Гость_junior
Дата 8.11.2005, 11:13 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Кроче, в чем была проблема...

Текст формочки с полями:

Код

<%@ page errorPage="error.jsp" %>
<html>
<head>
</head>
<body style="font-family: Verdana, Tahoma; font-size=10pt">
<form action="handlerDB.jsp" method="post">
Enter OLD coreid: <input type="text" name="oldCoreid" value=" " maxlength="8"><br>
Enter NEW coreid: <input type="text" name="newCoreid" value=" " maxlength="8"><br>
<input type="submit" name="submit" value="Submit">
</form>
</body>



текст ЖСП handlerDB:

Код

<%@ page errorPage="error.jsp" %>
<html>
<head>
<style type=text/css>
.link { font-family:Verdana, Tahoma; text-decoration:none; }
</style>
</head>
<body style="font-family:Verdana, Tahoma; font-size: 10pt;">
<jsp:useBean id="beanDB" class="beanDB" scope="page"/>

<jsp:setProperty name="beanDB" property="oldCoreid"/>
<jsp:setProperty name="beanDB" property="newCoreid"/>

<jsp:getProperty name="beanDB" property="result"/>
<br>
<br><A class=link href="***">Update more</A>
&nbsp;&nbsp;&nbsp;<A class="link" href="***">Home</A>

</body>
</html>


и код бина, не полный

Код

public class beanDB { 
    private String oldCoreid;
    private String newCoreid;
    private String result;
    private String updated;

    public String getOldCoreid(){return oldCoreid;}
    public String getNewCoreid(){return newCoreid;}
    public String getResult(){return result;}
    
    public void setOldCoreid(String oldCoreidN){
        oldCoreid = oldCoreidN;
    }
    public void setNewCoreid(String newCoreidN){
        newCoreid = newCoreidN;
        if(oldCoreid==null || oldCoreid.trim().length()<=0){
            result = "Enter Old coreid";
        }
        else if(newCoreid==null || newCoreid.trim().length()<=0){
            result = "Enter New coreid";
        }
        else
            {
                changeCoreid();
            }
    }


Так вот, когда в поля ничего не писать, а сразу жмакать кнопочку Сабмит, то поля не проверялись вообще, никакого сообщения не выводилось. Единственным решением которое я нашел, это просто установить в поле дефолтовое значение " ". Теперь проверяется...
  Вверх
Гость_junior
Дата 8.11.2005, 17:38 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вот еще вопрос:

кто-нибудь может привести пример аутентификации? или киньте ссылку, плз
  Вверх
sergejzr
Дата 8.11.2005, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 2
Всего: 360



Код

String param=null;
if(param=request.getParameter("param") != null && param.trim().length()>0)


Так надо проверять smile
Проверка всегда желательна и на клиенте и на сервере. Причём на сервере - всегда обязательна. smile


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0595 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.