نمایش نتایج 1 تا 5 از 5

نام تاپیک: java.lang.Exception

  1. #1

    java.lang.Exception

    سلام
    برای تعریف کاربرجدید کدی نوشتم و زمانی که اسم تکراری میدم خطای زیر رو نمایش میده به همراه پیغام
    انجام عملیات با خطا مواجه شد (java.lang.Exception: نام کاربر تکراری است)
    علت چی میتونه باشه؟
    @RequestMapping(method = RequestMethod.POST)
    public
    @ResponseBody
    ModelAndView createUser(@ModelAttribute("user") User user, @RequestParam("userProfiles1") Long userProfiles1,
    ModelAndView model) {
    String view = "user";
    try {
    Set<UserProfile> userProfiles = new HashSet<UserProfile>();
    UserProfile userProfile = new UserProfile();
    userProfile.setId(userProfiles1);
    userProfiles.add(userProfile);
    user.setUserProfiles(userProfiles);
    userService.saveUser(user);
    } catch (Exception e) {

    userProfileList = userService.getAllUserProfiles();
    if (e instanceof ConstraintViolationException ) {
    String result = messageSource.getMessage("error.repeated_username" , null, "",
    LocaleContextHolder.getLocale());
    throw new CRUDException(view, new Exception(result));
    } else {
    throw new CRUDException(view, e);

    }

    }

    model.setViewName(view);
    return model;
    }

  2. #2
    کاربر دائمی آواتار vahid-p
    تاریخ عضویت
    آذر 1391
    محل زندگی
    تهران
    پست
    1,140

    نقل قول: java.lang.Exception

    خب حتما این فیلد در پایگاه دادتون Unique هست و در نتیجه اگر بخواید نام تکراری ایجاد کنید Exception میده. همین ConstraintViolationException به این معنی که یکی از شرایط نقض شده. شما اومدید در خط 14 این رو catch کردید، بعد دوباره پایینترش نوعش رو مشخص کردید و دوباره throw new Exception کردید (حالا اینجا CRUDException). پس طبیعی در صورت نقض شرایط باز یک CRUDException ایجاد میشه و توضیحاتشم که نوشتید error.repeated_username . هر چند " و " دو طرف این متغیر رو متوجه نشدم.

  3. #3

    نقل قول: java.lang.Exception

    سپاس از شما
    بله درسته همچین کاربری در پایگاه داده هست ولی پیغام من همراه با
    java.lang.Exception: این کد چاپ میشه ؟

    و دابل کوتیشن ها رو گذاشتم که مثل fmt:message عمل کنه درواقع کلمه فارسی نداشته باشم تو کدم

  4. #4
    کاربر دائمی آواتار vahid-p
    تاریخ عضویت
    آذر 1391
    محل زندگی
    تهران
    پست
    1,140

    نقل قول: java.lang.Exception

    منظورتون اینه چرا java.lang.Exception ایجاد میکنه نه یک Exception دیگه؟ شاید به خاطر اینه که شما در throw کردن CRUDException اومدید یک new Exception() کردید.

    در کل این طرز کد نویسی صحیح نیست و اینقدر Exception تو Exception شده. همچنین Exception فقط یک String نیست و اطلاعات بیشتری رو همراش داره یکیش همین نوع Exception هست و بسته به نوع catch کردنش برخی از این اطلاعات نمایش داده میشه. از اونجایی که شما Exception رو throw کردید و احتمالا جای دیگه ای catch نکردید وقتی به خود main میرسه و میره بالاتر خود jvm اون رو میگیره و بخشی از اطلاعاتش رو نمایش میده. مثل nullpointerexception که اگر catch نکنید خود jvm میگیره و trace شدش و خیلی اطلاعات دیگه رو تو خروجی نمایش میده.

    به هر حال من دقیقا متوجه نشدم، الان مشکل شما با این کد چیه و انتظار داشتید چه خروجی بده؟!

  5. #5

    نقل قول: java.lang.Exception

    مشکل حل شد. سپاس
    @ExceptionHandler(CRUDException.class)

    public ModelAndView handleCustomException(CRUDException ex) {
    ModelAndView model = new ModelAndView(ex.getMessage());
    String errorMessage = messageSource.getMessage("crud_failed", null, "Success message",
    LocaleContextHolder.getLocale());
    model.addObject("errorMessage", errorMessage);
    model.addObject("errorCouse", ex.getCause().getMessage());
    return model;
    }

تاپیک های مشابه

  1. سوال: ارور java.lang.Exception: Error transforming bbox
    نوشته شده توسط sooren_66 در بخش برنامه‌نویسی جاوا
    پاسخ: 1
    آخرین پست: شنبه 21 شهریور 1394, 18:06 عصر
  2. سوال: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space
    نوشته شده توسط f_g1348 در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 4
    آخرین پست: دوشنبه 08 آبان 1391, 18:12 عصر
  3. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    نوشته شده توسط jeus در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 0
    آخرین پست: چهارشنبه 22 خرداد 1387, 15:29 عصر
  4. منو کشته ALERT: java/lang/ClassFormatError: Bad version information.
    نوشته شده توسط administors در بخش Java ME : نگارش میکرو جاوا
    پاسخ: 0
    آخرین پست: یک شنبه 24 دی 1385, 00:59 صبح
  5. Java.lang.NoclassDefFoundError.
    نوشته شده توسط vahid2003 در بخش برنامه‌نویسی جاوا
    پاسخ: 1
    آخرین پست: شنبه 15 بهمن 1384, 17:37 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •