客户端代码:
@Action(value = "/sendxmlTest", results = {
@Result(name = SUCCESS, location = "condo/accountOpenApplly.jsp"),
@Result(name = INPUT, location = "base/error.jsp") })
public String sendxmlTest(){
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
"<request>\n" +
" <head>\n" +
" <transType>0101</transType>\n" +
" <terminalVer>1.0.0</terminalVer>\n" +
" <dateTime>20170407103000</dateTime>\n" +
" </head>\n" +
" <body>\n" +
" <contactNo>Test00001</contactNo>\n" +
" </body>\n" +
"<mac>902de37505fce863f4489a87c7e3fa6c</mac>"+
"</request>";
String url = "http://127.0.0.1:8080/zxemm/contactServlet.htm";
try {
String resultXml = SubmitUtils.buildRequest(url, xml);
} catch (Exception e) {
e.printStackTrace();
}
return SUCCESS;
}
服务端代码:
package com.jiuyi.net.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import com.jiuyi.jyplat.entity.condo.ContactInfo;
import com.jiuyi.jyplat.service.SpringContextUtil;
import com.jiuyi.jyplat.service.condo.IContactInfoService;
import com.jiuyi.jyplat.util.ConfigManager;
import com.jiuyi.jyplat.util.DateUtils;
import com.jiuyi.jyplat.util.Utils;
import com.jiuyi.net.message.httpClient.XMLUtil;
import com.jiuyi.net.message.pos.contact.QurContactRsp;
import com.jiuyi.net.message.pos.contact.QurContactRspMsg;
import com.jiuyi.net.message.pos.contact.RequestHead;
import com.jiuyi.net.utils.PosMacUtils;
/**
*
* <p><b>Title: </b>ContactServlet.java
* <p><b>Description: </b>合同信息查询servlet
* @author
* @version V1.0
* <p>
* 2017-4-6 创建类 <br>
*
*/
public class ContactServlet extends HttpServlet{
private static final long serialVersionUID = 1L;
Logger log = Logger.getLogger(ContactServlet.class);
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
log.info("收到查询合同信息的请求...");
QurContactRspMsg rspMsg = new QurContactRspMsg();
QurContactRsp rsp = new QurContactRsp();
RequestHead head = new RequestHead();
head.setTransType("0101");
head.setTerminalVer("V1.0");
head.setDateTime(DateUtils.getToday(DateUtils.TIME_STR_FORMAT));
PrintWriter out = response.getWriter();
ServletInputStream sis = null;
String xmlData="";
Map<String,String> macMap = new HashMap<String,String>();
String posKey = (String) ConfigManager.getInstance().getConfigItem("pos_key", ""); //获取配置文件中的加密key
try {
//编码格式改成UTF-8
response.setCharacterEncoding("UTF-8");
request.setCharacterEncoding("UTF-8");
response.setContentType("textml; charset=UTF-8");
response.setHeader("Content-type", "text/html;charset=UTF-8");
sis=request.getInputStream();
// 取HTTP请求流长度