Доступ к параметру Get с помощью скриплета - PullRequest
2 голосов
/ 11 ноября 2008

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

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

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

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

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

1 Ответ

4 голосов
/ 11 ноября 2008

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

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

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

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

...