2017-11-23 6 views
-1

タスクは、PHPでRESTクライアントを構築し、XMLを送信して受信します(weired、私は知っています)。PHPクライアントのアンマーシャリング解除の例外

REST-apiに何かを送ると、UnmarshallingExceptionが発生します。

これはどういう意味ですか?ここで

は、私のコードの一部です:

public function createOrganisationUnit($kvcObject){ 
    try{ 
     $restclient = new RestClient(Environment::getConfiguration()['rest_url']); 
     $response = $restclient->execute(
      RestClient::REQUEST_TYPE_POST, 
      '/rest/organisations/'.self::getOurID().'/organisationunits', 
      $kvcObject->xmlOrganisationUnit() 
     ); 
     echo 'createOrg<br>';var_dump($response);echo'<br>'; 
     if ($response['http_code'] == 201){   //created, return new ID 
      return substr($response['body'], strrpos($response['body'], "/")); 
     }elseif($response['http_code'] == 400){  //allready there, return found ID 
      return self::getOrganisationUnitsID($kvcObject->getOrganisationUnit()->getBsnr()); 
     }else{          // error, return false 
      return false; 
     } 
    }catch (Exception $e){ 
     print_r($e->getMessage()) . PHP_EOL; 
    } 
} 

$ kvcConnect-> xmlOrganisationUnit()文字列としてXMLを提供します。 self :: getOurID()は正常に動作しています。提案されたIDをIntegerとして渡します。

私はSymfonyやその他のフレームワークを使用していません。

敬具 ヨハネス

+0

このエラーを生成するコードはどこですか? – Morgoth

+0

@Morgoth:コードをいくつか追加しました。 –

答えて

0
try { 
    FileInputStream inputStream = new FileInputStream(new File("your file")); 
    AddRequest req = JAXB.unmarshal(inputStream, AddRequest.class); 
} catch (FileNotFoundException e) { 
    e.printStackTrace(); 
} 
+0

このコードは質問に答えるかもしれませんが、質問に答える理由を説明するコンテキストを追加できますか? – purplepsycho

+0

私はそれがどんなPHPリーダーにとってもとても明白だと思います! – Adam

0

私は私のRestClass内部スプリント( "%sの"、$のpost_data)が問題だったこと、が分かりました。

関連する問題