2012-07-12 2 views
2

J'utilise neo4jclient. Lorsque j'essaie de créer/mettre à jour un nœud, des caractères spéciaux comme äöü sont remplacés par . Dois-je définir un en-tête http spécifique comme type de contenu, encodage de contenu? Si oui, quel type d'en-tête et quelle est la valeur de cet en-tête?Neo4j REST Encodage

Merci.

EDIT: Voici comment la demande ressemble à:

POST http://...........:7474/db/data/batch HTTP/1.1 

Accept: application/json;stream=true 

User-Agent: RestSharp 103.1.0.0 

Content-Type: application/json 

Host: ............:7474 

Content-Length: 267 

Accept-Encoding: gzip, deflate 


[ 

    { 

"method": "POST", 
"to": "/node", 
"body": { 
    "Name": "äöü", 
    "State": "Active", 
    "Id": 0, 
    "CreateDate": "2012-07-12T18:48:45.3343526+02:00", 
    "ChangeDate": "0001-01-01T00:00:00+00:00" 
}, 
    "id": 0 
    } 
] 

Ou est-ce bogue dans l'exécution des lots? Si oui, j'aurai besoin du correctif très rapidement :)

Répondre

3

Maintenant, il fonctionne

Après avoir analysé la messages.log, nous avons découvert que le file.encoding n'a pas été utf-8.

-> DEBUG [neo4j.diagnostics]: file.encoding = Cp1252

Nous avons donc défini dans le fichier Neo4j-wrapper.conf cette propriété:

wrapper.java.additional.3 = -Dfile.encoding = UTF-8

Maintenant ça marche !!! :)

Merci à mon frère! Toujours bon de connaître un développeur Java. :)

+0

Cela m'a aidé à trouver un problème lors de l'exécution de tests unitaires pour un projet neo4j sur Mac OS, où messages.log disait 'DEBUG [neo4j.diagnostics]: file.encoding = MacRoman'. Comme cela utilisait neo4j temp embedded, plutôt que d'éditer un 'neo4j-wrapper.conf 'inexistant, le correctif était d'ajouter cette config à' maven-surefire-plugin': ' -Dfile.encoding = UTF-8 ' – Stewart

+0

Ce fil peut également être utile: https://github.com/neo4j-contrib/rabbithole/issues/25 – Stewart

0

Il y a des tests pour cela dans le code de base, donc il devrait être manipulé correctement, voir https://github.com/neo4j/community/blob/master/server/src/functionaltest/java/org/neo4j/server/rest/BatchOperationFunctionalTest.java#L322. Cependant, il peut y avoir des problèmes d'encodage dans le client?

+0

Okey. J'ai fait quelques tests avec un violoneux et j'ai eu le même problème. Ce n'est donc pas un problème neo4jclient ou un problème dans mon application client. Très étrange .. – user1401611

+0

Téléchargé aujourd'hui la nouvelle version de neo4j mais toujours le même problème (avec mon application et avec le violoneux aussi). – user1401611

+0

Pourriez-vous essayer d'extraire les requêtes JSON brutes et les publier sur la liste de diffusion des utilisateurs de Neo4j pour suivre cette liste? –

Questions connexes