> in OSGI 6 I think we should be able to use
> @Component(property = {"osgi.jaxrs.name <http://osgi.jaxrs.name/>=myApp", 
> "osgi.jaxrs.application.base=/foo"}, service = A.class)
> class...
> That does not work or did I misunderstood something?

If you want to register an application with the whiteboard then you must 
register it as a javax.ws.rs <http://javax.ws.rs/>.core.Application in the 
service registry. This is outlined at 
https://osgi.org/specification/osgi.cmpn/7.0.0/service.jaxrs.html#service.jaxrs.application.services
 
<https://osgi.org/specification/osgi.cmpn/7.0.0/service.jaxrs.html#service.jaxrs.application.services>

> Second how do i create additional Servlets and how do I select them in a 
> resource?
> E.g. A configfile/servicepid
> org.apache.aries.jax.rs.whiteboard-bar.cfg
> application.base.prefix=/bar
> should create an additional servlet container?

I’m not sure that I totally follow here. It looks like you’re trying to create 
a configuration for another Aries JAX-RS whitboard instance - is this really 
what you want, a second JAX-RS whiteboard? The Aries JAX-RS Whiteboard is 
designed to build on top of a compliant Http Whiteboard, if you are actually 
trying to create another Http Whiteboard (e.g. to get HTTP served on another 
port) then you will need to set that up in PAX-Web.

> Then with
> @JaxrsWhiteboardTarget
> or
> "osgi.jaxrs.whiteboard.target="
> 
> I can select the servlet/Whiteboard, but how does the LDAP string look? 
> (service.pid=org.apache.aries.jax.rs.whiteboard-bar)?

This property only applies if you create more than one JAX-RS whiteboard, and 
would be applied to your JAX-RS Whiteboard services (resources, applications, 
extensions), and you would use the filter to select the JAX-RS Whiteboard that 
you wanted them to use. If you do want to do this, which seems unlikely, then 
you would typically add a marker property into the configuration for your 
JAX-RS Whiteboard and then use that property name/value in the filter.


Any questions that relate to setting up the Http Whiteboard will need to be 
handled by someone with more PAX-Web experience. I would also recommend that, 
in addition to describing the problems that you’ve encountered, you include a 
description of what you’re trying to achieve with your system.

E.g.

Do you want multiple Http ports being served (this would be Http Whiteboard not 
JAX-RS Whiteboard)?
Do you want JAX-RS Whiteboard support on top of one or more of the available 
Http Whiteboards)?
Do you want to publish JAX-RS resource services, application services, or a 
mixture of the two?
Do you want the JAX-RS services that you publish to appear on all whiteboards, 
or just a subset?

With this information it will be much easier to help you to achieve your goal.

All the best,

Tim

> On 6 Nov 2019, at 17:25, Matthias Leinweber <[email protected]> 
> wrote:
> 
> Hi JB,
> yes that was my first place to start... really like the examples in the 
> source, they are really helpful.
> 
> ok:
> Fist thing are JAXRs Applications. In OSGI7 we will use
> @JaxrsName("myApp")
> @JaxrsApplicationBase("foo")
> @Component
> class....
> 
> in OSGI 6 I think we should be able to use
> @Component(property = {"osgi.jaxrs.name <http://osgi.jaxrs.name/>=myApp", 
> "osgi.jaxrs.application.base=/foo"}, service = A.class)
> class...
> That does not work or did I misunderstood something?
> 
> Second how do i create additional Servlets and how do I select them in a 
> resource?
> E.g. A configfile/servicepid
> org.apache.aries.jax.rs.whiteboard-bar.cfg
> application.base.prefix=/bar
> should create an additional servlet container?
> 
> Then with
> @JaxrsWhiteboardTarget
> or
> "osgi.jaxrs.whiteboard.target="
> 
> I can select the servlet/Whiteboard, but how does the LDAP string look? 
> (service.pid=org.apache.aries.jax.rs.whiteboard-bar)?
> 
> Best regards,
> Matthias
> 
> 
> Am Mi., 6. Nov. 2019 um 18:00 Uhr schrieb Jean-Baptiste Onofré 
> <[email protected] <mailto:[email protected]>>:
> Hi Matthias,
> 
> did you take a look on the Karaf example ?
> 
> https://github.com/apache/karaf/tree/master/examples/karaf-rest-example 
> <https://github.com/apache/karaf/tree/master/examples/karaf-rest-example>
> 
> It contains different approaches, including whiteboard.
> 
> Can you describe a bit what you are looking for ? We can then create the
> Jira at Karaf/Aries to improve example/documentation.
> 
> Regards
> JB
> 
> On 06/11/2019 17:56, Matthias Leinweber wrote:
> > Hello Karaf Team,
> > 
> > I know that this not the 100% correct mailing list for aries jax-rs.
> > However my question is what do you plan for further releases of Karaf? I
> > try to use the aries implementation but I struggle with the configuration.
> > Beside the incomplete documentation and the "very special" DSL which is
> > used I dug into the code and understood the following things.
> > 
> > * You can not add additional JAXRSApplications. ("osgi.jaxrs.name 
> > <http://osgi.jaxrs.name/>
> > <http://osgi.jaxrs.name <http://osgi.jaxrs.name/>>=myApp", 
> > "osgi.jaxrs.application.base=/approot"}
> > although there is code which should do this?
> > * Additional configurations for other then the default servlet is not
> > possible although there is a service factory manager which should handle
> > additional configs?
> > * With org.apache.aries.jax.rs 
> > <http://org.apache.aries.jax.rs/>.whiteboard.default.cfg
> > # application.base.prefix you can add a global url prefix to your
> > JaxRSResoureces. Would be nice if that could be documented somewhere.
> > 
> > Don't get me wrong I do not say that the bundle is bad, but at some
> > point it could be easier to understand.
> > 
> > regards Matthias
> > 
> > 
> 
> -- 
> Jean-Baptiste Onofré
> [email protected] <mailto:[email protected]>
> http://blog.nanthrax.net <http://blog.nanthrax.net/>
> Talend - http://www.talend.com <http://www.talend.com/>
> 
> 
> -- 

Reply via email to