ServletContext servletContext = request.getServletContext();
rd = servletContext.getRequestDispatcher("/rest/v1/code?param1=" + URLEncoder.encode(code, "UTF-8") + "¶m2=" + value);
rd.forward(request, response);
当我直接使用param1值调用uri“rest / v1 / code”作为“dsk?text = sas”编码输入时。我能够在Jersey资源中收到param1值。
但是通过上面的servlet资源调度,查询参数值在Jersey资源中设置为null。
只有当param1包含'?'时才会出现此问题作为投入的一部分。请帮我解决这个问题。
@GET
@Consumes({MediaType.APPLICATION_FORM_URLENCODED})
public Response getResponse(@QueryParam("param1") String param1))
注意:在球衣资源内
String str = request.getQueryString();给了我“text = sas”;
未设置param1值,它为null
而request.getParameter(“param1”)给出了实际值(“dsk?text = sas”)