Доступ к параметру Get с помощью скриптлета

У меня есть такой URL, как search.do?offset=20

смещение иногда находится в URL-адресе, иногда нет. Когда его нет в URL-адресе, я хочу, чтобы он был 0.

я безуспешно пытаюсь получить значение с помощью скриптлета следующим образом:

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

Кто-нибудь знает, что я делаю неправильно?


person Sergio del Amo    schedule 11.11.2008    source источник


Ответы (1)


Вы должны использовать это вместо этого.

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

Будьте осторожны, потому что если параметр "offset" имеет неверное целочисленное представление, будет выдано исключение NumberFormatException.

Это базовый JSP. Вы можете использовать Struts или другую среду J2EE, которая сделает эти преобразования более безопасными для вас.

person Fernando Miguélez    schedule 11.11.2008