자바 테스트 전화 .NET 인터페이스 서비스

패키지 com.karros.test; 

수입 java.util.HashMap에;
수입 java.util.Map; 

수입 하는 javax.xml.namespace.QName; 

수입 org.apache.axis.client.Call;
수입 org.apache.commons.lang.StringUtils;
수입 org.apache.commons.logging.Log;
수입 org.apache.commons.logging.LogFactory; 

공공  클래스는 TestWsdl { 

    보호  최종 로그인 로거 = LogFactory.getLog (getClass ());
    공공  정적  무효 메인 (문자열 [] 인수)이 발생 예외 {    
        지도 <문자열 오브젝트> = paramMap 의 HashMap <문자열, 개체> (); 
        paramMap.put ( "syncTime", "20200401" ); 
        지도 <문자열, 개체> 된 resultMap =  의 HashMap <문자열, 개체> (); 
        TestWsdl 단은 = 새로운 TestWsdl을 (); 
        된 resultMap = aa.getWebService (paramMap); 
        에서 System.out.println (된 resultMap); 
    } 

//     @Value ( "$ {weixin_sign_url}")
 //     개인 문자열 엔드 포인트;
    //   #微信签到云平台接口地址
     // weixin_sign_url = http://10.182.5.173 : 1111 / 서비스 / WXQDService.asmx의 
    
    공공문자열 엔드 포인트 = "http://10.182.5.96:102/Service/ORGService.asmx" ;
    공개 지도 <문자열, 개체> getWebService는 (지도 <문자열, 개체> paramMap)가 발생 예외 { 
        logger.debug를 ( "获取接口开始..." ); 
        지도 <문자열, 개체> 된 resultMap =  의 HashMap <문자열, 개체> (); 
        resultMap.put ( "성공", 진정한 );
        시도 { 
            문자열 syncTime = (문자열) paramMap.get ( "syncTime을" );
            경우 (StringUtils에.    false로 )
                 돌아 된 resultMap을; 
            } 다른 사람을 {
                 // 서비스를 작성 (- 서비스) 호출 (호출) 
                org.apache.axis.client.Service 서비스 = 새로운 새로운 org.apache.axis.client.Service (); 
                전화주세요 전화 = (통화 ) Service.createCall (); // 서비스를 통해 호출 객체 생성
                 // 서비스 설정을 곳의 URL 
                call.setTargetEndpointAddress ( 새 새 의 java.net.URL (엔드 포인트)); 

                call.setOperationName ( 새 새 의 QName ( "http://tempuri.org / ","getUserList로 " ));
                 // .NET이 방법"http://tempuri.org/ "주소 네임 스페이스이 또한주의를 기울도 부여되지 않고 
                call.addParameter ( 새 새 (의 QName"http://tempuri.org/ ","syncTime " )의 org.apache.axis .encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN) 

                call.setUseSOAPAction ( true로 ) 
                call.setReturnType (org.apache.axis.encoding.XMLType.SOAP_STRING); // 반환 매개 변수 유형의 
                호출. setSOAPActionURI ( "http://tempuri.org/GetUserList"); // 이 또한주의해야한다 
                문자열 userVo = (문자열) Call.invoke ( 새로운 새로운 객체 [] {} syncTime),
                 IF (StringUtils.isBlank (userVo를) || StringUtils.equals ( "[]", UserVo)) { 
                    resultMap.put ( "성공", false로 ); 
                } 다른 { 
                    resultMap.put ( "userVo" , userVo); 
                } 
            } 
        } 캐치 (예외 E) { 
            resultMap.put ( "성공", false로 ); 
            logger.error ( "정보에 비정상적인 접근" , E); 
        } 
        logger.debug는 ( "... 인터페이스 끝을 가져 오기" );
         반환 된 resultMap을; 
    } 

}

기준 : https://www.cnblogs.com/herizai/p/6957611.html

com.karros.test 패키지;
수입 java.util.HashMap에; 수입 java.util.Map;
수입하는 javax.xml.namespace.QName;
수입 org.apache.axis.client.Call, 수입 org.apache.commons.lang.StringUtils, 수입 org.apache.commons.logging.Log, 수입 org.apache.commons.logging.LogFactory;
공용 클래스 TestWsdl {
공공 정적 무효 메인 (문자열 []에 args) 발생 예외 {지도 <문자열 오브젝트> paramMap = 새의 HashMap <문자열 오브젝트> (); 최종 로그인 로거 = LogFactory.getLog (모두 getClass ()) 보호 paramMap .put ( "syncTime", "20200401");지도 <문자열, 개체> 된 resultMap = 새의 HashMap <문자열, 개체> (); TestWsdl AA = 새로운 TestWsdl ();적인 resultMap = aa.getWebService (paramMap); System.out에 .println (resultMap는)} 
// @ 값 ( "$ {weixin_sign_url}") // 개인 문자열 엔드 포인트; // # 기호 마이크로 채널 인터페이스 주소 인터넷 클라우드 // weixin_sign_url = HTTP : //10.182.5.173 : 1111 / 서비스 / WXQDService.asmxpublic 문자열 엔드 포인트 = " http://10.182.5.96:102/Service/ORGService.asmx";public지도 <문자열, 개체> getWebService는 (지도 <문자열, 개체> paramMap은) ( "... 인터페이스 시작을 얻을") 예외 {logger.debug를 던졌습니다 ;지도 <문자열, 개체> 된 resultMap = 새의 HashMap <문자열, 개체> (); resultMap.put ( "성공", TRUE); 시도 {문자열 syncTime = (문자열) paramMap.get ( "syncTime"); (StringUtils에있는 경우 .isBlank (syncTime)) {//20200401resultMap.put("success ")는 false 반환 된 resultMap;} 다른 {// 서비스를 작성 (서비스) 호출 (콜) org.apache.axis.client.Service 서비스 = 새로운 org.apache.axis.client.Service (); 전화 통화 = (전화) service.createCall (); //있는 서비스 // 세트 URLcall 서비스를 통해 호출 개체를 만듭니다.setTargetEndpointAddress (새의 java.net.URL (엔드 포인트));
call.setOperationName (새의 QName ( "http://tempuri.org/" , "getUserList로")); // .NET 저기 방법 "http://tempuri.org/"이 또한주의를 기울 주소로 네임 스페이스, 또한 주어지는 call.addParameter없이 (신규 ( "http://tempuri.org/"의 QName "syncTime") org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN) ;
(true로) call.setUseSOAPAction, call.setReturnType (org.apache.axis.encoding.XMLType.SOAP_STRING); // 반환 매개 변수 유형 call.setSOAPActionURI ( "http://tempuri.org/GetUserList"); // 참고 또한 문자열 userVo = (문자열) call.invoke ( 새로운 객체 [] {syncTime}); 경우 (StringUtils.isBlank (userVo) || StringUtils.equals ( "[]"userVo)) {resultMap.put ( "성공", 거짓);} 다른 {resultMap.put ( "userVo", userVo);}}} 캐치 (예외 전자) {resultMap.put ( "성공", false)를, logger.error ( " 정보 이상을 가져 오기" 전자);} logger.debug ( "... 인터페이스 끝을 얻으십시오"); 반환 된 resultMap을;}
}

 

추천

출처www.cnblogs.com/tldxh/p/12612047.html