I lived and breathed JIDE for about 2 years. As the main developer of my company Swing GUI, JIDE has made my life easier and harder.
Firstly, the good part.
the width and depth of its components are incredible. There are 171 elements in their latest version, and most of them are designed for different components. It was supposed to be swing. The company is really small, but you cannot say that they only have “one product” (re @Stephen C). You will not find any other component package that has everything from selecting a date and a pop-up window to a list and table with the ability to search and filter, to rotate the table and join.
Their support is surreal. It’s true (for @ Carlos) that the forum is the only way, but the time and quality of their answers are really amazing (I'm the third poster there, so I know). Many of my posts are new features and API changes (e.g. private → protected), and they execute the vast majority of them in one or two releases (which means a few weeks to a month at most).
You can buy a source code license for the complete source code without a phobia. I would highly recommend you (I wish I could get a sales commission from them) if you plan to use their more sophisticated products, such as arch and docking.
Once you have the source code, you can make many adjustments if you need, because the code is very open and well structured for extension . It is sometimes risky to distribute undocumented classes / methods, but they kept their code very robust.
And I have to say that their code quality is at the top. It's not scratchy clean (it's as big as Swing), but I never had to scratch my head and wonder at WTF.
They have a very strong developer guide (scroll down the page) for each product group. javadoc is great. A full demo is a great way to learn the components and functions. The documentation was the main reason I chose JIDE for docking over FlexDock (and later I found that JIDE docking also has a lot more options).
Now the tricky part.
As @Carlos noted, with each version they introduce regressions . It seems that they do not have fully complete and fully automated regression tests, but this is probably almost impossible, given the complexity and interactivity of their products, especially for things like turning and docking. Despite the fact that they fix everything very quickly, you always have to wait, and then switch to the new version to find other regressions. This suggests that my GUI application for Google sent several versions without major problems.
I mainly used many of their several stand-alone components, such as date picker, balloon tooltip, status bar, multi-page dialog, etc. and two of their most complex products: pivot table and docking. (Sorry, no JDAF.)
They are complicated for good reasons. OLAP is its own industry, and docking is the foundation of all modern IDEs. That is why I did not call this section the “bad part”. Drilling and docking is difficult to use not because of their quality, but because of their complexity .
For example, the JIDE docking manager has over 70 primitive bean properties (starting from 2.9.5). Some of them are interdependent, and it takes some time to figure out how to configure them for your specific needs.
All in all, I would recommend JIDE without any reservations. It would be very unfortunate if you cannot use it because of its decency, and in this case do not even look at its demo version, otherwise you will find everything else that is missing.