mule客户端返回

使用之前的客户端调用方法,获取的是一下看不懂的东西(这里你一定以为是程序做了,其实没有):

这是因为在MuleCallableUtil.java中返回的是一个map



mule客户端返回_第1张图片
 
 为什么要这样做那,因为在实际的开发中,我们需要先获取用户的所有信息,然后在做处理,所以这里至获取用户信息放进一个map中。在下一个类中处理,怎么在下一个类中处理那?看下面


mule客户端返回_第2张图片
 下面是MyClass中的内容:

import java.util.Map;


public class MyClass {

 public String getMessage( Map<String, Object> mMap) {
  String xmlInfo = (String )mMap.get("message");
  return "用户发送的信息:"+xmlInfo;
  
 }

}

客户端调用代码:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class MuleClientTest {
 public static void main(String[] args) {
  OutputStream os = null;
  String xml = "我发送的报文";// 要发送的报文
  System.out.println("本次发送的报文:" + xml);
  try {
   String returnXml = ""; // 返回的报文
   URL url = new URL("http://127.0.0.1:8080/?code=" + "code&name=liuli");//这种方式可以在发送报文的同时也发送一些参数
   HttpURLConnection connection = (HttpURLConnection) url.openConnection();
   connection.setDoOutput(true);// 允许连接提交信息
   connection.setRequestMethod("POST");// 网页提交方式“GET”、“POST”
   StringBuffer sb = new StringBuffer();
   sb.append(xml);
   os = connection.getOutputStream();
   os.write(sb.toString().getBytes());
   os.close();
   BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8"));
   String inputLine;
   while ((inputLine = br.readLine()) != null) {
    returnXml = inputLine;
   }
   System.out.println("本次返回的报文:" + returnXml);
  } catch (Exception e) {
   System.out.println(e);
  }
 }

}

你可能感兴趣的:(mule)