J'écris un script php qui s'interface avec un client SOAP (qui utilise java en interne).java.lang.String ne peut pas être converti en java.io.InputStream
L'un des appels nécessite que je passe le contenu codé Base64.
Je passe comme ceci:
(Edit 1)
$content=file_get_contents('fileX');
fileX is a binary file which has been uploaded via POST and saved successfully in /tmp.
It is ~600kb in binary form.
$args[]=array('name'=>'content', 'value'=>base64_encode($content), 'type'=>'Base64Binary');
Mais, je reçois une erreur:
java.lang.String cannot be cast to java.io.InputStream
(Edit2)
The documentation of the third party application says exactly:
Parameter Description Type
filename The name of the presentation file String
including the file extension.
content The content of the presentation file Base64Binary
encoded in Base64 scheme.
Quel est le type de 'content' de $? –
@evan - s'il vous plaît voir edit1 – siliconpi
Il semble que le code Java, pas votre PHP, est le problème. Java peut s'attendre à un flux au lieu d'une chaîne. Pourriez-vous poster le morceau de Java qui analyse ce tableau? –