【发布时间】:2016-08-16 11:06:06
【问题描述】:
我必须创建一个 Java webapp 来侦听传入的 HTTP POST 请求,然后检索请求正文中包含的 XML 以便处理它。 我正在使用 Maven 4、Hibernate 3 和 XML-RPC 服务器。我使用 Maven 成功导入了 XML-RPC jar 文件。
虽然每个人似乎都说 XML-RPC 是世界上最简单的东西,但我很难实现它。我对 webapps 很陌生。 查看 Apache XML-RPC 教程,我知道我需要创建一个类,例如:
public class MyServer extends XmlRpcServlet {
private XmlRpcServer server = new XmlRpcServer();
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
server.addHandler("myProcess", new MyProcessHandler);
byte[] result = server.execute (request.getInputStream());
response.setContentType ("text/xml");
response.setContentLength (result.length());
OutputStream out = response.getOutputStream();
out.write (result);
out.flush ();
}
}
但这不会编译,因为“execute”方法需要一个 XmlRpcRequest 参数。关于我做错了什么的任何提示?
除此之外,我不明白如何从函数 myProcess() 中获取请求的正文。我有一个实现 myProcess() 函数的 MyProcessHandler 类(不扩展类)。我需要在这个函数中添加一个参数吗?那么是什么类型呢?
【问题讨论】: