Утверждение, настроенное в формуляре с JSP

Я нуждаюсь в том, чтобы ввести несколько данных в компьютер в формуляре (как имя продукта, описания, код продукта, стоимости, запас, и т.д.)

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

Я хочу добавить утверждение, настроенное, чтобы проверять adicionalmente, что код продукта был отличным от нуля, как он бы это сделал в JSP?

Код, который я использую:

  List errorMsgs = new ArrayList();
    try{

  int Codproducto = Integer.parseInt(request.getParameter("codproducto"));
  String nombreproducto=request.getParameter("nombreproducto");
  String Descripcion=request.getParameter("descripcion");
  String stock = request.getParameter("stock"); // este igual es INT
  String valor = request.getParameter("valor"); // INT

    //Aquí es donde necesito ayuda. Me sale este error "int cannot be dereferenced"
    if(Codproducto !=0 || Codproducto.trim().length()==0){
     errorMsgs.add("Debes ingresar un codigo del producto");

     //esto y lo de abajo funciona bien. Al parecer el error es por la conversion de String a Int ¿?
  if(nombreproducto==null||nombreproducto.trim().length()==0){
      errorMsgs.add("Falta ingresar el nombre del producto");   

      }
  if(Descripcion==null||Descripcion.trim().length()==0){
      errorMsgs.add("Falta ingresar la descripcion del producto");
      }
1
задан 15.02.2017, 01:43
2 ответа

Refactorizo твой код:

List<String> errorMsgs = new ArrayList();
  try{
   int codProducto = Integer.parseInt(request.getParameter("codproducto"));
   String nombreproducto=request.getParameter("nombreproducto");
   String descripcion=request.getParameter("descripcion");
   String stock = request.getParameter("stock"); // este igual es INT
   String valor = request.getParameter("valor"); // INT

   if(esParametroValido(codproducto)) {
     errorMsgs.add("Debes ingresar un codigo del producto");
   }
   if(esParametroValido(nombreproducto)){
     errorMsgs.add("Falta ingresar el nombre del producto");   
   }
   if(esParametroValido(descripcion)){
     errorMsgs.add("Falta ingresar la descripcion del producto");
   }

}

//metodo para validar parametros de tipo int
private boolean esParametroValido(int valorDeParametro) {
  return valorDeParametro == null ? false : true;
}

//metodo para validar parametros tipo String
private boolean esParametroValido(String valorDeParametro) {
  return valorDeParametro == null || valorDeParametro.isEmpty() ? false : true;
}

Единственным, что я определил, является метод утверждения из-за каждого типа параметра, ошибка, - потому что тип int может быть недействительным, но очевидно у него нет методов, это не объект, это примитивный тип, Ваш эквивалентный класс, который является Integer, и эта, если это tipp класса, который также не располагает методами length () ни trim (), что свойственные классу String

1
ответ дан 24.11.2019, 14:30

Чтобы подтверждать, что стоимость переменной была отличной от нуля, в jsp, оно было бы нечто похожим: Первый ты создаешь объект.

<INPUT TYPE="TEXT" NAME="codigo">

И потом, где ты захотел санкционировать это, ты это подбираешь и санкционируешь.

if (request.getParameter("codigo" != 0)){
     Código con el que se cumple esa condición
}else{
     Código si no se cumple esa condición.
}

Более или менее?

0
ответ дан 24.11.2019, 14:30

Теги

Похожие вопросы