/*
本段代码在公司项目中实际远程调用第三方公司提供的C#开发WebService的示例
*/
/**
* 登录游戏
*
* @param paramPN
* @param paramTerraceID
* @param paramSvrID
*/
private String loginGame(String paramPN, HttpServletRequest req){
String wsURL = WebGameConfig.getString("wsURL");
String paramTerraceID = WebGameConfig.getString("paramTerraceID");
String paramSvrID = WebGameConfig.getString("paramSvrID");
String key = WebGameConfig.getString("blsdKEY");
String paramIP = HttpUtils.getRemoteAddr(req);
log.warn("wsURL=" + wsURL + "|paramTerraceID=" +paramTerraceID + "|paramSvrID=" + paramSvrID + "|key=" + key + "|paramIP=" + paramIP);
// 推广员编号为空
String paramExpandID = null;
try {
Service service = new Service();
Call call = (Call)service.createCall();
call.setTargetEndpointAddress(new java.net.URL(wsURL));
call.setOperationName(new QName("http://tempuri.org/","Passport_LoginByGame"));
call.addParameter(new QName("http://tempuri.org/","paramPN"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/","paramTerraceID"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/","paramExpandID"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/","paramSvrID"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/","paramSign"),XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/","paramIP"),XMLType.XSD_STRING, ParameterMode.IN);
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://tempuri.org/Passport_LoginByGame");
call.setReturnType(XMLType.XSD_STRING);
String paramSign = geneMD5(paramTerraceID, paramPN, key);
Object result = call.invoke(new Object[]{paramPN, paramTerraceID, paramExpandID, paramSvrID, paramSign, paramIP});
log.warn("blsd loginGame result==>" + result.toString());
return result.toString();
} catch (ServiceException e) {
log.error("blsd loginGame err==>" + e.toString());
} catch (RemoteException e) {
log.error("blsd loginGame err==>" + e.toString());
} catch (MalformedURLException e) {
log.error("blsd loginGame err==>" + e.toString());
}
return "00";
}