A site about Talend
Have you ever wanted to write your own Talend component and, maybe, add it to the TalendeExchange? In this series of articles, you'll learn all aspects of component writing. We'll uncover some of the mystery as, despite some great work by the Talend community, component writing has remained a poorly documented subject.
I've included the tJavaFlex component in this core series of tutorials as it provides a good understanding of the main code-sections that make up components, and how components interact with each other. If you understand tJavaFlex, then you will have a good head start in understanding component design.
These reference articles describe in detail, the files that make up a component. Read these in conjunction with the core tutorials, or use them on their own for reference.
A component is a neatly packaged piece of Java code, that appears in the Component Palette. The Component Palette is usually found on the right-hand side of the Talend Studio Design Window, when you have a Job open. Talend provides over 800 pre-built components, all of them designed to perform a specific task. You add these components to your Job, connect them, configure them, and then things happen.
Despite the large number of components that Talend provides out-of-the box, we often find that that we want to extend the functionality of an existing component, or perform some completely new task that Talend had not thought of.
That's not to say that you always need to write a component. You can usually navigate around missing functionality by configuring existing components, or using the Custom Code components such as tJava or tJavaFlex.
If you want to use your custom functionality in more than one of your Jobs, or you want to share your work with others, it is convenient to be able to neatly package it up in to a component.
If you've written a component that you believe others will find useful, you can add your component to the TalendeExchange. Here, other Talend developers can download and use your custom component, provide reviews and feedback. There are already over 600 components on the TalendeExchange.
It's not difficult to write a custom component, provided that you are familiar with Java or a similar language. As with any development, the difficulty of component writing depends on the complexity of the task that you're trying to achieve.
Unfortunately, Talend component writing has been poorly documented, so at first, a lot of the techniques will appear mysterious. I'm sure that even the most experienced of component writers are still scratching their heads as to why some things are the way they are, and, exactly what some of the configuration options really mean.
As previously discussed, your new component may be an extension to some existing functionality that is already provided by Talend, or it may be something completely new; which you have written from scratch. You will find that many of the Talend components, whether they are out-of-the-box, or found on the Talend Exchange, are simply wrappers to existing Java libraries that others have created. This is a great way for quickly extending the functionality of Talend, whilst using proven and reliable code.
Designing your own components is a great way to really start to understand the nuts-and-bolts of how Talend works.