Несколько страниц внутри Одного портлета

StackOverflow https://stackoverflow.com/questions/1407418

  •  05-07-2019
  •  | 
  •  

Вопрос

Мне любопытно, знает ли кто-нибудь, возможно ли, чтобы один портлет содержал несколько страниц, скажем, JSP-страницы.Кроме того, возможно ли создать ссылку на эти разные страницы в одном портлете?

Например.Допустим, у меня есть один портлет.И в этом портлете я хочу, чтобы начальным представлением была страница JSP, на которой было всего 5 ссылок на 5 разных страниц JSP.И когда пользователь нажимал на одну из этих 5 ссылок, он загружал соответствующую страницу JSP в портлет.

Конечной целью, по сути, был бы небольшой мини-веб-сайт, весь содержащийся внутри портлета.

Теперь я понимаю, что это, возможно, не самое лучшее использование портлета, но ради проекта, над которым я работаю, я все же хотел бы знать, возможно ли это.

Спасибо!

Это было полезно?

Решение

Конечно, портлет может содержать более одного JSP.

Вы можете отобразить любой JSP, который вы хотите, с помощью PortletRequestDispatcher Запрос портала в вашем Просмотр голубя (или doHelp или doEdit) способ:

protected void doView(RenderRequest req, RenderResponse resp)
       throws PortletException, IOException, UnavailableException {
   resp.setContentType("text/html"); 
   String myview = req.getParameter("myview");
   String view = "/WEB-INF/jsp/" + (myview==null ? "bar" : myview) + ".jsp";
   PortletRequestDispatcher dispatcher = 
                                 getPortletContext().getRequestDispatcher(view);
   dispatcher.include(req, resp);
}

Вы могли бы использовать параметр чтобы установить вид.В JSP со ссылками вам нужно было бы использовать Portlet API для создания / кодирования ссылок на портлет.Например:

<portlet:renderURL>
  <portlet:param name="myview" value="foo"/>
</portlet:renderURL>

(Я действительно не был в курсе JSR286 / Portlet 2.0 - этот материал должен работать с JSR168 / Portlet 1.0 - так что стоит проверить новый API, если вы его используете.)

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