camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Arnaud Deprez <arnaudep...@gmail.com>
Subject Re: camel-swagger in karaf
Date Tue, 21 Jul 2015 15:33:19 GMT
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 <arnaudeprez@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 <ed@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 <arnaudeprez@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 <arnaudeprez@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.ibsen@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 <
>> arnaudeprez@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.ibsen@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.ibsen@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 <
>> > >> arnaudeprez@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
>> > >>
>> > >
>>
>>
>>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message