求解决
<?php
@header('Content-Type: text/html; charset=utf-8');  
$soap=new SoapClient('http://192.168.10.246:8080/UUWYTManage/services/userOperator?wsdl');
$params=array(
'name'=>'miikeytest',  
'password'=>'123456',  
'email'=>'[email protected]',  
'registeredTime'=>1287122617
);   
$soap->__soapCall("userRegister",$params);  
?>报错:
Fatal error: Uncaught SoapFault exception: [soap:Server] null while invoking public abstract int cn.com.focu.wyt.cxf.service.IUserOperator.userRegister(java.lang.String,java.lang.String,java.lang.String,long) with params [null, null, null, null]. in D:\wwwroot\lizi\webservice.php:10 Stack trace: #0 D:\wwwroot\lizi\webservice.php(10): SoapClient->__soapCall('userRegister', Array) #1 {main} thrown in D:\wwwroot\lizi\webservice.php on line 10

解决方案 »

  1.   

    貌似不认参数服务端能控制吗?查一下报错信息不能的话,var_dump($soap->__getTypes());看一下userRegister的相关信息
      

  2.   

    userRegister的相关信息:
    array(30) { [0]=> string(53) "struct passwordChange { string arg0; string arg1; }" [1]=> string(46) "struct passwordChangeResponse { int return; }" [2]=> string(42) "struct getIMStatusbyName { string arg0; }" [3]=> string(49) "struct getIMStatusbyNameResponse { int return; }" [4]=> string(77) "struct userRegister { string arg0; string arg1; string arg2; long arg3; }" [5]=> string(44) "struct userRegisterResponse { int return; }" [6]=> string(35) "struct userUpdate { string arg0; }" [7]=> string(42) "struct userUpdateResponse { int return; }" [8]=> string(35) "struct onlineTime { string arg0; }" [9]=> string(43) "struct onlineTimeResponse { long return; }" [10]=> string(67) "struct changePassword { string arg0; string arg1; string arg2; }" [11]=> string(46) "struct changePasswordResponse { int return; }" [12]=> string(51) "struct unifiedLogin { string arg0; string arg1; }" [13]=> string(44) "struct unifiedLoginResponse { int return; }" [14]=> string(22) "struct getIMStatus { }" [15]=> string(43) "struct getIMStatusResponse { int return; }" [16]=> string(49) "struct userEnable { string arg0; string arg1; }" [17]=> string(42) "struct userEnableResponse { int return; }" [18]=> string(134) "struct addCorpUser { string arg0; int arg1; int arg2; int arg3; string arg4; long arg5; string arg6; string arg7; int arg8; }" [19]=> string(43) "struct addCorpUserResponse { int return; }" [20]=> string(32) "struct userAdd { string arg0; }" [21]=> string(39) "struct userAddResponse { int return; }" [22]=> string(30) "struct login { string arg0; }" [23]=> string(40) "struct loginResponse { string return; }" [24]=> string(51) "struct getUsersInfo { string arg0; string arg1; }" [25]=> string(47) "struct getUsersInfoResponse { string return; }" [26]=> string(35) "struct userDelete { string arg0; }" [27]=> string(42) "struct userDeleteResponse { int return; }" [28]=> string(137) "struct modifyCorpUser { string arg0; int arg1; int arg2; int arg3; string arg4; long arg5; string arg6; string arg7; int arg8; }" [29]=> string(46) "struct modifyCorpUserResponse { int return; }" } 
      

  3.   

    这样调用试试,,,,//…………
    //…………
    var_dump($soap->userRegister('miikeytest', '123456', '[email protected]', 1287122617));
      

  4.   


    Fatal error: Uncaught SoapFault exception: [soap:Server] null while invoking public abstract int cn.com.focu.wyt.cxf.service.IUserOperator.userRegister(java.lang.String,java.lang.String,java.lang.String,long) with params [null, null, null, null]. in D:\wwwroot\lizi\webservice.php:10 Stack trace: #0 [internal function]: SoapClient->__call('userRegister', Array) #1 D:\wwwroot\lizi\webservice.php(10): SoapClient->userRegister('miikeytest', '123456', 'miikretest@163....', 1287122617) #2 {main} thrown in D:\wwwroot\lizi\webservice.php on line 10
      

  5.   

    那你,把你的调用方式数组下标  arg0  arg1  arg2 arg3 代替,,,再试下呗
      

  6.   

    'name'=>'miikeytest','arg0'=>'miikeytest',  其他类似,试试看?有点奇怪,呵呵
      

  7.   

    替换后报错信息:
    Fatal error: Uncaught SoapFault exception: [soap:Server] null while invoking public abstract int cn.com.focu.wyt.cxf.service.IUserOperator.userRegister(java.lang.String,java.lang.String,java.lang.String,long) with params [null, null, null, null]. in D:\wwwroot\lizi\webservice.php:10 Stack trace: #0 D:\wwwroot\lizi\webservice.php(10): SoapClient->__soapCall('userRegister', Array) #1 {main} thrown in D:\wwwroot\lizi\webservice.php on line 10