Hi Milan,
MyService is the interface ?
You register the service using blueprint ?
Regards
JB
On 08/11/2014 02:55 PM, Milan Tomic wrote:
Thank you very much for your answers. Due to my bug my Activator didn't
activated my service and that was causing problems.
Now I got this exception:
ClassCastException: Proxy68687b14_9ba8_4734_b559_b199ee1ac482 cannot be
cast to myPackage.MyService
when I do this:
MyService myService = (MyService) ic.lookup("osgi:service/" +
MyService.class.getName());
what could be a problem?
Thank you in advance,
Milan
On Monday, August 11, 2014 2:50 PM, Milan Tomic <[email protected]>
wrote:
Oh :) I didn't noticed that I sent this only to you :) I wanted to send
it to the whole user mailing list. Sorry and discard this email because
it is solved already.
Br, Milan
On Monday, August 11, 2014 9:39 AM, Milan Tomic <[email protected]>
wrote:
Thank you very much for your responses.
Do I have to register OSGi service with JNDI or all OSGi services
areautoregistered? I am trying this:
MyService myService = (MyService) ic.lookup("osgi:service/" +
MyService.class.getName());
and I got this exception:
javax.naming.NameNotFoundException: osgi:service/mypackage.MyService
I have already instaled feature:install jndi
Thank you in advance,
Milan
On Saturday, August 9, 2014 10:03 AM, "[email protected]"
<[email protected]> wrote:
Hello Milan,
You don't say which tutorial you followed: if you use Eclipse then I
suggest you take a look at <http://bndtools.org/tutorial.html>. Step 6
won't work for you because it's designed for a different shell than the
one Karaf uses by default, but you should learn something from the earlier
steps.
> public interface ParserService {
> String parse(String s);
> }
>
> public class ParserImpl implements ParserService {
> public String parse(String s) {
> return s.replaceAll("AA", "BB");
> }
> }
I hope these are two separate files, BTW otherwise I will have to send you
to bed without any supper. :)
> Now I have no idea how to call this service from outside of Karaf. Let's
> say from an Servlet running inside some Tomcat on the same Windows Server
> maching. So, how do you create OSGi/Karaf client app?
At this stage you can't even call the service from *inside* Karaf, because
you didn't register it with the framework. There are many ways to do this,
from the painstakingly manual to the mysteriously magical - the @Component
annotation falls into the latter category, so once you have it working you
might like to read up on "bnd" and "scr" to see how the magic works.
If you want to present a web interface then the easiest way is to install
the Karaf "web" feature and have your module register a service which
implements HttpServlet and has a property called "alias". This will
automatically be picked up by something called PAX Web, which will wire it
into Jetty for you.
HTH, Chris
--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com