<!-- 
RSS generated by JIRA (9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b) at Mon Feb 12 00:48:48 CET 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>Magnolia - Issue tracker</title>
    <link>https://jira.magnolia-cms.com</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-uk</language>    <build-info>
        <version>9.4.2</version>
        <build-number>940002</build-number>
        <build-date>19-01-2023</build-date>
    </build-info>


<item>
            <title>[MGNLDMS-138] DMS 1.2.6 generated URLs not clean</title>
                <link>https://jira.magnolia-cms.com/browse/MGNLDMS-138</link>
                <project id="10112" key="MGNLDMS">Document Management System (closed)</project>
                    <description>&lt;p&gt;Downloaded &quot;magnolia-tomcat-bundle-3.6.3-bundle-jdk14.tar.gz&quot;&lt;/p&gt;

&lt;p&gt;Performed a clean install and then re-imported previous repositories (website and dms, but NOT config).&lt;/p&gt;

&lt;p&gt;Then DMS URLs (wrapped into rendered texts) incorrectly contained double slashes (//) leading to 404 errors.&lt;/p&gt;

&lt;p&gt;Tried with a new text and a new document at the root of DMS:&lt;/p&gt;

&lt;p&gt;Test.pdf at the root of DMS -&amp;gt; URL = /dms//Test.pdf&lt;/p&gt;

&lt;p&gt;Had to replace /server/URI2RepositoryMapping/mappings/dms/class in the config repository with a subclass of info.magnolia.module.dms.DMSURI2RepositoryMapping in order to provide a temporary workaround:&lt;/p&gt;

&lt;p&gt;public class DMSURI2RepositoryMappingFix extends DMSURI2RepositoryMapping {&lt;/p&gt;

&lt;p&gt;	private String cleanHandle(String handle) {&lt;br/&gt;
		if (handle.startsWith(&quot;/&quot;) == false) &lt;/p&gt;
{
			handle = &quot;/&quot; + handle;
		}
&lt;p&gt;		handle = StringUtils.replace(handle, &quot;//&quot;, &quot;/&quot;);&lt;br/&gt;
		return handle;&lt;br/&gt;
	}&lt;/p&gt;

&lt;p&gt;	public String getHandle(String uri) &lt;/p&gt;
{
		return cleanHandle(super.getHandle(uri));
	}

&lt;p&gt;	public String getURI(UUIDLink uuidLink) &lt;/p&gt;
{
		return cleanHandle(super.getURI(uuidLink));
	}

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;Maybe another workaround would have been to remove trailing slash of /server/URI2RepositoryMapping/mappings/dms/URIPrefix but that didn&apos;t seem a clean solution to us.&lt;/p&gt;</description>
                <environment>Linux dev.ecilia.fr 2.6.15-52-server #1 SMP Wed Aug 20 13:40:34 UTC 2008 i686 GNU/Linux&lt;br/&gt;
Java(TM) 2 Runtime Environment, Standard Edition (build Blackdown-1.4.2-01)&lt;br/&gt;
Java HotSpot(TM) Client VM (build Blackdown-1.4.2-01, mixed mode)</environment>
        <key id="15352">MGNLDMS-138</key>
            <summary>DMS 1.2.6 generated URLs not clean</summary>
                <type id="1" iconUrl="https://jira.magnolia-cms.com/secure/viewavatar?size=xsmall&amp;avatarId=10883&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.magnolia-cms.com/images/icons/priorities/major.svg">Major</priority>
                        <status id="6" iconUrl="https://jira.magnolia-cms.com/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="1">Fixed</resolution>
                                        <assignee username="had">Jan Haderka</assignee>
                                    <reporter username="fpallini">Francis Pallini</reporter>
                        <labels>
                    </labels>
                <created>Tue, 7 Oct 2008 10:58:14 +0200</created>
                <updated>Thu, 3 Jul 2014 16:10:15 +0200</updated>
                            <resolved>Tue, 14 Oct 2008 18:37:30 +0200</resolved>
                                    <version>1.2.6</version>
                                    <fixVersion>1.2.7</fixVersion>
                    <fixVersion>1.3</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>0</watches>
                                                                                                                <comments>
                            <comment id="18428" author="gjoseph" created="Tue, 7 Oct 2008 17:55:25 +0200"  >&lt;p&gt;The trailing slash in the mapping was in fact added to solve &lt;a href=&quot;https://jira.magnolia-cms.com/browse/MGNLDMS-126&quot; title=&quot;DMS Module Makes Web Pages With &amp;quot;dms&amp;quot; At Start Break&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MGNLDMS-126&quot;&gt;&lt;del&gt;MGNLDMS-126&lt;/del&gt;&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="18440" author="had" created="Wed, 8 Oct 2008 10:04:26 +0200"  >&lt;p&gt;I&apos;ve fixed getURI in trunk and added test so it doesn&apos;t happen again.&lt;br/&gt;
As far as I can see getHandle() should not be affected once the getURI() was fixed as it only parses URI it got in a first place.&lt;/p&gt;</comment>
                            <comment id="18450" author="fpallini" created="Wed, 8 Oct 2008 15:15:25 +0200"  >&lt;p&gt;As far as I know, DMS module is closed-source so we had no way of knowing that. As cleanHandle (copied from info.magnolia.cms.beans.config.URI2RepositoryMapping) seems harmless on correct URLs, we just duplicated the behavior exhibited by URI2RepositoryMapping (where cleanHandle is called just before return statement in both methods).&lt;/p&gt;</comment>
                            <comment id="18453" author="gjoseph" created="Wed, 8 Oct 2008 15:32:40 +0200"  >&lt;blockquote&gt;&lt;p&gt;As far as I know, DMS module is closed-source&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Where did you get that (wrong) idea from ??&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://svn.magnolia.info/svn/community/modules/magnolia-module-dms/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://svn.magnolia.info/svn/community/modules/magnolia-module-dms/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="18454" author="had" created="Wed, 8 Oct 2008 15:38:59 +0200"  >&lt;blockquote&gt;&lt;p&gt;we just duplicated the behavior exhibited by URI2RepositoryMapping (where cleanHandle is called just before return statement in both methods).&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;No big deal, I just wanted to be sure I didn&apos;t miss anything. If you did it just as a safety precaution, it is fine with me &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.magnolia-cms.com/images/icons/emoticons/smile.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</comment>
                            <comment id="18455" author="fpallini" created="Wed, 8 Oct 2008 15:40:28 +0200"  >&lt;p&gt;Nice to know that. Thanks!&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10030">
                    <name>Cloners</name>
                                            <outwardlinks description="clones">
                                        <issuelink>
            <issuekey id="14388">MAGNOLIA-2137</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                            <issuelinktype id="10021">
                    <name>duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="16502">MGNLDMS-163</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10010">
                    <name>relation</name>
                                            <outwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="14740">MGNLDMS-126</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                                        </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_14166" key="com.okapya.jira.checklist:checklist">
                        <customfieldname>Acceptance criteria</customfieldname>
                        <customfieldvalues>
                            
        <checklist>
        <![CDATA[
                            




                
                                    <div class="o-completion" style="display: flex; flex-shrink: 0;"><span  class="aui-lozenge aui-lozenge-complete" style="font-size: 12px; font-weight: normal; display: flex; flex-direction: row; align-items: center;" ><span style="padding-right: 4px; vertical-align: middle;"><svg width="15" height="15" viewBox="0 0 15 15" xmlns="http://www.w3.org/2000/svg" fill="white"><path clip-rule="evenodd" d="m10.41037,3.42544l-7.86501,0c-0.72395,0 -1.31084,0.58688 -1.31084,1.31084l0,7.86508c0,0.7239 0.58689,1.3108 1.31084,1.3108l7.86501,0c0.724,0 1.3109,-0.5869 1.3109,-1.3108l0,-7.86508c0,-0.72396 -0.5869,-1.31084 -1.3109,-1.31084zm-7.86501,-0.65542c-1.08593,0 -1.96626,0.88032 -1.96626,1.96626l0,7.86508c0,1.0859 0.88033,1.9662 1.96626,1.9662l7.86501,0c1.086,0 1.9663,-0.8803 1.9663,-1.9662l0,-7.86508c0,-1.08594 -0.8803,-1.96626 -1.9663,-1.96626l-7.86501,0z" fill-rule="evenodd"/><path d="m5.09049,10.18526l-1.82767,-1.82766l-0.78479,0.78479l2.61246,2.61246l5.38758,-5.38754l-0.78483,-0.78479l-4.60275,4.60274z"/></svg></span><span>Empty</span></span></div>
                        ]]>
    </checklist>


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10111" key="com.atlassian.jira.toolkit:reporterdomain">
                        <customfieldname>Company</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ecilia.fr</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_10031" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of First Response</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Tue, 7 Oct 2008 17:55:25 +0200</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_12730" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_14151" key="com.atlassian.jira.toolkit:message">
                        <customfieldname>Docu info</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10061" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comm is not jira-dev</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10071" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last participant</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>mmuehlebach</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_13136" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            15 years, 20 weeks, 4 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10020" key="com.atlassian.jira.toolkit:attachments">
                        <customfieldname>Number of attachments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10150" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname>Number of comments</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>6.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10011" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>fpallini</customfieldvalue>
            <customfieldvalue>had</customfieldvalue>
            <customfieldvalue>gjoseph</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10833" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03ho7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10244" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>20459</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_14145" key="com.intenso.jira.issue-templates:issue-templates-customfield">
                        <customfieldname>Template</customfieldname>
                        <customfieldvalues>
                            


                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_15131" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Time in Discovery</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10032" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time in Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </customfields>
    </item>
</channel>
</rss>