I just raised an issue for this : https://issues.apache.org/jira/browse/CAMEL-8993
On Tue, Jul 21, 2015 at 5:24 PM Arnaud Deprez <arnaudep...@gmail.com> wrote: > Thanks Ed, > Until your message I though I was the only one who is trying this. > > I also think it's a classpath issue because as I said, I don't reach this > issue with spring-boot. > > The following may help to diagnostic the problem. I put all the logs in > TRACE while I'm performing the request from the swagger-ui to retrieve the > documentation : > > 2015-07-21 15:18:05,787 | DEBUG | mel/api/api-docs | ServletHandler > | 58 - org.eclipse.jetty.aggregate.jetty-all-server - > 8.1.17.v20150415 | chain=null > 2015-07-21 15:18:05,787 | TRACE | mel/api/api-docs | > RestSwaggerApiDeclarationServlet | 166 - org.apache.camel.camel-swagger - > 2.15.2 | renderResourceListing > 2015-07-21 15:18:05,787 | DEBUG | mel/api/api-docs | mbeanserver > | - - | name = > org.apache.camel:context=be.arndep.camel.account-core,type=context,name="bankAccounts-rest" > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Finding operation dumpRestsAsXml as dumpRestsAsXml > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Constructor > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Null Descriptor, creating new. > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'null' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry: setting 'name' to 'dumpRestsAsXml' > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Defaulting Descriptor name to dumpRestsAsXml > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'null' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry: setting 'descriptorType' to 'operation' > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Defaulting descriptorType to "operation" > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'null' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry: setting 'displayName' to 'dumpRestsAsXml' > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Defaulting Descriptor displayName to dumpRestsAsXml > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'null' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry: setting 'role' to 'operation' > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Defaulting Descriptor role field to "operation" > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'dumpRestsAsXml' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'operation' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns true > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'dumpRestsAsXml' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'operation' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'operation' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'null' > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Constructor > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Constructor > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'dumpRestsAsXml' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'operation' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'dumpRestsAsXml' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'operation' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns true > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'dumpRestsAsXml' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'operation' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'operation' > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returns 'null' > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Exit > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Constructor > 2015-07-21 15:18:05,788 | DEBUG | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Entry > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Returning 5 fields > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Exit > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Printing 5 fields > 2015-07-21 15:18:05,788 | TRACE | mel/api/api-docs | modelmbean > | - - | Exit returning descriptorType=operation, > displayName=dumpRestsAsXml, mask=false, name=dumpRestsAsXml, role= > operation > > As you can see, I have a lot of Returns 'null' from modelmbean. > > Regards, > > A. > > On Mon, Jul 20, 2015 at 7:14 PM Ed Welch <e...@edjusted.com> wrote: > >> A few months back I played around with swagger in camel, I think I made >> it about to where you were and either got pulled into another project or my >> short attention span got the better of me, because I never found a solution >> to this. >> >> I think the problem you are seeing with Karaf is likely a classpath >> issue, basically the swagger/jackson/camel bundles all have separate >> classloaders and this causes some issues when trying to get the swagger api >> to present your model. >> >> Unfortunately, this isn't really an easy problem to solve (assuming my >> guess is correct), you could possibly use a fragment bundle on either the >> swagger or jackson bundles (not sure which needs the classes), or consider >> some form of embed-dependency (which is not really the correct solution to >> an osgi problem) >> >> Sorry I can't be of more direct help, but I just wanted to point this out >> as a possible source of your issue. >> >> Regards, >> Ed >> >> On Mon, 20 Jul 2015 15:24:38 +0000, Arnaud Deprez <arnaudep...@gmail.com> >> wrote: >> >> > Hi again, >> > >> > I just push my example here which works fine with spring-boot but still >> > can't see the model in Karaf. >> > https://github.com/arnaud-deprez/camel-examples/tree/master/rest >> > >> > There are also the features I use. >> > If someone find what's wrong, I'd be verry happy ! :-) >> > >> > On Thu, Jul 16, 2015 at 1:46 PM Arnaud Deprez <arnaudep...@gmail.com> >> wrote: >> > >> > > It was plain pojos, but I just test it by adding the annotation >> @ApiModel >> > > and @ApiModelProperty on my pojos and it's still doesn't work. >> > > >> > > On Thu, Jul 16, 2015 at 1:18 PM Claus Ibsen <claus.ib...@gmail.com> >> wrote: >> > > >> > >> Hi >> > >> >> > >> Ah okay is your model annotate with swagger annotations or just plain >> > >> pojos? >> > >> >> > >> On Thu, Jul 16, 2015 at 1:10 PM, Arnaud Deprez < >> arnaudep...@gmail.com> >> > >> wrote: >> > >> > Hi, >> > >> > >> > >> > Thanks for your quick answer. >> > >> > >> > >> > I've tried to add either a file org.apache.camel.cfg and >> > >> > jmx.acl.org.apache.camel.cfg that has * = * and I still have the >> same >> > >> > issue, even after restarting my karaf. >> > >> > >> > >> > On Thu, Jul 16, 2015 at 12:32 PM Claus Ibsen < >> claus.ib...@gmail.com> >> > >> wrote: >> > >> > >> > >> >> Hi >> > >> >> >> > >> >> Also I remember one of the problems was the new RBAC in karaf, so >> you >> > >> >> need to bypass that so swagger can get the model from camel >> > >> >> >> > >> >> We are doing this out of the box in a future release >> > >> >> >> > >> >> >> > >> >> https://github.com/apache/camel/commit/dcdc7760ad4b382bb6e197190443e48e6ff2cdd7 >> > >> >> >> > >> >> But for current you need to setup this manually in karaf rbac. >> Its a >> > >> >> bit confusing to do so, but look in the etc dir and create a file >> that >> > >> >> starts with org.apache.camel and has that * = * >> > >> >> >> > >> >> >> > >> >> >> > >> >> On Thu, Jul 16, 2015 at 12:19 PM, Claus Ibsen < >> claus.ib...@gmail.com> >> > >> >> wrote: >> > >> >> > Hi >> > >> >> > >> > >> >> > A while back there was a thread about swagger on karaf. Can you >> find >> > >> >> > that I think it has some pointers to get it working. >> > >> >> > >> > >> >> > >> > >> >> > >> > >> >> > On Thu, Jul 16, 2015 at 11:48 AM, Arnaud Deprez < >> > >> arnaudep...@gmail.com> >> > >> >> wrote: >> > >> >> >> Hi guys, >> > >> >> >> >> > >> >> >> I don't know if this mail is for camel folks or karaf folks. >> > >> >> >> >> > >> >> >> I'm using camel 2.15.2 with its REST DSL and camel-swagger in >> an >> > >> OSGi >> > >> >> >> environment (I tried both karaf 2.4.3 and karaf 4). >> > >> >> >> >> > >> >> >> I'm using the servlet component by exposing it as OSGi >> services : >> > >> >> >> >> > >> >> >> - CamelHttpTransportServlet for my camel route >> > >> >> >> - DefaultCamelSwaggerServlet for the swagger documentation. >> > >> >> >> >> > >> >> >> Then I use the swagger ui to see the documentation. >> > >> >> >> >> > >> >> >> I can see my rest endpoint and the documentation I put in >> > >> "description" >> > >> >> but >> > >> >> >> it's not able to show me the model for the request and the >> response >> > >> >> >> (defined in "type" and "outType"). >> > >> >> >> >> > >> >> >> However if I use the same routes and the same servlet in a >> > >> spring-boot >> > >> >> >> environment, it works like a charm. >> > >> >> >> >> > >> >> >> I tried to find some information on the web but I didn't find >> > >> anything >> > >> >> >> about missing supports or bug with karaf and camel and the >> latest >> > >> >> version. >> > >> >> >> >> > >> >> >> So is it a known bug ? Or camel will support it in future >> version ? >> > >> Or >> > >> >> is >> > >> >> >> it a lack of support in karaf ? >> > >> >> >> >> > >> >> >> Regards, >> > >> >> >> >> > >> >> >> A. >> > >> >> > >> > >> >> > >> > >> >> > >> > >> >> > -- >> > >> >> > Claus Ibsen >> > >> >> > ----------------- >> > >> >> > http://davsclaus.com @davsclaus >> > >> >> > Camel in Action 2nd edition: http://www.manning.com/ibsen2 >> > >> >> >> > >> >> >> > >> >> >> > >> >> -- >> > >> >> Claus Ibsen >> > >> >> ----------------- >> > >> >> http://davsclaus.com @davsclaus >> > >> >> Camel in Action 2nd edition: http://www.manning.com/ibsen2 >> > >> >> >> > >> >> > >> >> > >> >> > >> -- >> > >> Claus Ibsen >> > >> ----------------- >> > >> http://davsclaus.com @davsclaus >> > >> Camel in Action 2nd edition: http://www.manning.com/ibsen2 >> > >> >> > > >> >> >>