Вопрос

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

Смещение

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

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

<%  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. Вы можете использовать Struts или другую инфраструктуру J2EE, которая сделает эти преобразования более безопасными для вас.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top