Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 联邦快递网络集成错误代码9004_Php_Soap_Fedex - Fatal编程技术网

Php 联邦快递网络集成错误代码9004

Php 联邦快递网络集成错误代码9004,php,soap,fedex,Php,Soap,Fedex,我正试图将联邦快递的追踪服务集成到我的网络应用程序中,但我一直收到这个错误 严重性:故障来源:prxy代码:9004消息: 远程EJB方法:未调用跟踪。无法创建远程bean。 异常:javax.naming.NamingException:找不到主 representative[根异常为javax.naming.NamingException:无法 寻找主要代表]。原因:javax.naming.NamingException: 找不到主要代表[根异常为 javax.naming.NamingE

我正试图将联邦快递的追踪服务集成到我的网络应用程序中,但我一直收到这个错误

严重性:故障
来源:prxy
代码:9004
消息: 远程EJB方法:未调用跟踪。无法创建远程bean。 异常:javax.naming.NamingException:找不到主 representative[根异常为javax.naming.NamingException:无法 寻找主要代表]。原因:javax.naming.NamingException: 找不到主要代表[根异常为 javax.naming.NamingException:找不到主要代表]

请求

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-      ENV="http://schemas.xmlsoap.org/soap/envelope/"  xmlns:ns1="http://fedex.com/ws/track/v10"><SOAP-ENV:Body><ns1:TrackRequest> <ns1:WebAuthenticationDetail><ns1:ParentCredential><ns1:Key>#########</ns1:Key><ns1:Password>###########</ns1:Password></ns1:ParentCredential><ns1:UserCredential><ns1:Key>#############</ns1:Key><ns1:Password>###########</ns1:Password></ns1:UserCredential></ns1:WebAuthenticationDetail><ns1:ClientDetail><ns1:AccountNumber>#########</ns1:AccountNumber><ns1:MeterNumber>###########</ns1:MeterNumber></ns1:ClientDetail><ns1:TransactionDetail><ns1:CustomerTransactionId>*** Track  using PHP ***</ns1:CustomerTransactionId></ns1:TransactionDetail><ns1:Version><ns1:ServiceId>trck</ns1:ServiceId><ns1:Major>10</ns1:Major><ns1:Intermediate>0</ns1:Intermediate><ns1:Minor>0</ns1:Minor></ns1:Version><ns1:SelectionDetails><ns1:PackageIdentifier> <ns1:Type>TRACKING_NUMBER_OR_DOORTAG</ns1:Type><ns1:Value>449044304137821</ns1:Value></ns1:PackageIdentifier><ns1:ShipmentAccountNumber>########</ns1:ShipmentAccountNumber> </ns1:SelectionDetails></ns1:TrackRequest></SOAP-ENV:Body></SOAP-ENV:Envelope>
我使用的是Laravel框架,联邦快递集成使用了三个文件,即TrackService_v10.wsdl,其中包含XML数据,TrackWebServiceClient.php5,其中包含发送请求的php函数,以及Fedex-common.php5,其中还包含包含post输入的php函数


我试着在互联网上到处找,在联邦快递上找开发者和资源中心,但我真的不能让它工作。我也不明白这个SOAP请求。另外,联邦快递说他们没有程序员来帮我。有人能帮忙吗?提前谢谢。

我一直有同样的问题。在我的头撞在桌子上几个小时后,我偶然发现了这篇文章。它属于WSDL文件的v5(当前为10),但基本上您需要从第2296行的URL中删除“beta”

<service name="TrackService">
    <port name="TrackServicePort" binding="ns:TrackServiceSoapBinding">
      <s1:address location="https://wsbeta.fedex.com:443/web-services/track"/>
    </port>
</service>

应该是

<service name="TrackService">
    <port name="TrackServicePort" binding="ns:TrackServiceSoapBinding">
      <s1:address location="https://ws.fedex.com:443/web-services/track"/>
    </port>
</service>


神奇的是,一切都会开始工作。希望这对你和我都有帮助

删除
beta
似乎不再是好的解决方案

我一直在联系联邦快递的支持人员,当您设置无效的“家长凭据”时,问题就出现了


在我的例子中,我只需要使用“UserCredential”,如果在联邦快递提供的(Java)示例中为空,则“ParentCredentials”设置为“XXX”。

是!!Ît工程:)。。谢谢。我已经试了36个小时来让这东西工作。最后谢谢注意,就目前而言,保持wsbeta应该是可行的。现在,当我删除它时,我遇到了一个问题。
<service name="TrackService">
    <port name="TrackServicePort" binding="ns:TrackServiceSoapBinding">
      <s1:address location="https://ws.fedex.com:443/web-services/track"/>
    </port>
</service>