chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexey Zavizionov <alexey.zavizio...@gmail.com>
Subject Re: UriTemplate for AtomPubCMIS.URITMPL_OBJECT_BY_PATH does not work for jax-rs binding
Date Wed, 24 Feb 2010 09:43:56 GMT
Hello!

I have the same issue. I did some research.

Within method GetTest.testObjectByPath
 it generates uri from template where the "/" encoded within path uri param,
that shouldn't do!
code:
IRI objectByPathRequest = objectByPathTemplate.generateUri(variables);

So the uri which is :
http://localhost:8080/xcmis/rest/cmisatom/cmis1/objectbypath/%2FCMISTCK%201266939409428%20-%20testObjectByPath%2FtestObjectByPath?filter=&includeAllowableActions=&includePolicyIds=&includeRelationships=&includeACL=&renditionFilter=
should be:
http://localhost:8080/xcmis/rest/cmisatom/cmis1/objectbypath/CMISTCK%201266939409428%20-%20testObjectByPath/testObjectByPath?filter=&includeAllowableActions=&includePolicyIds=&includeRelationships=&includeACL=&renditionFilter=

We did local chemistry source code patch within CMISClient.getEntry(IRI,
Map<String,String>) with our part, which is replaced back the "%2F" to the
"/" within the uri Path part:
    public Entry getEntry(IRI href, Map<String, String> args) throws
Exception {
        String uriHref =
href.toString().replaceAll(href.getPath(),href.getPath().replaceAll("%2F","/"));
        Request get = new GetRequest(uriHref).setArgs(args);
        Response res = executeRequest(get, 200);
was:
    public Entry getEntry(IRI href, Map<String, String> args) throws
Exception {
        Request get = new GetRequest(href.toString()).setArgs(args);
        Response res = executeRequest(get, 200);

and it works!

The stack trace is:
CMISClient.getEntry(IRI, Map<String,String>) line: 321
CMISClient.getEntry(IRI) line: 317
GetTest.testObjectByPath() line: 152


Any comments?

Regards,
Alexey.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message