<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:51:56 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>[CONTROLLER-1] run.sh does not correctly handle pathnames containing &quot; &quot; characters</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-1</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;If somewhere in the full path for the location where you are trying to run  your controller, you have a path segment with a space, for example:&lt;/p&gt;

&lt;p&gt;/tmp/Development Stuff/distribution.opendaylight-0.1.0-SNAPSHOT-osgipackage/opendaylight&lt;/p&gt;

&lt;p&gt;(note the &quot; &quot; in &quot;Development Stuff&quot; above)&lt;/p&gt;

&lt;p&gt;When you try to execute run.sh, it will fail with the message:&lt;/p&gt;

&lt;p&gt;usage: dirname path&lt;br/&gt;
Exception in thread &quot;main&quot; java.lang.NoClassDefFoundError: org/eclipse/equinox/launcher/Main&lt;br/&gt;
Caused by: java.lang.ClassNotFoundException: org.eclipse.equinox.launcher.Main&lt;br/&gt;
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)&lt;br/&gt;
	at java.security.AccessController.doPrivileged(Native Method)&lt;br/&gt;
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)&lt;br/&gt;
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)&lt;br/&gt;
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)&lt;br/&gt;
	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)&lt;/p&gt;

&lt;p&gt;This failure is occurring due to mishandling of the space in &quot;Development Stuff&quot;&lt;/p&gt;

&lt;p&gt;Still working on fixing... but wanted folks to know ASAP that the workaround is&lt;br/&gt;
to simply do something like&lt;/p&gt;

&lt;p&gt;mv /tmp/Development\ Stuff/ /tmp/DevelopmentStuff&lt;/p&gt;

&lt;p&gt;in other words, kill the space in the path segment.&lt;/p&gt;</description>
                <environment>&lt;p&gt;Operating System: Mac OS&lt;br/&gt;
Platform: PC&lt;/p&gt;</environment>
        <key id="24555">CONTROLLER-1</key>
            <summary>run.sh does not correctly handle pathnames containing &quot; &quot; characters</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                                <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="vbhamidipati@ebaysf.com">Venkata Siva Vijayendra Bhamidipati</assignee>
                                    <reporter username="hagbard">Ed Warnicke</reporter>
                        <labels>
                    </labels>
                <created>Sat, 23 Mar 2013 16:33:52 +0000</created>
                <updated>Thu, 19 Oct 2017 16:36:45 +0000</updated>
                            <resolved>Tue, 5 May 2015 15:17:12 +0000</resolved>
                                    <version>0.4.0</version>
                                                    <component>adsal</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                                                                <comments>
                            <comment id="47248" author="vbhamidipati@ebaysf.com" created="Sat, 21 Dec 2013 02:06:33 +0000"  >&lt;p&gt;I see that this issue still exists on the controller trunk, and this looked like a relatively easy starter bug (Today is my first day working with opendaylight), so am assigning this to myself.&lt;/p&gt;

&lt;p&gt;I&apos;ve patched run.sh to get over the spaces issue, and with that, the NoClassDefFoundError goes away, but I&apos;m still running into an issue with the way the URIParser.parse() routine is being called - looks like it cannot parse file URIs when spaces exist in the path:&lt;/p&gt;

&lt;p&gt;BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US&lt;br/&gt;
Command-line arguments:  -console -consoleLog&lt;/p&gt;

