Ah I got this fixed and logged a ticket as I needed the ticket number for the commit log https://issues.apache.org/jira/browse/CAMEL-9582
On Tue, Feb 9, 2016 at 12:10 PM, Claus Ibsen <[email protected]> wrote: > Hi > > Ah yeah I have reproduced that too, it happens when you have no Java > routes. You are welcome to log a JIRA ticket. > > On Tue, Feb 9, 2016 at 11:29 AM, Gohand <[email protected]> wrote: >> Hi there >> >> I discovered a strange behaviour: If I use the JAVA DSL, all works fine. As >> soon as I configure the routes using Spring XML, the API disappears. >> >> This one is working fine: >> public void configure() throws Exception { >> >> // configure we want to use servlet as the component for the rest >> DSL >> // and we enable json binding mode >> restConfiguration().component("netty4-http") >> // use json binding mode so Camel automatic binds json <--> pojo >> .bindingMode(RestBindingMode.json) >> // and output using pretty print >> .dataFormatProperty("prettyPrint", "true") >> // setup context path on localhost and port number that netty >> will use >> .contextPath("/").host("localhost").port(8080) >> // add swagger api-doc out of the box >> .apiContextPath("/api-doc") >> .apiProperty("api.title", "User >> API").apiProperty("api.version", "1.2.3") >> // and enable CORS >> .apiProperty("cors", "true"); >> >> // this user REST service is json only >> rest("/users").description("User rest service") >> .consumes("application/json").produces("application/json") >> >> .get("/{id}").description("Find user by id").outType(User.class) >> .param().name("id").type(path).description("The id of the >> user to get").dataType("int").endParam() >> .to("bean:userService?method=getUser(${header.id})") >> >> .put().description("Updates or create a user").type(User.class) >> .param().name("body").type(body).description("The user to >> update or create").endParam() >> .to("bean:userService?method=updateUser") >> } >> >> >> But this one does not expose the Swagger API: >> <camelContext xmlns="http://camel.apache.org/schema/spring"> >> >> >> <restConfiguration bindingMode="json" component="netty4-http" >> host="localhost" port="8080" contextPath="/" apiContextPath="/api-doc"> >> <dataFormatProperty key="prettyPrint" value="true"/> >> <apiProperty key="api.title" value="User API" /> >> <apiProperty key="api.version" value="1.2.3" /> >> <apiProperty key="cors" value="true" /> >> </restConfiguration> >> >> <rest path="/users" consumes="application/json" >> produces="application/json"> >> <description>User rest service</description> >> <get uri="/{id}" >> outType="org.apache.camel.example.cdi.User"> >> <description>Find user by id</description> >> >> <to >> uri="bean:userService?method=getUser(${header.id})"/> >> </get> >> <put type="org.apache.camel.example.cdi.User"> >> <description>Updates or create a >> user</description> >> >> <to uri="bean:issueManager?method=getIssues()" /> >> </put> >> </rest> >> >> </camelContext> >> >> I could not find any differences. Does somebody has an idea? >> >> Best regards, >> Moritz >> >> >> >> -- >> View this message in context: >> http://camel.465427.n5.nabble.com/Swagger-not-working-tp5777255p5777452.html >> Sent from the Camel - Users mailing list archive at Nabble.com. > > > > -- > Claus Ibsen > ----------------- > http://davsclaus.com @davsclaus > Camel in Action 2: https://www.manning.com/ibsen2 -- Claus Ibsen ----------------- http://davsclaus.com @davsclaus Camel in Action 2: https://www.manning.com/ibsen2
