将XML文件传递给Web服务

时间:2014-05-20 20:33:03

标签: java xml web-services url soap

我一直在研究JAX-WS服务器。我让服务器和客户端都运行并完成了一些字符串测试,以确保我正确设置它们。我想开始努力通过URL将.XML文件传递给另一个Web服务。我想从我的目录中提取XML文件,如果经过身份验证,则从其他服务器获取响应。我是整个肥皂概念的新手,我正试着把头包裹起来。我可以通过JAX-WS进行HTTP / URL调用,还是完全偏离轨道?

[WebMethod]

public void ProcessXMLFile(XmlDocument doc)
{

      /// process doc as a local variable
}

Then in the call to do the following

XmlDocument doc = new XmlDocument();
doc.Load("C:\\Users\Me\xmlfile.xml");
/// Call to web service:
publicwebservice.ProcessXMLFile(doc);

这就是我以伪代码方式思考它的方式。如果有人知道任何进一步的教程,以帮助我将XML文件传递给Web服务并收到响应?

1 个答案:

答案 0 :(得分:1)

通过SOAP发送XML 你通常有两种选择......

Base64 the String和un-Base64在另一边...
http://commons.apache.org/proper/commons-codec/

byte[] encodedBytes = Base64.encodeBase64("Test".getBytes());
System.out.println("encodedBytes " + new String(encodedBytes));

byte[] decodedBytes = Base64.decodeBase64(encodedBytes);
System.out.println("decodedBytes " + new String(decodedBytes));

或者转义要发送的XML。这转向<进入<和>进入> StringEscapeUtils(http://commons.apache.org/proper/commons-lang/)有一个转义XML的方法

如果你想保持人类的可读性,通常会选择第二个选项。