<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:15:42 UTC 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>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[NETCONF-708] Swagger generates invalid RFC8040 paths for lists with multiple keys</title>
                <link>https://jira.opendaylight.org/browse/NETCONF-708</link>
                <project id="10142" key="NETCONF">netconf</project>
                    <description>&lt;p&gt;Getting &lt;b&gt;500 server error&lt;/b&gt; for this rest api using RFC8040 url in &lt;b&gt;swagger&lt;/b&gt; which is working perfectly fine with restconf(original) url. Both the urls are mentioned below.&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;b&gt;Orignal Url&lt;/b&gt;:-&lt;font color=&quot;#0747a6&quot;&gt;http://&amp;lt;Controller IP&amp;gt;:8181+/restconf/config/openconfig-network-instance:network-instances/network-instance/global-bgp/openconfig-network-instance:protocols/protocol/openconfig-policy-types:BGP/bgp-example/bgp/neighbors/neighbor/&lt;a href=&quot;http://192.0.2.1/afi-safis/afi-safi/openconfig-bgp-types:IPV4-UNICAST&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;192.0.2.1/afi-safis/afi-safi/openconfig-bgp-types:IPV4%2DUNICAST&lt;/a&gt;&lt;/font&gt;&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;RFC8040 Url&lt;/b&gt;:-&lt;font color=&quot;#0747a6&quot;&gt;http://&amp;lt;Controller IP&amp;gt;:8181/rests/data/openconfig-network-instance:network-instances/network-instance=global-bgp/protocols/protocol=openconfig-policy-types%3ABGP=bgp-example/bgp-openconfig-extensions:bgp/neighbors/neighbor=&lt;a href=&quot;http://192.0.2.1/afi-safis/afi-safi=openconfig-bgp-types%3AIPV4-UNICAST&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;192.0.2.1/afi-safis/afi-safi=openconfig-bgp-types%3AIPV4-UNICAST&lt;/a&gt;&lt;/font&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;In this url, &lt;b&gt;protocol&lt;/b&gt; key has two values: &lt;br/&gt;
 1. Identifier: openconfig-policy-types:BGP&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 2. Name:&#160; bgp-example&#160;&lt;/p&gt;

&lt;p&gt;According to RFC8040, the multiple keys should be separated with &lt;b&gt;&apos;,&apos;&lt;/b&gt; instead of &lt;b&gt;&apos;=&lt;/b&gt;&apos;.&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;b&gt;Valid RFC8040 Url&lt;/b&gt;:-&#160;&lt;font color=&quot;#0747a6&quot;&gt;http://&amp;lt;Controller IP&amp;gt;:8181/rests/data/openconfig-network-instance:network-instances/network-instance=global-bgp/protocols/protocol=openconfig-policy-types%3ABGP,bgp-example/bgp-openconfig-extensions:bgp/neighbors/neighbor=&lt;a href=&quot;http://192.0.2.1/afi-safis/afi-safi=openconfig-bgp-types%3AIPV4-UNICAST&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;192.0.2.1/afi-safis/afi-safi=openconfig-bgp-types%3AIPV4-UNICAST&lt;/a&gt;&lt;/font&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;But It is not working even changing &apos;=&apos; with &apos;,&apos; .&#160; It seems there is a bug in calling the apis when we have a list of multiple keys(openconfig-policy-types:BGP and bgp-example in above case).&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="32781">NETCONF-708</key>
            <summary>Swagger generates invalid RFC8040 paths for lists with multiple keys</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="3" iconUrl="https://jira.opendaylight.org/images/icons/priorities/major.svg">Medium</priority>
                        <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="ivanhrasko">Ivan Hrasko</assignee>
                                    <reporter username="aman1403">Aman .</reporter>
                        <labels>
                            <label>bgp</label>
                            <label>pt</label>
                    </labels>
                <created>Fri, 19 Jun 2020 07:38:25 +0000</created>
                <updated>Wed, 16 Jun 2021 19:46:21 +0000</updated>
                            <resolved>Tue, 15 Jun 2021 15:22:59 +0000</resolved>
                                    <version>Aluminium</version>
                                    <fixVersion>2.0.0</fixVersion>
                    <fixVersion>1.13.3</fixVersion>
                                    <component>restconf-openapi</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="68310" author="ecelgp" created="Mon, 29 Jun 2020 18:41:04 +0000"  >&lt;p&gt;I think this is issue is in RESTCONF so moving to that project.&lt;/p&gt;</comment>
                            <comment id="69303" author="JIRAUSER13405" created="Sat, 12 Jun 2021 16:41:27 +0000"  >&lt;p&gt;The bug is in&#160;org.opendaylight.netconf.sal.rest.doc.impl.BaseYangSwaggerGenerator.java createPath method.&lt;/p&gt;

&lt;p&gt;&#160;The fix should be:&lt;/p&gt;

&lt;p&gt;+&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; final ListPathBuilder keyBuilder = newListPathBuilder();&lt;/p&gt;

&lt;p&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; for (final QName listKey : listKeys) {&lt;/p&gt;

&lt;p&gt;-&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; final ListPathBuilder keyBuilder = newListPathBuilder();&lt;/p&gt;</comment>
                            <comment id="69313" author="ivanhrasko" created="Wed, 16 Jun 2021 12:05:53 +0000"  >&lt;p&gt;Thanks &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=yevgeny88&quot; class=&quot;user-hover&quot; rel=&quot;yevgeny88&quot;&gt;yevgeny88&lt;/a&gt; for your suggestions, its fixed now.&lt;/p&gt;</comment>
                            <comment id="69314" author="ecelgp" created="Wed, 16 Jun 2021 18:44:07 +0000"  >&lt;p&gt;Thanks &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=ivanhrasko&quot; class=&quot;user-hover&quot; rel=&quot;ivanhrasko&quot;&gt;ivanhrasko&lt;/a&gt; for taking care of this &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.opendaylight.org/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>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10202" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Priority</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10301"><![CDATA[Normal]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03t67:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>