import org.opendaylight.aaa.web.servlet.ServletSupport;
import org.opendaylight.restconf.nb.rfc8040.RestconfApplication;
import org.opendaylight.restconf.nb.rfc8040.RestconfNotifApplication;
+import org.opendaylight.restconf.nb.rfc8040.RootFoundApplication;
import org.opendaylight.restconf.nb.rfc8040.rests.utils.RestconfStreamsConstants;
import org.opendaylight.restconf.nb.rfc8040.streams.websockets.WebSocketInitializer;
import org.opendaylight.restconf.nb.rfc8040.utils.RestconfConstants;
@Reference ServletSupport servletSupport, RestconfApplication webApp,RestconfNotifApplication webAppNotif,
@Reference CustomFilterAdapterConfiguration customFilterAdapterConfig,
WebSocketInitializer webSocketServlet) throws ServletException {
- WebContextBuilder webContextBuilder = WebContext.builder().contextPath(RestconfConstants.BASE_URI_PATTERN)
+ WebContextBuilder webContextBuilder = WebContext.builder().contextPath("/")
.supportsSessions(false)
.addServlet(ServletDetails.builder().servlet(servletSupport.createHttpServletBuilder(webApp).build())
- .addUrlPattern("/*").build())
+ .addUrlPattern(RestconfConstants.BASE_URI_PATTERN + "/*").build())
.addServlet(ServletDetails.builder().servlet(servletSupport.createHttpServletBuilder(webAppNotif)
- .build()).asyncSupported(true).addUrlPattern("/notif/*").name("notificationServlet").build())
+ .build()).asyncSupported(true).addUrlPattern(RestconfConstants.BASE_URI_PATTERN + "/notif/*")
+ .name("notificationServlet").build())
.addServlet(ServletDetails.builder().servlet(webSocketServlet).addAllUrlPatterns(Lists.newArrayList(
- RestconfStreamsConstants.DATA_CHANGE_EVENT_STREAM_PATTERN,
- RestconfStreamsConstants.YANG_NOTIFICATION_STREAM_PATTERN)).build())
+ RestconfConstants.BASE_URI_PATTERN + RestconfStreamsConstants.DATA_CHANGE_EVENT_STREAM_PATTERN,
+ RestconfConstants.BASE_URI_PATTERN + RestconfStreamsConstants.YANG_NOTIFICATION_STREAM_PATTERN))
+ .build())
+
+ .addServlet(ServletDetails.builder().servlet(servletSupport.createHttpServletBuilder(
+ new RootFoundApplication()).build())
+ .addUrlPattern(".well-known/*").name("Rootfound").build())
+
// Allows user to add javax.servlet.Filter(s) in front of REST services
.addFilter(FilterDetails.builder().filter(new CustomFilterAdapter(customFilterAdapterConfig))
.addUrlPattern("/*").asyncSupported(true).build());