Apache Karaf is one year old !! (2011-06-17)
For the first Apache Karaf (http://karaf.apache.org) birthday, we made a very interesting concall with the Karaf dev team. It was the first time that we listen our voice together.
We made a review of this past year using the Jamie's blog post:
It provides an interesting status about the Karaf adoption, download timeline, etc.
It was also time to share our vision about the Karaf future.
I wrote down this concall minute notes:
In the same way, I will write down some architecture/implementation roadmap draft.
The Karaf community is really great and all guys are so cool and interesting. I'm glad to be part of this community and highly proud to be proposed as the new Karaf PMC Chair. Thanks again to Guillaume, Karaf founder, for all the work he did and he does ;). Respect ;)
Happy birthay Karaf!
Apache Aries is now an Apache TLP (2010-12-15)
The OSGi projects list keep on growing at Apache. Apache Aries is now a Top Level Project. It provides bundles for OSGi Enterprise, such JPA, JTA, JNDI, etc.
The website http://aries.apache.org should be available soon.
Apache Karaf is now an Apache TLP (2010-06-26)
At the beginning, we had Apache ServiceMix Kernel, after we moved kernel to Apache Felix Karaf, and now, Karaf is an Apache TLP: welcome to Apache Karaf !
The website and resources are in progress:
A first release should be ready in few days. I'm very proud to be Karaf commiter and PMC.
ipfilter and Linux 2.6: OutOfWindow blocked packets (2010-04-27)
I saw a very very strange behavior between a ipfilter firewall and Linux 2.6 kernel.
My main firewall (between internet and DMZ) uses ipfilter on NetBSD. My rules looks like this:
block in log all block out log all pass in log quick on sip0 proto tcp from any to 220.127.116.11 port 25 keep state
Previously, my DMZ mail server (running on postfix) was on a Linux 2.4 and I didn't see any issue. After upgrading my mail server to 2.6 kernel (debian lenny), I've seen some strange postfix timeout:
timed out while sending data
Using ipmon/ipfstat on the firewall, I saw that OOW (OutOfWindow) packets were blocked by ipfilter. A packet is OOW flagged if its size is greater than the MTU. Changing the MTU didn't solve my issue, so I allowed OOW packets on the firewall:
pass in log quick on sip0 proto tcp from any to 18.104.22.168 keep state pass in log quick on sip0 proto tcp from any to 22.214.171.124
It works fine like this but I suspect a change on the Linux 2.6 IP stack (comparing with the 2.4 one).
Java network issue after the latest Debian upgrade (2009-12-23)
Today, I got some strange network issue in java applications (such as maven, eclipse, ...). After some investigation, I found that the issue is due to IPv4 and IPv6 stack cooperation.
Adding -Djava.net.preferIPv4Stack=true argument to maven (in the MAVEN_OPTS variable) or in the eclipse.ini file correct my issue, but it's not very efficient.
So I checked what's happened on my Debian box. In fact, in the latest Debian upgrade, a new file has been added:
AHAHA. It's the guilty (this file has been added the 22th of december, the beginning of my issue). In this file, we can see:
# This sysctl sets the default value of the IPV6_V6ONLY socket option. # # When disabled, IPv6 sockets will also be able to send and receive IPv4 # traffic with addresses in the form ::ffff:192.0.2.1 and daemons listening # on IPv6 sockets will also accept IPv4 connections. # # When IPV6_V6ONLY is enabled, daemons interested in both IPv4 and IPv6 # connections must open two listening sockets. # This is the default behaviour of almost all modern operating systems. net.ipv6.bindv6only = 1
Turning the bindv6only to 0 and system reboot solve the issue. Now all my java applications are working like a charm.
Use a simplest gnome by not starting nautilus and the panel (2009-12-18)
Previously, I use a xsession startup script describing what I need (metacity, etc). Unfortunately some gnome interesting features were not available without a "real" active gnome session.
So I have decided to use gnome session but without application that I don't want:
- the panel (replace by cairo-dock in my case)
- nautilus desktop (I launch nautilus like this nautilus --no-desktop --browser)
So the first step is to launch the gnome-control-center and edit "Startup Applications". Here, I have added cairo-dock -c launch and conky in addition of other gnome.
No to prevent the nautilus and gnome panel start, you run gconf-editor and search /desktop/gnome/session/required-components key. You can delete the value for filemanager (nautilus) and panel (gnome-panel) key.
If you want to use the gnome panel, but reduce its size, you can edit (using gconf-editor) the /app/panel/global key.
Now you have a clean and minimal "real" gnome session.
Compose key in GTK apps including Firefox and Thunderbird (2009-12-18)
If, like me, you have a heterogeneous environment, not fully based on Gnome desktop (I use a xsession startup script containing gnome-settings-daemon, conky, cairo-dock and metacity), and that you use a US keyboard with compose key for special characters, you may have some issues in GTK based applications.
Even if your xorg.conf is well setup like this:
Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us" Option "XkbOptions" "compose:lwin" EndSection
the compose key doesn't work.
By default, GTK applications use its own key layout (that you can define in the gnome control center, in the keyboard panel). If you want to use the X11 compose key definition, you have to add:
cd ~ mkdir .xinput.d echo GTK_IM_MODULE=xim > .xinput.d/all_ALL
And it works like a charm.
Apache ACE commit permission granted (2009-12-03)I'm a new committer on Apache ACE. Thanks a lot for the ACE team.
Pax Exam 1.2.0 to test ServiceMix components (2009-12-03)I have upgraded the ServiceMix Components POM to use Pax Exam 1.2.0. This new version should correct the issue that we had to add unit test on components on SMX4. At the component level, we need to use feature descriptor coming from Karaf and the NMR. Pax Exam was able to load only one feature and so, some required bundles were not available. I keep on the servicemix-exec unit tests on SMX4.
Eclipse buttons don't work fine with Gnome 2.28 (2009-11-13)After upgrade to Gnome 2.28, I have expected strange behavior with some Eclipse's buttons: the focus doesn't seem to work and I need to use space or enter key.
To correct this problem, just define:
GDK_NATIVE_WINDOWS=true export GDK_NATIVE_WINDOWS
After that, eclipse is working like a charm.
ServiceMix POM 4 and Utils 1.2.0 released in vote (2009-11-10)
All is in the title :)
Fuse Community Day 1st - Paris - 1st October 2009 (2009-09-16)The first "Fuse Community day" will take place the 1st October 2009 in Paris. Different topics will be presented by the founders James Strachan, Rob Davies, Guillaume Nodet of the projects Apache Camel, ActiveMq and Karaf during this day.
To join the day, please register on this site: http://form.fusesource.com/forms/registerforParisDay
Here is the agenda:
09:30 Réception et petit-déjeuner
10:00 Ouverture de la conférence par Magali Briol
10:15 FUSE et OSGi par Guillaume Nodet; Membre PMC: “La technologie OSGi est au coeurs des produits FUSE. Cette présentation vous permettra de découvrir OSGi, Apache Karaf, et leur utilisation au sein de FUSE ESB.“
11:00 Enterprise Apache ActiveMQ par Rob Davies; Membre PMC et Co-fondateur: “Apache ActiveMQ is a the most widely used open source messaging system to date. This presentation will look at deploying Apache ActiveMQ in the enterprise - for high availibity, across wide area networks and how to tune Apache ActiveMQ to for performance and scalability.“
11:45 Cas client par Sylvain Thomas; Architecte Capgemini: “Recueil de données satellites via FUSE ESB. Mise à disposition de Géolocalisations et de données règlementaires.“
13:30 Intégration avec Apache Camel par James Strachan; Membre PMC et Co-fondateur: “Apache Camel is a powerful open source integration framework based on Enterprise Integration Patterns with Beans Integration. This presentation will give an overview of Apache Camel and how to implement Enterprise Integration Pattern to solve a number of integration issues.“
14:15 Camel 2.0 et le développement de solutions orientées entreprise par Charles Moulliard; Apache Camel Committer et Senior Enterprise Architecte: “Cette présentation va vous donner un aperçu des nouvelles fonctionnalités de Camel 2.0 et comment celles-ci vont aider les architectes/développeurs à construire des solutions orientées entreprises dans un environnement OSGI.“
15:00 Pause Café
15:15 Intégrer JBI et OSGi avec ServiceMix4, JBI Components nouvelles caractéristiques et roadmap par Jean-Baptiste Onofré ; ServiceMix Commiter: “Présentation des différentes versions de ServiceMix. Modularité au sein de ServiceMix4 (kernel Karaf, NMR, composants). Publication de WSDL pour facilité l'utilisation des composants.“
16:00 Introduction à FUSE Integration Designer par James Strachan et Rob Davies: “FUSE Integration Designer is an Eclipse tool design to help you create, debug and deploy your integration solutions for Apache Camel, ServiceMix and ActiveMQ.“
16:30 Fermeture de la conférence
ServiceMix Exec WSDL support (2009-09-02)The latest version of ServiceMix Exec component has been submitted to vote today. This version includes WSDL support. It means that an exec endpoint register an abstract WSDL into its descriptor. Like this, a SOAP compliant front endpoint (such as HTTP or CXF-BC) generates a concrete WSDL using the abstract one.
Now, the users can directly expose an exec endpoint and use it directly using a SOAP envelope.
ServiceMix RMI Component (2009-08-04)A new ServiceMix binding component is on the road: ServiceMix RMI. This component allow to bind a RMI endpoint into the ServiceMix RMI registry (consumer mode) or to connect to a remote RMI server to make some calls (provider mode).
As for the other new components, it supports WSDL. The WSDL can be provided by the user or can be generated using the remote interface. I'm working now to manage the data binding. http://svn.apache.org/repos/asf/servicemix/components/bindings/servicemix-rmi/trunk/
Programmatically generate a WSDL from a POJO/Interface using CXF and wsdl4j (2009-08-04)In the servicemix-rmi component, I have to generate a WSDL (document and definition) based on a given POJO or remote interfaces.
To do it, the first step is to use CXF to get the WSDL definition. For my need, I have used the simple frontend but you can use JaxWs subclass:
SimpleServiceBuilder serviceBuilder = new SimpleServiceBuilder(); serviceBuilder.setServiceClass(MyClass.class); serviceBuilder.setDataBinding(new AegisDatabinding()); ServiceInfo serviceInfo = serviceBuilder.createService(); ServiceWSDLBuilder wsdlBuilder = new ServiceWSDLBuilder(BusFactory.getDefaultBus(), serviceInfo); Definition definition = wsdlBuilder.getDefinition();
Now, we have our WSDL definition. We can use wsdl4j to create the WSDL document corresponding to our WSDL definition:
WSDLWriter writer = WSDLFactory.newInstance().createWSDLWriter(); Document document = writer.getDocument(definition);
And that's it: we have generated a WSDL correspond to MyClass and get the definition and description of this WSDL.
NB: the WSDL is a concrete one. If you need an abstract one, you need to apply some cleanup on the ServiceInfo.
WSDL support in SMX components (2009-07-29)Currently, most of SMX components uses a "proprietary" message format. For example, servicemix-exec or servicemix-smpp uses a specific XML format. Of course it works fine but presents disadvantage:
- a documentation is require describing the XML format (XSD).
- most of the time, the exchanged messages needs to be transformed to be usable by others endpoints.
- the component can't be directly exposed by a WSDL compliant endpoint (such as HTTP or CXF-BC).
The purpose is add an abstract WSDL into the component, describing the default port type (operation) and used in and out message, including the message types.
With this behavior, the servicemix-exec can be exposed directly using the servicemix-http component for example. In this case, the servicemix-http component add concrete WSDL to the abstract (it adds SOAP binding and service). The end user can easily create a in message using the WSDL and a client can be easily created (using Apache CXF wsdl2java for example).
The marshaler implements the WSDL described behavior and uses JAXB to dynamically bind the incoming XML to Java object.
Like this, the components are more agile, "auto" documented and more easy to use.
SMX and DTD validationI have add a new property in ServiceMix utils (1.2.0-SNAPSHOT) to define if a XML has to be validated using a DTD or not. By default, ServiceMix doesn't validate but you can turn this feature on using:
Connect to SMX4 JMXIf you encounter issue to remotely connect to your SMX4, I can be due to a mistake in the hostname.
ServiceMix Exec and ServiceMix LDAP components are now in the ASF SVN repo (2009-04-23)I have migrated the servicemix-exec and servicemix-ldap components to the ASF SVN repo. A first usable snapshot of servicemix-exec is available. You can find the source here:
BuildProcess AutoDeploy is now under Apache license (2009-02-08)A deep change is in progress on the AutoDeploy head branch. AutoDeploy (new 1.0 release) will use the Apache license (in preparation of the migration to the Apache Software Foundation under the name of Apache Kalumet) and a new project layer is in progress (using separate POM).
You can see the progress of the change on the subversion repo :
ServiceMix Exec Component (2009-02-08)I have begun a new ServiceMix component : the Exec one.
This component is a Service Engine allowing to execute a system command using arguments provided in an incoming normalized message, and return back a normalized message with the system command execution results.
For now, the component is on my local subversion repo :
Discussion around how to share Camel components and ServiceMix JBI components (2009-02-03)The new ServiceMix components proposal includes the LDAP one. Camel already provides a LDAP component.
So the coming question is : why to create a ServiceMix JBI LDAP component whereas Camel already provide one and that ServiceMix includes Camel ?
The main difference between Camel component and a ServiceMix one is that a Camel component doesn't include a live cycle as a JBI component supports.
Nevertheless, we can add this component live cycle over a Camel component.
The ServiceMix LDAP component will be a candidate of this implementation. Comparing the ServiceMix and Camel components, we can define a design to do it.
ServiceMix LDAP Component (2009-02-03)A new ServiceMix binding component is on the road. The LDAP Binding Component is able to poll and send on a LDAP directory server. The LDAP is polled using a base search and filter, the returning entries with attributes are formated in XML and send into the NMR. In the same way, the component are able to receive a message from the NMR, construct an entry and add in the LDAP directory.
For now, it's in early alpha stage.
ServiceMix SMPP Component (2009-01-31)I have developed a SMPP binding component for ServiceMix. This component is able to send and poll mobile SMS (using a SMPP gateway server) into the ServiceMix NMR.
The component itself is quite complete now, I need to add deeper unit tests (especially providing a SMPP server mock).
ServiceMix SU Classpath Extension (2009-01-23)Currently, in ServiceMix, it's possible to use <classpath/> tag in a SU xbean.xml to extend the SU classloader (with a location, sharedlib, component, etc). The problem is that, currently, the <location/> takes File object. I'm going to extend this to use JarUrlConnection to be able to use Jar entries (for exemple inside an ear). With this patch, user will be able to use :
<classpath> <location>jar:file:/path/to/my.ear!/lib/my.jar</location> </classpath>http://issues.apache.org/activemq/browse/SM-1771
BuildProcess AutoDeploy becomes Apache Kalumet ? (2009-01-20)BuildProcess AutoDeploy is a automatic environment upgrade tool mainly focus in the JEE world. It supports main JEE application servers (RedHat JBoss, Oracle Weblogic, IBM Websphere) and covers extra middlewares (such as static content (batches, etc), CMS, configuration files, etc).
AUtoDeploy is now developed since 4 years and already provides stable production release used by several customers (Fimasys, Vodacom South Africa, Mayo Clinic USA, etc).
To speed up the development of AutoDeploy and increase the popularity of the tool, I have proposed Kalumet to the Apache Software Foundation. Apache Kalumet is the port of AutoDeploy to the ASF. In fact, it's the 0.6 release of AutoDeploy (based more on Spring, Java5, etc).
There is a discussion thread in the Apache Incubator mailing list.
I hope that the proposal vote will be plan soon.
Fimasys FSB based on Apache ServiceMix (2008-12-20)A first release of the FSB (Fimasys Service Bus) has been released. It's an ESB oriented to business (financial/credit). It allows to easily integrate Fimasys ProFinance and WebEpargne products (SOI) in existing software environment. The FSB is based (of course :)) on Apache ServiceMix 3.3.0.
Editer cette page
Attacher un fichier...
|Cette page a été modifiée pour la dernière fois le 26-Aug-2011 21:13:21 CEST par 192.168.134.20.|