سؤال

أقوم بإجراء عملية "get" بسيطة في JBoss/Spring.أريد من العميل أن يمرر لي مجموعة من الأعداد الصحيحة في عنوان url.كيف أقوم بإعداد ذلك على الخادم؟وإظهار هل يجب على العميل إرسال الرسالة؟

هذا هو ما لدي الآن.

@RequestMapping(value="/test/{firstNameIds}", method=RequestMethod.GET)
@ResponseBody
public String test(@PathVariable List<Integer> firstNameIds)
{
     //What do I do??
     return "Dummy"; 
}

على العميل أود أن أمرر شيئا من هذا القبيل

http://localhost:8080/public/test/[1,3,4,50]

عندما فعلت ذلك أحصل على خطأ:

java.lang.IllegalStateException:تعذر العثور على @PathVariable [firstNameIds] في @RequestMapping

هل كانت مفيدة؟

المحلول

giveacodicetagpre.

(اختبارها مع الربيع MVC 4.0.1)

نصائح أخرى

يجب عليك أن تفعل شيئا مثل هذا:

يتصل:

GET http://localhost:8080/public/test/1,2,3,4

وحدة التحكم الخاصة بك:

@RequestMapping(value="/test/{firstNameIds}", method=RequestMethod.GET)
@ResponseBody
public String test(@PathVariable List<Integer> firstNameIds) {
     //Example: pring your params
     for(Integer param : firstNameIds) {
        System.out.println("id: " + param);
     }
     return "Dummy";
}

إذا كنت ترغب في استخدام الأقواس المربعة - [] giveacodicetagpre.

(تم اختباره مع الربيع MVC 4.1.1)

يمكن أن تفعل معرفات السلسلة EmpathVariable، ثم تحليل السلسلة.

لذلك مثل: giveacodicetagpre.

تمر في: giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top