Apache Felix Configuration Admin (CM) is widely used component which is responsible for provisioning of one of most common OSGi services. Main responsibility of it is to bring configurations stored in property files to services.
Read the rest of this entry »

I use Eclipse since years. Some of you may say that I’m a masochist. Well, people have different preferences. :-) I preffer Eclipse over other editors.

What’s the pain?

Eclipse had same look and feel since years. I used to have the same apperance under Windows/Linux/OSX. Everything was the same except fonts. I was very unhappy with default Juno look and feel which looks like few widgets deployed in browser. Even web-based IDEs looks better than Juno! There was some posts about that and some solutions. However nobody told how to get older look and feel in place.

What’s the solution?

It’s really simple. Go to Preferences > General > Apperance and change Theme to classic.

Here hows Mac theme looks like:
osx theme

Here hows classic theme looks like:
classic theme

Thanks to this small change I may finally upgrade my environment to Juno. I just realized that my eclipse installation is almost 2 years old!

Piątego lutego miałem niekłamaną przyjemność podziwiać Jacka Laskowskiego prezentującego temat Praktyczne wprowadzenie do OSGi i Enterprise OSGi. Link do filmiku z prezentacją Jacka znajdziecie na Jego blogu. Tymczasem, poniżej wideo z Karafem. :-)

Apache Camel supports a mapped diagnostic context which can be used to improve log entries, but also there is a log component which makes it easier to create log entries. Together they can be used to create foundations of activity monitoring without need to deploy another tool or database.
Read the rest of this entry »

Few months ago I’ve read an article written by my friend Jacek LaskowskiEnterprise OSGi runtime setup with Apache Aries Blueprint. In his article Jacek describes which bundles should be installed to get the blueprint working. As IBM employee Jacek can always promote IBM WebSphere in version X or Y which started (or will start) supporting blueprint as dependency injection mechanism. That’s not fine for these who do not run IBM producs and want something light. As you know, Aries and OSGi Blueprint is an alternative for old-fashion Spring approach. Read the rest of this entry »

One of bigest benefits of Java is byte code manipulation. You can change everything you want in your application without touching source code. That’s usefull for many cases, starting from legacy code, where we can’t simply modify and recompile library up to modern applications where aspects can be used to handle runtime exceptions. The most popular project is AspectJ which is part of Eclipse ecosystem, in this post I going to show you how to use AspectJ with Karaf.
Read the rest of this entry »

Few hours ago I’ve found an usefull post about preserving message order with ActiveMQ written by Marcelo Jabali from FUSE Source.

In his example Marcelo used broker feature called Exclusive Consumers. It lets send messages only to one consumer and if it fails then second consumer gets all messages. I think it is not the best idea if we have many messages to process. Why we wouldn’t use few consumers with preserved message order? Well, I was sure it is not possible, but during last training I’ve found solution.
Read the rest of this entry »

Management of OSGi – let’s face it – is not very hard. The OSGi environment is clearly defined and that gives programmers many mechanisms to create administrative tools. The problem begins when we would like to use only one tool to manage few projects or artifacts of different types. I know this from personal experience because when I run Camel, ActiveMQ and CXF every from them provides own administration console. Every of them requires own security configuration, looks differently, have own dependencies and so on.
Read the rest of this entry »

Zarządzanie tym, co się dzieje z OSGi – powiedzmy sobie szczerze – nie jest bardzo trudne. Idee tego środowiska są zdefiniowane jasno co daje programistom do dyspozycji wiele mechanizmów do tworzenia narzędzi administracyjnych. Problem zaczyna się gdy chcemy użyć jednego narzędzia do zarządzania kilkoma projektami bądź artefaktami kilku typów. Znam to z autopsji, ponieważ gdy uruchamiam Camela, ActiveMQ i CXF to każde z nich dostarcza własną konsolę administracyjną. Każda z nich wymaga oddzielnej konfiguracji bezpieczeństwa, inaczej wygląda, ma swoje zależności i tak dalej.
Read the rest of this entry »

This entry is part 3 of 3 in the series Building sample middleware

Last two days I’ve spent hacking Swing code. I decided to run standalone producer application to show real interaction with broker. You may treat this Swing app like entry point for people to our middleware system. Users simply do “transfers” from this application and don’t know anything about technical details. I added text area to main window to show structure of message sent to broker.
Read the rest of this entry »