Je suis nouveau dans gwt et nouveau à l'utilisation de Firebug. Ma version de gwt est 2.0.0. en utilisant éclipse et WAMP. mon IIS est arrêté pour exécuter WAMP apache. J'exécuter mon programme sur Firefox
J'ai résultat JSON valide à partir tesdb3.php situé dans « http://localhost/phpmyadmin/tesdb3/datauser.php »json parser vide resultat
{"item": [{"kode":"002","nama":"bambang gentolet"},
{"kode":"012","nama":"Algiz"}]}
-je ajouter le code XML avec
<inherits name='com.google.gwt.json.JSON'/>
<inherits name="com.google.gwt.http.HTTP" />
alors je tente de le montrer dans le GWT avec ce code.
public class Tesdb3 implements EntryPoint {
String url= "http://localhost/phpmyadmin/tesdb3/datauser.php";
public void LoadData() throws RequestException{
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url));
builder.sendRequest(null, new RequestCallback(){
@Override
public void onError(Request request, Throwable exception) {
Window.alert("error " + exception);
}
public void onResponseReceived(Request request,
Response response) {
if (200 == response.getStatusCode()) {
Window.alert("ok -" + response.getText() + "-" + response.getStatusCode());
} else {
Window.alert("error2 -" + response.getText()+ response.getStatusText() + "-" + response.getStatusCode());
}
}
});
}
public void onModuleLoad() {
try {
LoadData();
} catch (RequestException e) {
e.printStackTrace();
}
}
}
Je l'exécute en mode développement. mode non hébergé.
Mon code n'a montré aucune erreur. Mais le résultat dans l'alerte de fenêtre est "error2 --OK-0".
result Net from firebug is 7 request:
get Tesdb3.html?gwt.codeserv = 200ok
get Tesdb3.css = 200ok
get tesdb3.nocache.js = 200ok
get hosted.html?tesdb3 = aborted
get standard.css = 304 not modified
get hosted.html?tesdb3 = 403 not modified
get datauser.php = 200ok
Ma question est:
Pourquoi le code d'état de réponse est 0, et le texte d'état de réponse est 'OK'? il n'y avait pas d'erreur dans json ou le code Java.
Pourquoi response.getText
est vide? Pourquoi je ne peux pas obtenir de résultat JSON même un seul personnage?
Aidez-moi s'il vous plaît. déjà 2 mois j'essaye de résoudre ceci avec beaucoup de type de source et je ne peux pas obtenir un résultat simple.
Ceci est mon datauser.php
header('Content-type: application/json; charset=UTF-8');
header('Cache-Control: no-cache');
header('Pragma: no-cache');
$link = mysql_connect("localhost", "root", "")
or die("Could not connect : " . mysql_error());
mysql_select_db("tesku1") or die("Could not select database" . mysql_error());
$query = "select * from tabel1";
$result = mysql_query($query);
$jumlah_data = mysql_num_rows($result);
echo '[';
for ($i=0; $i<=count($result); $i++){
$row = mysql_fetch_array($result);
echo '{';
echo "\"kode\":\"$row[kode]\",";
echo "\"nama\":\"$row[nama]\"";
if ($i==count($result)){
echo '}';
}else
echo '},';
}
echo ']';
mysql_free_result($result);
Pouvez-vous exécuter la requête via un proxy ou utiliser firebug pour nous dire exactement quelle est la réponse? – tgdavies
Définissez-vous les en-têtes appropriés pour votre sortie JSON? 'header ('Content-type: application/json; jeu de caractères = UTF-8');' Et qu'en est-il des autres types de statuts? Par exemple, est-ce que les 404 ou les 500 «passent» ou entraînent également le code d'état 0? –
@tdavies: Il a déjà publié les résultats de l'onglet Net depuis Firebug. –