我需要帮助。在我目前的开发中,其中一个要求是:
服务器将返回200-OK作为响应(httpresponse)。
如果验证了专门小组成员,那么服务器也必须 返回此小组成员的小组成员ID。
服务器会将panelist id放在200-OK的正文中 以下列方式回应:
<tdcp>
<cmd>
<ack cmd=”Init”>
<panelistid>3849303</panelistid>
</ack>
</cmd>
现在我可以将httpresponse设为
httpServletResponse.setStatus(HttpServletResponse.SC_OK);
我可以把
String responseToClient= "<tdcp><cmd><ack cmd=”Init”><panelistid>3849303</panelistid></ack></cmd></tdcp>";
现在将上面的xml放在200-OK响应体内意味着什么呢?它是如何实现的?
答案 0 :(得分:52)
您可以将XML直接写入响应,如下所示:
此示例使用ServletResponse.getWriter()
,PrintWriter
将字符串写入响应。
String responseToClient= "<tdcp><cmd><ack cmd=”Init”><panelistid>3849303</panelistid></ack></cmd></tdcp>";
httpServletResponse.setStatus(HttpServletResponse.SC_OK);
httpServletResponse.getWriter().write(responseToClient);
httpServletResponse.getWriter().flush();
httpServletResponse.getWriter().close();
答案 1 :(得分:6)
您只需要获取servlet响应的输出流(或输出编写器),然后写入。有关详细信息,请参阅ServletResponse.getOutputStream()
和ServletResponse.getWriter()
。
(或者只是阅读任何servlet教程 - 如果不能在响应主体中包含数据,servlet将毫无用处:)
答案 2 :(得分:0)
如果这是XML,那么Word已经通过将属性引号更改为”
而不是"
来为您破坏了一些东西。
如果要使用Java生成XML,请查看JAXP。在其中编写带有<
等字符串的字符串将无法扩展,并且您将遇到非ASCII字符编码问题。