代码@Path("/service")
//@Produces("application/xml")
public class Service {
@Context
private WebServiceContext context;
@POST
@Path("/post/")
public String postRequest(String beanString){
System.out.println(this.getClientIpCxf());
return “”;
}
//获取ip方法
private String getClientIpCxf() {
MessageContext ctx = context.getMessageContext();
HttpServletRequest request = (HttpServletRequest)ctx.get(AbstractHTTPDestination.HTTP_REQUEST);
return request.getRemoteAddr();
}
}
//@Produces("application/xml")
public class Service {
@Context
private WebServiceContext context;
@POST
@Path("/post/")
public String postRequest(String beanString){
System.out.println(this.getClientIpCxf());
return “”;
}
//获取ip方法
private String getClientIpCxf() {
MessageContext ctx = context.getMessageContext();
HttpServletRequest request = (HttpServletRequest)ctx.get(AbstractHTTPDestination.HTTP_REQUEST);
return request.getRemoteAddr();
}
}
import javax.annotation.Resource;
import javax.jws.WebService;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.handler.MessageContext;
import org.apache.cxf.message.Message;
import org.apache.cxf.transport.http.AbstractHTTPDestination;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@WebService
public class SendSMSImpl implements SendSMS{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Resource
private WebServiceContext context;
@Override
public ResultObj sendSMSInfo(String username, String password,
String smsContent, String sendStartDt,
String sendEndDt, String spName, String businessId,
String streamNo) {
String ip = getIp();
return obj;
}
public String getIp(){
try{
MessageContext ctx = context.getMessageContext();
HttpServletRequest request = (HttpServletRequest)
ctx.get(AbstractHTTPDestination.HTTP_REQUEST);
String ip=request.getRemoteAddr();
return ip ;
} catch(Exception e){
return "获取ip失败" ;
}
}
}
import javax.ws.rs.core.Context;
@Context
private MessageContext messgeContext;
HttpServletRequest request = messgeContext.getHttpServletRequest();
request.getRemoteAddr();自问自答一下吧。注意一下引入的类 和3楼给出的例子那个是不同的,这种适用于restful的cxf开发的。
前5个留言的给分 散分。
你是怎么写的?
LZ看一下这个http://www.oschina.net/question/158246_45413
我不太清楚