Ben PHP yapmaya çalışıyorum bir sabun çağrısı ile ilgili bir sorun yaşıyorum.
Önce bazı arka plan bilgileri: çağrı büyük bir CRM sisteminde bir kişi arama yapan bir sisteme gidiyor. Bu zaman başarılı, o bir veya id çoklu dönmelidir) adı, şehir, doğum tarihi, vb gibi bilgileri gerektirir. Sabun arayüz sisteminin standart bir parçası olduğunu, bu yüzden arama düzenini etkileyebilir olamaz.
Ben ilk çalışma olsun eğer görmek için, SoapUI sabun isteği kurarak başladı. Ben çalışıyor bu sabun isteği ile sona erdi:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:hidl="http://humaninference.com/hidl-mapped">
<soap:Header/>
<soap:Body>
<hidl:HI__DQComponents__Identify__Searching__Search>
<hidl:model>MAGMA::PERSON</hidl:model>
<hidl:execution>Match</hidl:execution>
<hidl:interfaceFields>
<hidl:item>
<hidl:Name>master_id</hidl:Name>
<hidl:Value>0</hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>Name</hidl:Name>
<hidl:Value>jansen</hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>birthdate</hidl:Name>
<hidl:Value></hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>add_id</hidl:Name>
<hidl:Value></hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>street</hidl:Name>
<hidl:Value>oudegracht</hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>dumstreet</hidl:Name>
<hidl:Value></hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>housenumber</hidl:Name>
<hidl:Value></hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>postcode</hidl:Name>
<hidl:Value></hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>city</hidl:Name>
<hidl:Value>Utrecht</hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>citydum</hidl:Name>
<hidl:Value></hidl:Value>
</hidl:item>
<hidl:item>
<hidl:Name>add_line_twee</hidl:Name>
<hidl:Value></hidl:Value>
</hidl:item>
</hidl:interfaceFields>
</hidl:HI__DQComponents__Identify__Searching__Search>
</soap:Body>
</soap:Envelope>
: Bir sonraki adım, bunun için ben bu kod yazdım, PHP aynı isteği inşa edildi
$result = $client->HI__DQComponents__Identify__Searching__Search(array(
'model' => 'MAGMA::PERSON',
'execution' => 'Search',
'interfaceFields' => array (
'item' => array ('Name' => 'master_id', 'Value' => '0' ),
'item' => array ('Name' => 'Name', 'Value' => 'jansen' ),
'item' => array ('Name' => 'birthdate', 'Value' => ' ' ),
'item' => array ('Name' => 'add_id', 'Value' => ' ' ),
'item' => array ('Name' => 'street', 'Value' => 'Oudegracht' ),
'item' => array ('Name' => 'dumstreet', 'Value' => ' ' ),
'item' => array ('Name' => 'housenumber', 'Value' => ' ' ),
'item' => array ('Name' => 'postcode', 'Value' => ' ' ),
'item' => array ('Name' => 'city', 'Value' => 'utrecht' ),
'item' => array ('Name' => 'citydum', 'Value' => ' ' ),
'item' => array ('Name' => 'add_line_twee', 'Value' => ' ' ),
)
));
echo '<PRE>';
print_r($result);
echo '</PRE>';
Ancak bu başarısız olur. "Item" eleman birkaç kez tekrarlanır beri sorun, oldukça açıktır, ve PHP bu dizinin anahtar, yalnızca Öğe add_line_twee her zaman üzerine beri, "interfaceFields" denilen dizi olacak.
Ne yazık ki bu etrafında başka bir yol nasıl bilemiyorum, bu yüzden örnekte ben SoapUI oluşturulan gibi olmak isteği alınamıyor.
Herhangi bir fikir?