&lt;p&gt;!ENTRY org.eclipse.osgi 4 0 2013-12-20 09:26:14.716&lt;br/&gt;
!MESSAGE Bundle reference:&lt;a href=&quot;file:../lib/logging.bridge-0.4.1-SNAPSHOT@1:start&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;file:../lib/logging.bridge-0.4.1-SNAPSHOT@1:start&lt;/a&gt; not found.&lt;br/&gt;
gogo: URISyntaxException: Illegal character in opaque part at index 29: jar:&lt;a href=&quot;file:/home/cloud/work/new&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;file:/home/cloud/work/new&lt;/a&gt;   nd/controller/opendaylight/distribution/opendaylight/target/distribution.opendaylight-osgipackage/opendaylight/configuration/org.eclipse.osgi/bundles/184/1/bundlefile!/gosh_profile&lt;br/&gt;
java.net.URISyntaxException: Illegal character in opaque part at index 29: jar:&lt;a href=&quot;file:/home/cloud/work/new&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;file:/home/cloud/work/new&lt;/a&gt;   nd/controller/opendaylight/distribution/opendaylight/target/distribution.opendaylight-osgipackage/opendaylight/configuration/org.eclipse.osgi/bundles/184/1/bundlefile!/gosh_profile&lt;br/&gt;
	at java.net.URI$Parser.fail(URI.java:2829)&lt;br/&gt;
	at java.net.URI$Parser.checkChars(URI.java:3002)&lt;br/&gt;
	at java.net.URI$Parser.parse(URI.java:3039)&lt;br/&gt;
	at java.net.URI.&amp;lt;init&amp;gt;(URI.java:595)&lt;br/&gt;
	at java.net.URL.toURI(URL.java:938)&lt;br/&gt;
	at org.apache.felix.gogo.shell.Shell.gosh(Shell.java:105)&lt;br/&gt;
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)&lt;br/&gt;
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)&lt;br/&gt;
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)&lt;br/&gt;
	at java.lang.reflect.Method.invoke(Method.java:606)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.Reflective.method(Reflective.java:136)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.CommandProxy.execute(CommandProxy.java:82)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:469)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:395)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:183)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:120)&lt;br/&gt;
	at org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:89)&lt;br/&gt;
	at org.apache.felix.gogo.shell.Activator.run(Activator.java:75)&lt;br/&gt;
	at java.lang.Thread.run(Thread.java:744)&lt;br/&gt;
I&apos;m not using eclipse - I&apos;m running the controller from CLI (ubuntu 12.04). &lt;/p&gt;


&lt;p&gt;There are more stack traces at different points in the code that are invoked by different libraries - for example, the above is invoked by the &quot;gogo&quot; package, it repeats later with another trace:&lt;/p&gt;

&lt;p&gt;2013-12-20 09:29:37 PST &lt;span class=&quot;error&quot;&gt;&amp;#91;org.apache.catalina.startup.ContextConfig&amp;#93;&lt;/span&gt; SEVERE org.apache.catalina.startup.ContextConfig getWebXmlSource Error processed default web.xml named conf/web.xml at /home/cloud/work/new   nd/controller/opendaylight/distribution/opendaylight/target/distribution.opendaylight-osgipackage/opendaylight/conf/web.xml&lt;br/&gt;
java.net.URISyntaxException: Illegal character in opaque part at index 29: jar:&lt;a href=&quot;file:/home/cloud/work/new&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;file:/home/cloud/work/new&lt;/a&gt;   nd/controller/opendaylight/distribution/opendaylight/target/distribution.opendaylight-osgipackage/opendaylight/configuration/org.eclipse.osgi/bundles/245/1/bundlefile!/conf/web.xml&lt;br/&gt;
	at java.net.URI$Parser.fail(URI.java:2829)&lt;br/&gt;
	at java.net.URI$Parser.checkChars(URI.java:3002)&lt;br/&gt;
	at java.net.URI$Parser.parse(URI.java:3039)&lt;br/&gt;
	at java.net.URI.&amp;lt;init&amp;gt;(URI.java:595)&lt;br/&gt;
	at java.net.URL.toURI(URL.java:938)&lt;br/&gt;
	at org.apache.catalina.startup.ContextConfig.getWebXmlSource(ContextConfig.java:1828)&lt;br/&gt;
	at org.apache.catalina.startup.ContextConfig.getGlobalWebXmlSource(ContextConfig.java:1741)&lt;br/&gt;
	at org.apache.catalina.startup.ContextConfig.getDefaultWebXmlFragment(ContextConfig.java:1414)&lt;br/&gt;
	at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1250)&lt;br/&gt;
	at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:878)&lt;br/&gt;
	at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:369)&lt;br/&gt;
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)&lt;br/&gt;
	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)&lt;br/&gt;
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5173)&lt;br/&gt;
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)&lt;/p&gt;

