axis2和cxf获取内置对象response\request

来源:互联网 发布:域名注册后怎么建站 编辑:程序博客网 时间:2024/05/06 15:58

1.axis2获取内置对象

[java] view plain copy
  1. package org.lxh;  
  2.   
  3. public class Snippet {  
  4.     public HttpServletRequest getRequest() {  
  5.         MessageContext mc = MessageContext.getCurrentMessageContext();  
  6.         if (mc == null) {  
  7.             System.out.println("无法获取到MessageContext");  
  8.             return null;  
  9.         }  
  10.         HttpServletRequest request = (HttpServletRequest)mc.getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST);  
  11.         return request;  
  12.     }  
  13.   
  14.     public HttpServletResponse getResponse() {  
  15.         MessageContext mc = MessageContext.getCurrentMessageContext();  
  16.         if (mc == null) {  
  17.             System.out.println("无法获取到MessageContext");  
  18.             return null;  
  19.         }  
  20.         HttpServletResponse response = (HttpServletResponse)mc.getProperty(HTTPConstants.MC_HTTP_SERVLETRESPONSE);  
  21.         return response;  
  22.     }  
  23. }  


2.cxf获取内置对象

[java] view plain copy
  1. package org.lxh;  
  2.   
  3. import java.util.Date;  
  4. import javax.annotation.Resource;  
  5. import javax.jws.WebService;  
  6. import javax.servlet.http.HttpServletRequest;  
  7. import javax.servlet.http.HttpSession;  
  8. import javax.xml.ws.WebServiceContext;  
  9. import javax.xml.ws.handler.MessageContext;  
  10. import org.apache.cxf.message.Message;  
  11. import org.apache.cxf.transport.http.AbstractHTTPDestination;  
  12. import org.slf4j.Logger;  
  13. import org.slf4j.LoggerFactory;  
  14. import org.springframework.beans.factory.annotation.Autowired;  
  15.   
  16. @WebService  
  17. public class SendSMSImpl implements SendSMS {  
  18.     private Logger log = LoggerFactory.getLogger(this.getClass());  
  19.   
  20.     @Resource  
  21.     private WebServiceContext context;  
  22.   
  23.     public String getIp() {  
  24.         try {  
  25.             MessageContext ctx = context.getMessageContext();  
  26.             HttpServletRequest request = (HttpServletRequest) ctx  
  27.                     .get(AbstractHTTPDestination.HTTP_REQUEST);  
  28.             String ip = request.getRemoteAddr();  
  29.             return ip;  
  30.         } catch (Exception e) {  
  31.             return "获取ip失败";  
  32.         }  
  33.     }  
  34. }  

0 0
原创粉丝点击