سؤال

وأنا هافا رابط مثل <م> search.do؟offset=20

وتعويض بعض الأحيان في رابط أحيانا لا. عندما لا يكون في URL أريد لها أن تكون 0.

وأحاول، ولكن دون جدوى، لاسترداد قيمة مع scriptlet كما يلي:

<%  Integer offset = (pageContext.findAttribute("offset")==null) ? new Integer("0") : new Integer((String) pageContext.findAttribute("offset")); %>

وأي شخص يعرف ما أقوم به خطأ؟

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

المحلول

ويجب عليك استخدام هذه بدلا من ذلك.

<% Integer offset = request.getParameter("offset") != null && request.getParameter("offset").length() > 0 ? new Integer(request.getParameter("offset")) : new Integer(0); %>

كن حذرا لأنه إذا كان "تعويض" معلمة لديها تمثيل صحيح غير صحيح سيتم طرح على NumberFormatException.

وهذا هو JSP الأساسي. هل يمكن استخدام الدعامات أو إطار J2EE الأخرى التي تجعل هذه التحويلات أكثر أمانا بالنسبة لك.

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