Faire METTRE de la demande avec les données JSON à l'aide de HttpURLConnection ne fonctionne pas

Je suis en train de faire la demande avec les données JSON à l'aide de HttpURLConnection en Java. La façon dont je le fais, ça ne fonctionne pas. Je n'ai pas d'erreurs, donc je ne sais pas quel est le problème.

public static void main(String[] args) {

        URL url;
        try {
            url = new URL("http://fltspc.itu.dk/widget/515318fe17450f312b00153d/");
            HttpURLConnection hurl = (HttpURLConnection) url.openConnection();
            hurl.setRequestMethod("PUT");
            hurl.setDoOutput(true);
            hurl.setRequestProperty("Content-Type", "application/json");
            hurl.setRequestProperty("Accept", "application/json");

            String payload = "{'pos':{'left':45,'top':45}}";

            OutputStreamWriter osw = new OutputStreamWriter(hurl.getOutputStream());
            osw.write(payload);
            osw.flush();
            osw.close();
        } catch (MalformedURLException e) {
            //TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            //TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

Et voici le demande, je suis en train d'essayer de faire:

Faire METTRE de la demande avec les données JSON à l'aide de HttpURLConnection ne fonctionne pas

Je faisais déjà des demandes pour les ressources au sein de la même application et il a bien fonctionné. Je vous serais très reconnaissant pour tous les conseils sur comment puis-je debug qui ou comment puis-je essayer de le faire d'une autre manière. Jusqu'à présent j'ai essayé en utilisant uniquement OutputStream au lieu de OutputStreamWriter mais ça ne fonctionne pas non plus.

J'utilise car je suis à la modification de certaines données dans le widget. Plus précisément, je veux changer la position du widget sur surface. Quand je le fais manuellement (à l'aide de l'interface web), l'application utilise la METTRE comme sur la capture d'écran que j'ai joint. J'ai essayé de le changer de POSTE et il ne fonctionne pas.
À l'aide de @PUT est une bonne convention pour la mise à jour d'une ressource, elle n'est en aucune façon spécifique pour transférer un fichier. Voir la RFC - w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.6

OriginalL'auteur Booyaches | 2013-03-28