cancel
Showing results for 
Search instead for 
Did you mean: 

Accessing APIDOCS

Accessing APIDOCS

Magreth_Mushi
New Contributor
Hi all,

I am running the controller with Openflow plugin as instructed in option 1 here (note that currently I am not using the extreme kit). I have installed four features ((feature:install odl-restconf odl-l2switch-switch odl-mdsal-apidocs odl-dlux-core). Unfortunately when i tried to access the apidoc (http://localhost:8181/apidoc/explorer/index.html) it just load the interface but not the docs, and display "406 : undefined http://localhost:8181/apidoc/apis". Can anyone shed some light on this?

Note: I have not installed my app as a feature yet, I want to explore what capabilities my app can benefit from restconf.

Thanks
Magreth
9 REPLIES 9

Magreth_Mushi
New Contributor
Hi Andrew,

Thank you for your support.

In the left hand side I see Nodes(saying no data) and Topology(contain the one switch and a host), I can not see my simple mininet topology which has a switch and 3 hosts.

I am running the integration project here, to get support for IETF-netconf available in OF1.3

Here is what I see in the network section of browser.

59982ba1712c4cd08af293f0eda3f9ee_RackMultipart20150212-18104-hyixzn-part2_inline.png



Andrew_Kinard
New Contributor II
Also, can you tell me a little more about which version of OpenDaylight you are using. You said you are not currently using the Extreme kit. Did you download OpenDaylight from the opendaylight.org Git repo? Or from GitHub?

Andrew_Kinard
New Contributor II
Ah, yes. I just saw your post on the controller-dev mailing list. It is true, as far as I know bug 2048 would not cause the behavior you are seeing. However, the fact that you cannot see Topology in DLUX and you cannot see the APIs listed in the API explorer very likely has the same root cause. So this is helpful. DLUX is a 100% javascript application (it is just hosted from inside Karaf's Jetty instance). This means that all of the communication to and from DLUX is done through the MDSAL (and sometimes ADSAL) REST APIs. Here's something that can tell us a lot quickly, can you tell me which navigation menu items you can see in the left-hand nav section in DLUX (you mentioned you can see Topology)? This is actually a quick indicator of which API's DLUX can see active on the controller. If you want bonus points, you can turn on the Developer screen in Chrome (in the view menu) and send me a copy of what you see in the Network section. The stuff in red will be API calls that DLUX made to the controller but returned with an error.

Magreth_Mushi
New Contributor
Thanks Andrew for reply,

I haven't tried curl, so let me try it.

DLUX also has some problem because I cannot see my topology (though it is working fine), I am just seeing the one switch and host added by the l2switch plugin. I thought I would work on one problem at a time, so I didn't bring this up.

Yesterday the log was giving me error below, which I am told is a known bug, but it shouldn't break anything.

******A bunch of INFO messages*********
2015-02-11 10:37:20,458 | ERROR | pool-18-thread-2 | RegisterWebAppVisitorWC | 100 - org.ops4j.pax.web.pax-web-extender-war - 3.1.0 | Registration exception. Skipping

java.lang.IllegalArgumentException: Security Mapping [free access] is already registered.
at org.ops4j.pax.web.service.spi.model.ServiceModel.addSecurityConstraintMappingModel(ServiceModel.java:330)[93:org.ops4j.pax.web.pax-web-spi:3.1.0]
at org.ops4j.pax.web.service.internal.HttpServiceStarted.registerConstraintMapping(HttpServiceStarted.java:929)[94:org.ops4j.pax.web.pax-web-runtime:3.1.0]
at org.ops4j.pax.web.service.internal.HttpServiceProxy.registerConstraintMapping(HttpServiceProxy.java:356)[94:org.ops4j.pax.web.pax-web-runtime:3.1.0]
at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorWC.visit(RegisterWebAppVisitorWC.java:329)[100:org.ops4j.pax.web.pax-web-extender-war:3.1.0]
at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept(WebApp.java:669)[100:org.ops4j.pax.web.pax-web-extender-war:3.1.0]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.register(WebAppPublisher.java:237)[100:org.ops4j.pax.web.pax-web-extender-war:3.1.0]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.addingServic

Andrew_Kinard
New Contributor II
Hi Magreth,

If you are not able to see any interfaces listed in acidic/explorer/index.html, then it may indicate a problem with MDSAL in general. Let's try and determine if this is a problem with MDSAL or Swagger (the kit the explorer is using). Can you access the restconf APIs using curl? What kind of activity can you see in DLUX? When you attempt to access the apidoc explorer are you seeing any errors in the Karaf log?

Regards,
Andrew
GTM-P2G8KFN