Get a Quote

Your source for insights and trends in software development

System Tray in JavaFx

Java SDK (since version 1.5) provides default support of system tray, which works fine in Windows, Linux and MacOS. But, unfortunately, this feature is disable for JavaFX. Let’s see how to enable this possibility using reflection. TrayManager Let’s create simple JavaFx class, which will work with java.awt.SystemTray and java.awt.TrayIcon via reflection. Note it will not wrap all methods of these classes – it will just provide main possibilities. public class TrayManager { var trayIcon : Object;var trayIconClass : Class;public-init var…

GWT & YUI integration

Google Web Toolkit (GWT) provides a lot of useful widgets, which covers a lot of needs. But, unfortunately, it does not provide widgets for charts. Thus in this post I’d describe integration GWT application with Yahoo UI (YUI) Charts. Note I’ll build my sample around Yahoo UI sample (http://developer.yahoo.com/yui/charts/). Getting started To use YUI Controls we need to include Yahoo JavaScript libraries into application’s html page:

It will be better to place them into the end of main html…

Dynamic text height in JasperReports

Dynamic text height in JasperReports

JasperReports is an open-source java library to build reports. It tightly integrates with the JFreeChart to provide charts. For me, JasperReports is one of the best open source solutions I’ve ever used. It’s really customizable and configurable and you can do really fantastic things with it. While working for about a year with JasperReports, I’ve met several limitations and places which could be implemented better. So I plan to describe some solutions I’ve found here. The first thing I’ve mentioned…

Strange problem in Oracle hierarchical query

Today I’ve decided to get rid of the Windows virtual where Oracle XE 10 and to move data to Oracle XE installed on my Fedora host. Everything seemed to migrate correctly using imp/exp utilities. After I ran the appllication server and tested it a bit, I’ve ran into the problem with the hierarchical queries. I’m trying to run the query like: SELECT sys_connect_by_path(ent.STATE,’//’) as state FROM E1 element LEFT JOIN E2 ent ON element.id = ent.id WHERE CONNECT_BY_ISLEAF = 1…

JRebel

Today I’ve got a chance to play with the JRebel library a bit. It’s really cool for J2EE developers who do not wish to restart application server after rebuilding application code. It can save you a large amount of time. JRebel provides its own classloader which wraps every class of the application with a small additional logics. It allows you to replace classes in runtime without redeploying/restarting your application and allows to see class changes immediately. It’s very easy to…

Advanced logging systems

is always nice to have a good logging system, that will help programmer to understand what happened in case of crash or non proper behaviour. Well, if it crashed it is usually quite easy to find a place where it crashed, but lets assume some part of your system misbehaved that cause misbehaviour of another system. This situation still OK if you can debug your program and know exactly the preconditions. But lets assume you are running the production system,…

Opening report file after generating it

Just a small feature which can save you some time during the report development. When you develop reports you usually have a sort of template to generate report from and some test data to see how the report is generated. Once you’ve generated a report file – you need to look through it if it’s something like PDF. The following java code:Desktop.getDesktop().open(new File(‘report_file_path’));will open the generated file based on the associations of your window system and will save your some…

Getting Started

SoftTeco is a young growing offshore software development company, based in Minsk, Belarus. We develop applications of different sizes, from mobile to enterprise-scale solutions. Every day we encounter issues we need to solve. The purpose of this blog is to share these “everyday issues” not only within our team, but also with others, who may be interested in the given topics. We would be glad, if our posts deserve your attention, or even make you write some independent comments and…

Ready To Take The Next Step?

quote Get a Quote

Sumbit your project request by special form.
We'll get to you promtly with our costing of your project.