Wpisy oznaczone: jcr
Java »
Ostatnio z potrzeb zawodowych zająłem się JCR – konkretnie Jackrabbitem. Próbując załadować obiekt z repozytorium otrzymywałem błąd: InvalidQueryException: Parse error: data is not a RelationQueryNode. Błąd spowodowany był tym, że nie kodowałem XPath’a którego używałem do załadowania obiektów.
Błąd był spowodowany niewłaściwym kodowaniem znaków, ID obiektu, który chciałem załadować składało się z liczb, przesłane bez zakodowania ISO-9075 powodowało błąd.
Wystarczyło dodać kodowanie za pomocą klasy org.apache.jackrabbit.util.ISO9075 (znajduje się ona w bibliotece jackrabbit-jcr-commons-1.5.5.jar).
Przykładowe rozwiązanie:
[java]return (Person) jcrMappingTemplate.getObject(“/person/” + ISO9075.encode(id));[/java]
by wszystko wróciło do normy.

