Bonjour,
J'ai un probl=E8me pour envoyer un tableau de chaines depuis un client
php vers un serveur java en appelant un webservice.
Le serveur ne reconnait pas le type tableau de chaine de php.
Le code :
----- Java server method : -----
public String[] crypte(String[] message, String name) throws
RemoteException {
String[] messageFinal =3D new String[message.length];
[...]
return messageend;
}catch(Exception e){
throw new RemoteException(e.getMessage(), e);
}
}
------------------------
Ca marche bien avec une chaine simple, par exemple :
$message=3D"jkjhkj"; avec sur le serveur :
public String[] crypte(String message, String name){...}
L'erreur :
"JAXRPCTIE01: caught exception while handling request: unexpected
element type:
expected=3D{http://mywebservice/...}StringArray,actual=3D{http://mywebservi=
ce/...}Array"
Ca marche bien aussi dans l'autre sens : le serveur envoie un tableau
de string et je peux voir le contenu en php : print_r($messageCrypte).
Comment remedier =E0 ce probl=E8me?
Merci de votre aide
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
damien guerin
Ta fonction devrait être :
public String[] crypte(Object[] message, String name)
Dans ta fonction, tu castes les éléments du tableau avec String. En fait si mes souvenirs sont bons, avec la fonction array de php tu peux mettre à la fois des entiers que des chaines de caractères du coup le webservice doit surement envoyé un tableau d'Object afin de couvrir les possibilités de array php.
Voili
Ta fonction devrait être :
public String[] crypte(Object[] message, String name)
Dans ta fonction, tu castes les éléments du tableau avec String. En
fait si mes souvenirs sont bons, avec la fonction array de php tu peux
mettre à la fois des entiers que des chaines de caractères du coup le
webservice doit surement envoyé un tableau d'Object afin de couvrir
les possibilités de array php.
public String[] crypte(Object[] message, String name)
Dans ta fonction, tu castes les éléments du tableau avec String. En fait si mes souvenirs sont bons, avec la fonction array de php tu peux mettre à la fois des entiers que des chaines de caractères du coup le webservice doit surement envoyé un tableau d'Object afin de couvrir les possibilités de array php.
Voili
Benoît
Merci pour ta réponse,
J'ai bien sûr essayé de mettre Object mais l'erreur suivant survient lors de la compilation : "error: invalid type for JAX-RPC structure: java.lang.Object"
...?
Merci pour ta réponse,
J'ai bien sûr essayé de mettre Object mais l'erreur suivant survient
lors de la compilation :
"error: invalid type for JAX-RPC structure: java.lang.Object"
J'ai bien sûr essayé de mettre Object mais l'erreur suivant survient lors de la compilation : "error: invalid type for JAX-RPC structure: java.lang.Object"
...?
Kupee
Benoît wrote:
Bonjour, J'ai un problème pour envoyer un tableau de chaines depuis un client php vers un serveur java en appelant un webservice. Le serveur ne reconnait pas le type tableau de chaine de php.
Le code : ----- Java server method : -----
public String[] crypte(String[] message, String name) throws RemoteException { String[] messageFinal = new String[message.length];
[...]
return messageend;
}catch(Exception e){ throw new RemoteException(e.getMessage(), e); } }
------------------------ Ca marche bien avec une chaine simple, par exemple : $message="jkjhkj"; avec sur le serveur : public String[] crypte(String message, String name){...}
L'erreur :
"JAXRPCTIE01: caught exception while handling request: unexpected element type: expected={http://mywebservice/...}StringArray,actual={http://mywebservice/...}Array"
Ca marche bien aussi dans l'autre sens : le serveur envoie un tableau de string et je peux voir le contenu en php : print_r($messageCrypte).
Comment remedier à ce problème? Merci de votre aide
Tu pourrais tenter de lire le paquet soap qui passe voir si c'est pas par hazard une liste ou une map qui passe ...
Benoît wrote:
Bonjour,
J'ai un problème pour envoyer un tableau de chaines depuis un client
php vers un serveur java en appelant un webservice.
Le serveur ne reconnait pas le type tableau de chaine de php.
Le code :
----- Java server method : -----
public String[] crypte(String[] message, String name) throws
RemoteException {
String[] messageFinal = new String[message.length];
[...]
return messageend;
}catch(Exception e){
throw new RemoteException(e.getMessage(), e);
}
}
------------------------
Ca marche bien avec une chaine simple, par exemple :
$message="jkjhkj"; avec sur le serveur :
public String[] crypte(String message, String name){...}
L'erreur :
"JAXRPCTIE01: caught exception while handling request: unexpected
element type:
expected={http://mywebservice/...}StringArray,actual={http://mywebservice/...}Array"
Ca marche bien aussi dans l'autre sens : le serveur envoie un tableau
de string et je peux voir le contenu en php : print_r($messageCrypte).
Comment remedier à ce problème?
Merci de votre aide
Tu pourrais tenter de lire le paquet soap qui passe voir si c'est pas
par hazard une liste ou une map qui passe ...
Bonjour, J'ai un problème pour envoyer un tableau de chaines depuis un client php vers un serveur java en appelant un webservice. Le serveur ne reconnait pas le type tableau de chaine de php.
Le code : ----- Java server method : -----
public String[] crypte(String[] message, String name) throws RemoteException { String[] messageFinal = new String[message.length];
[...]
return messageend;
}catch(Exception e){ throw new RemoteException(e.getMessage(), e); } }
------------------------ Ca marche bien avec une chaine simple, par exemple : $message="jkjhkj"; avec sur le serveur : public String[] crypte(String message, String name){...}
L'erreur :
"JAXRPCTIE01: caught exception while handling request: unexpected element type: expected={http://mywebservice/...}StringArray,actual={http://mywebservice/...}Array"
Ca marche bien aussi dans l'autre sens : le serveur envoie un tableau de string et je peux voir le contenu en php : print_r($messageCrypte).
Comment remedier à ce problème? Merci de votre aide
Tu pourrais tenter de lire le paquet soap qui passe voir si c'est pas par hazard une liste ou une map qui passe ...