Я установил datatype
возвращенное значение в файле wsdl
, чтобы быть xsd:anyType
:Почему webservice не поддерживает акцентированные буквы?
<message name="getEtapeProspResponse">
<part name="return" type="xsd:anyType"/>
</message>
PHP
функция которой webservice
вызов возвращают строку, которая построена из выбранных столбцов из таблицы MySQL. И одна из колонн имеют datatype
из text
:
function getEtapeProsp($user,$motpasse)
{
$user_code = verifyUser($user, $motpasse) ;
$resultat="";
if ($user_code != null)
{
$datejour = date("Y-m-d");
$connec = mysql_connect("192.168.1.123:3306", "root", "mysqlroot");
mysql_select_db("finance",$connec);
$query = mysql_query("SELECT * FROM etape_prospection INNER JOIN type_prospection ON etape_prospection.type_prosp_id = type_prospection.type_prosp_id WHERE prosp_id IN (SELECT prosp_id FROM transfert WHERE user_code ='".$user_code ."' AND date_transfert='".$datejour."') order by etape_prospection.prosp_id");
while($ligne = mysql_fetch_array($query))
{
$resultat .= $ligne['etape_prosp_id'].';';
$resultat .= $ligne['type_prosp_lib'].';';
$resultat .= convertDateFormatHH($ligne['etape_prosp_date']).';';
$resultat .= $ligne['etape_prosp_comment'].';'; // this is the text column
$resultat .= $ligne['prosp_id'].';';
$resultat .= "\r\n";
}
}
else
{
$resultat = "Login ou mot de passe incorrect" ;
}
return $resultat;
}
В базе данных значения из «etape_prosp_comment» имеет подчеркнутое письмо, é. Проблема в том, что когда я вызываю веб-сервис из моего приложения J2ME
, возникает исключение. Но если я не вставляю никаких подчеркнутых букв в column
, тогда веб-сервис в порядке.
Как решить эту проблему с подчеркнутыми буквами?
Я не специалист по php, но, возможно, вы можете кодировать информацию. Специальные символы могут быть проблемой все время при работе с веб-службами. – Ernesto
Какое исключение выбрано? Как выглядит XML-сообщение, полученное с вашего сервера? – DRH
Вы имеете в виду «акцентированные символы». Accentuated будет больше по строкам «жирный», «курсив» и т. Д. Вы проверили, что набор символов соответствует всему контуру http (client-> php-> database-> php-> client)? Единственное изменение набора символов в этой цепочке приведет к искажению данных. –