使用JSP中的请求信息解析自定义标记

时间:2011-02-24 04:37:16

标签: jsp parameters java-ee request custom-tag

我遇到一个简单的问题,但我没有幸运地找到谷歌的解决方案。

我想扩展自定义JSP标记,但我希望能够根据请求信息以不同方式解析它。例如标签:

<my:tag type="..."/>

如果请求中的参数不同,则应以不同方式展开:

http://localhost:8080/context/servlet?arg=web

应该产生与以下不同的结果:

http://localhost:8080/context/servlet?arg=mobile

有人知道标记解析类(通常扩展TagSupport)如何访问或从请求中传递参数?

3 个答案:

答案 0 :(得分:2)

您可以使用Expression Language向JSP-Tag提供请求参数。

<my:tag type="${param.arg}"/>

答案 1 :(得分:0)

您可以通过HttpServletRequest对象的getParameter()方法访问它。

String arg1 = request.getParameter("arg");

在那里,你有变量arg1包含&#34; web&#34;或&#34;移动&#34;当你从两个例子中的不同网址点击时。

答案 2 :(得分:0)

在标记类中,您可以访问请求对象并通过

获取参数
this.pageContext.getRequest().getParameter("arg");