&lt;p&gt;.&lt;br/&gt;
.&lt;br/&gt;
.&lt;br/&gt;
	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:950)&lt;br/&gt;
	at org.eclipse.gemini.web.tomcat.internal.Activator.start(Activator.java:61)&lt;br/&gt;
	at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)&lt;br/&gt;
	at java.security.AccessController.doPrivileged(Native Method)&lt;br/&gt;
	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)&lt;br/&gt;
	at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)&lt;br/&gt;
	at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)&lt;br/&gt;
	at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:300)&lt;br/&gt;
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:1175)&lt;br/&gt;
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:1153)&lt;br/&gt;
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.processAllBundles(DirectoryWatcher.java:1146)&lt;br/&gt;
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:456)&lt;br/&gt;
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:263)&lt;/p&gt;


&lt;p&gt;Is this OSGI related? Is it possible that the OSGI package being used is outdated and later versions do the parsing correctly (either encode spaces to %20 or call another routine)? Any idea what this glue component/jar is and how  I can update its version? I do see in the run.sh file itself, CLASSPATH and FWCLASSPATH variables being initialized to eclipse jar files, but I have little idea of how OSGI works or how the jar components are updated.&lt;/p&gt;


&lt;p&gt;Thanks!&lt;br/&gt;
Regards,&lt;br/&gt;
Vijay&lt;/p&gt;</comment>
                            <comment id="47249" author="hagbard@gmail.com" created="Mon, 23 Dec 2013 22:13:25 +0000"  >&lt;p&gt;You are completely &lt;b&gt;awesome&lt;/b&gt; for picking this up &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;

&lt;p&gt;In a URI, you must substitute %20 for &quot; &quot; a space character.&lt;/p&gt;

&lt;p&gt;And example of how to do this kind of substitution from the shell would be:&lt;/p&gt;

&lt;p&gt;echo &quot;This is a string&quot; | sed &apos;s/ /%20/g&apos;&lt;/p&gt;

&lt;p&gt;And thank you &lt;b&gt;so&lt;/b&gt; much for picking this up &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>
                            <comment id="47250" author="vbhamidipati@ebaysf.com" created="Tue, 24 Dec 2013 00:03:52 +0000"  >&lt;p&gt;Thanks Ed! &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; I actually did try out the %20 in the sed &apos;s/ /&lt;br class=&quot;atl-forced-newline&quot; /&gt; /g&apos; portions of the script along with putting everything in double quotes, but the problem there is that then the run.sh script passes off those paths as /home/dir1/xy%20z/blah/ to jdk, and then again java fails to locate those paths and runs into the original class not found error.. so I wasn&apos;t able to work around it that way..&lt;/p&gt;

&lt;p&gt;The %20 encoding should be done somewhere in the java layers, but looking at the stack traces, it doesn&apos;t look like we can do that in the controller code. Ideally, the call to java.net.URL.toURI(URL.java:938) that is being made, should be encoding those spaces, or handling it differently. So that&apos;s where I&apos;m kind of stuck, since I don&apos;t know if those OSGI/gogo modules were actually patched later on to fix this, and if so, how we can upgrade those dependencies in the controller packaging.&lt;/p&gt;</comment>
                            <comment id="47251" author="vbhamidipati@ebaysf.com" created="Tue, 21 Jan 2014 19:31:05 +0000"  >&lt;p&gt;The fix has been merged to master - however, the osgi bundles will still need to be updated. I&apos;m marking this bug as fixed for now with this caveat.&lt;/p&gt;</comment>
                            <comment id="47252" author="carolsand@gmail.com" created="Tue, 5 May 2015 15:17:12 +0000"  >&lt;p&gt;This bug is part of the project to Move all ADSAL associated component bugs to ADSAL.&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_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>3</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10201" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>External issue URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://bugs.opendaylight.org/show_bug.cgi?id=3]]></customfieldvalue>

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

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