<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Truing to get content node path in contentRichList in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55685#M33508</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;That worked perfectly…&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Nov 2006 17:27:07 GMT</pubDate>
    <dc:creator>tcordova</dc:creator>
    <dc:date>2006-11-15T17:27:07Z</dc:date>
    <item>
      <title>Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55678#M33501</link>
      <description>I was reading through the wiki on URL addressability and found the part about using the template servlet to display content with a template… Problem here is that in order to do this I need to get the path of the content node so I can construct the proper URL.I've tried changing browse.jsp as follows</description>
      <pubDate>Thu, 09 Nov 2006 14:03:41 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55678#M33501</guid>
      <dc:creator>tcordova</dc:creator>
      <dc:date>2006-11-09T14:03:41Z</dc:date>
    </item>
    <item>
      <title>Re: Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55679#M33502</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I was reading through the wiki on URL addressability and found the part about using the template servlet to display content with a template… &lt;BR /&gt;&lt;BR /&gt;Problem here is that in order to do this I need to get the path of the content node so I can construct the proper URL.&lt;BR /&gt;&lt;BR /&gt;I've tried changing browse.jsp as follows:&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;%– Primary column for details view mode –%&amp;gt;&lt;BR /&gt;&amp;lt;a:column id="col10" primary="true" width="200" style="padding:2px;text-align:left" rendered="#{BrowseBean.browseViewMode == 'details'}"&amp;gt;&lt;BR /&gt;&amp;lt;f:facet name="header"&amp;gt;&lt;BR /&gt;&amp;lt;a:sortLink id="col10-sort" label="#{msg.title}" value="title" mode="case-insensitive" styleClass="header"/&amp;gt;&lt;BR /&gt;&amp;lt;/f:facet&amp;gt;&lt;BR /&gt;&amp;lt;f:facet name="small-icon"&amp;gt;&lt;BR /&gt;&amp;lt;a:actionLink id="col10-act1" value="#{r.title}" href="/alfresco/template?templatePath=/Company%20Home/Data%20Dictionary/Presentation%20Templates/inline_doc.ftl&amp;amp;contextPath=#{r.path}" target="new" image="#{r.fileType16}" showLink="false" styleClass="inlineAction" /&amp;gt;&lt;BR /&gt;&amp;lt;/f:facet&amp;gt;&lt;BR /&gt;&amp;lt;a:actionLink id="col10-act2" value="#{r.title}" href="#{r.url}" target="new" /&amp;gt;&lt;BR /&gt;&amp;lt;r:lockIcon id="col10-lock" value="#{r.nodeRef}" align="absmiddle" /&amp;gt;&lt;BR /&gt;&amp;lt;/a:column&amp;gt;&lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;but the reference to #{r.path} in the href of actionLink col10-act1 always returns an empty string.&lt;BR /&gt;&lt;BR /&gt;Help!&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;I could be all wet about this but I dont think you have access to r.path here.&amp;nbsp; For the sake of argument put r.nonFound&amp;nbsp; You wont get a bind error, just an empty string.&amp;nbsp; r.path would be nice to have here.&amp;nbsp; I don't spend much time focusing on the Alfresco UI so I may be wrong but I think the properties that you have access to are not the ones in the java class but the properties given by the M2 Model so for example Modifier etc.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I could be wrong about that.&amp;nbsp; If I am not, I am not sure how you get around the issue of properties from differnt names spaces that have the same name (which makes me think I am wrong)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;TemplateContentServlet does not require both templatePath and contextPath.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Assuming I am right about r.path being unavailable and I wanted to keep my support contact with alfresco valid I would would do take the following steps.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;o Places a jira tag requesting the path property be made available.&amp;nbsp; It would be nice to be able to get the current folder path from browseBean and be able to get the path information for each node.&amp;nbsp; You are right that a org.alfresco.web.bean.repository.Node has a path property&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;o extend&amp;nbsp; TemplateContentServlet to work with a node id's as well as named locations (this would be nice anyway with versioning etc) Compile it into its own jar and make a simple web xml edit to "plug it in"&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;That way you could map your own servlet to alfresco which is very easy to proove out in the case of other issues and the changes to browse.jsp become trivial.&amp;nbsp; The fact that you changed browse.jsp is going to going to make the code "unsupportable" but you could make a case for the fact that the change was very simple and I think that would fly.&amp;nbsp; You didnt in that case introduce any logic.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is likely not the only thing you want to change so I dont know if this approach is right for you.&amp;nbsp; If you are going to make a ton of edits to underlying classes then you are going to have trouble getting support.&amp;nbsp; The best bet in that case is to donate all of your edits back to alfresco and try to get them supported.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I would like to see the ability to configure custom items on the context menu.&amp;nbsp; The thing you are doing here is a perfect example.&amp;nbsp; I imagine it would be possible in the future to use scripting to add something like this.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;path is likely not in the M2 property because it is a computed value and is a projection of parent child associations.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hope I am right about this… maybe someone at alfresco can verify or point out just how far off I am (If I am wrong … I am likely very wrong.)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I was going to try and verify this for myself but I have to run to a doctor appointment. Good luck.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Nov 2006 21:37:22 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55679#M33502</guid>
      <dc:creator>rdanner</dc:creator>
      <dc:date>2006-11-10T21:37:22Z</dc:date>
    </item>
    <item>
      <title>Re: Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55680#M33503</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I could be all wet about this but I dont think you have access to r.path here.&amp;nbsp; For the sake of argument put r.nonFound&amp;nbsp; You wont get a bind error, just an empty string.&amp;nbsp; r.path would be nice to have here.&amp;nbsp; I don't spend much time focusing on the Alfresco UI so I may be wrong but I think the properties that you have access to are not the ones in the java class but the properties given by the M2 Model so for example Modifier etc.&lt;BR /&gt;&lt;BR /&gt;I could be wrong about that.&amp;nbsp; If I am not, I am not sure how you get around the issue of properties from differnt names spaces that have the same name (which makes me think I am wrong)&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Yes you are wrong. There is a lot more going on in the web-client than simple access to DD properties for a node. We have the concept of a client Node wrapper which as well as providing wrapped and cached access to properties, associations, aspects etc. also provides a mechanism called Property Resolver which allows the concept of pseudo calculated properties which can be used to generate richer UI pages. The .path property is available and provided by a Property Resolver which dynamically calls the nodeservice.getPath(noderef) method to return the Path object. It is the actual Path object instance though not a simple String object which is returned, so this is why the r.path does not appear to output anything useful for the JSF binding above.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There is an additional pseudo property called .displayPath which dynamically generates the cm:name based path to an object as a String - this may be what you require?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Kevin&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Nov 2006 11:01:33 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55680#M33503</guid>
      <dc:creator>kevinr</dc:creator>
      <dc:date>2006-11-11T11:01:33Z</dc:date>
    </item>
    <item>
      <title>Re: Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55681#M33504</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I could be all wet about this but I dont think you have access to r.path here.&amp;nbsp; For the sake of argument put r.nonFound&amp;nbsp; You wont get a bind error, just an empty string.&amp;nbsp; r.path would be nice to have here.&amp;nbsp; I don't spend much time focusing on the Alfresco UI so I may be wrong but I think the properties that you have access to are not the ones in the java class but the properties given by the M2 Model so for example Modifier etc.&lt;BR /&gt;&lt;BR /&gt;I could be wrong about that.&amp;nbsp; If I am not, I am not sure how you get around the issue of properties from differnt names spaces that have the same name (which makes me think I am wrong)&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;Yes you are wrong. There is a lot more going on in the web-client than simple access to DD properties for a node. We have the concept of a client Node wrapper which as well as providing wrapped and cached access to properties, associations, aspects etc. also provides a mechanism called Property Resolver which allows the concept of pseudo calculated properties which can be used to generate richer UI pages. The .path property is available and provided by a Property Resolver which dynamically calls the nodeservice.getPath(noderef) method to return the Path object. It is the actual Path object instance though not a simple String object which is returned, so this is why the r.path does not appear to output anything useful for the JSF binding above.&lt;BR /&gt;&lt;BR /&gt;There is an additional pseudo property called .displayPath which dynamically generates the cm:name based path to an object as a String - this may be what you require?&lt;BR /&gt;&lt;BR /&gt;Thanks,&lt;BR /&gt;&lt;BR /&gt;Kevin&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;Sweet.&amp;nbsp; I figured that something was not right about my analysis I don't spend much time looking at the web clients architecture.&amp;nbsp; I saw that browseBean.nodes returns a list of nodes and I put a break on Node.getPath which never got called so I knew there was indirection involved.&amp;nbsp; I tested some DD Properties that were not in the Node class and found they worked.&amp;nbsp; Right about the indirection, wrong about the composition extent of it. (I had a hunch I something was wrong..)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I just tried to use #{r.displayPath} on browse.jsp and got an empty string.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Nov 2006 16:52:37 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55681#M33504</guid>
      <dc:creator>rdanner</dc:creator>
      <dc:date>2006-11-11T16:52:37Z</dc:date>
    </item>
    <item>
      <title>Re: Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55682#M33505</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I just tried to use #{r.displayPath} on browse.jsp and got an empty string.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt;That particular dynamic property resolver is only available when the browse.jsp is used in Search results mode. It wouldn't be hard to change this if it proves useful to have it available all the time - as there is no performance impact to dynamic property resolvers unless they are used on the page.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Kevin&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Nov 2006 10:45:05 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55682#M33505</guid>
      <dc:creator>kevinr</dc:creator>
      <dc:date>2006-11-13T10:45:05Z</dc:date>
    </item>
    <item>
      <title>Re: Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55683#M33506</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Sure… my whole point here is to use a template to display html content when a consumer clicks the content's main link.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Is there any other way to do this?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Tom&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Nov 2006 13:30:33 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55683#M33506</guid>
      <dc:creator>tcordova</dc:creator>
      <dc:date>2006-11-13T13:30:33Z</dc:date>
    </item>
    <item>
      <title>Re: Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55684#M33507</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Yes absolutely &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://connect.hyland.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The template servlet accepts both 'path' URL arguments or the noderef of the template/context objects as URL elements:&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://wiki.alfresco.com/wiki/URL_Addressability#TemplateContentServlet" rel="nofollow noopener noreferrer"&gt;http://wiki.alfresco.com/wiki/URL_Addressability#TemplateContentServlet&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So for your example it would be something like this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;a:actionLink id="col10-act1" value="#{r.title}" href="/alfresco/template/workspace/SpacesStore/#{r.id}?templatePath=/Company%20Home/Data%20Dictionary/Presentation%20Templates/inline_doc.ftl" target="new" image="#{r.fileType16}" showLink="false" styleClass="inlineAction" /&amp;gt; &lt;BR /&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;Hope this helps,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Kevin&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Nov 2006 10:58:01 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55684#M33507</guid>
      <dc:creator>kevinr</dc:creator>
      <dc:date>2006-11-15T10:58:01Z</dc:date>
    </item>
    <item>
      <title>Re: Truing to get content node path in contentRichList</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55685#M33508</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;That worked perfectly…&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Nov 2006 17:27:07 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/truing-to-get-content-node-path-in-contentrichlist/m-p/55685#M33508</guid>
      <dc:creator>tcordova</dc:creator>
      <dc:date>2006-11-15T17:27:07Z</dc:date>
    </item>
  </channel>
</rss>

