Up and Running with Obsidian Scheduler in 5 Minutes
One of the best things about Obsidian Scheduler is how quick and easy it is to get it running jobs. With other tools, you might have to set aside an afternoon to get it going, but with Obsidian, trust...
View ArticleScheduling a Job in Quartz Versus Obsidian
We frequently compare Quartz and Obsidian in our blog, and today we’re going to see the difference in how you would schedule a job for recurring execution in both pieces of software. A Quick Note on...
View ArticleJava Enterprise Software Versus What it Should Be
A lot of developers end up in the Java “enterprise” world at some point in their careers. I know the term alone conjures up all kinds of reactions, and rightly so. Often environments where lots of...
View ArticleReusable Jobs with Obsidian Chaining
A lot of Obsidian users write custom jobs in Java and leverage their existing codebase to performs things like file archive or file transfer right inside the job. While it’s great to reuse that...
View ArticleJob Chaining in Quartz and Obsidian Scheduler
In this post I’m going to cover how to do job chaining in Quartz versus Obsidian Scheduler. Both are Java job schedulers, but they have different approaches so I thought I’d highlight them here and...
View ArticleConfiguring Clustering in Quartz and Obsidian Schedulers
Job scheduling is used on many software projects to enable both internal jobs and third-party integration. Clustering can provide a huge boost to reliability by providing fail-over and load-sharing. I...
View ArticleWhy Developers Keep Making Bad Technology Choices
Today, software developers are faced with a great abundance of options when choosing how to design and implement systems. We are constantly bombarded with choice and are used to dealing with buzzwords...
View ArticleComputing Common and Unique Elements In Multiple Collections – Java
This week, we’ll take a break from higher level problems and technology posts to deal with just a little code problem that a lot of us have probably faced. It’s nothing fancy or too hard, but it may...
View ArticleProblems with ORMs Part 2 – Queries
In my previous post on Object-Relational Mapping tools (ORMs), I discussed various issues that I’ve faced dealing with the common ORMs out there today, including Hibernate. This included issues related...
View ArticleEasy Deep Cloning of Serializable and Non-Serializable Objects in Java
Frequently developers rely on 3d party libraries to avoid reinventing the wheel, particularly in the Java world, with projects like Apache and Spring so prevalent. When dealing with these frameworks,...
View ArticleIgnoring Self-Signed Certificates in Java
A problem that I’ve hit a few times in my career is that we sometimes want to allow self-signed certificates for development or testing purposes. A quick Google search shows the trouble that countless...
View ArticleTesting GWT Apps with Selenium or WebDriver
Good functional testing is one of the most difficult tasks for web application developers and their teams. It is a challenge to develop tests that are cheap to maintain and yet provide good test...
View ArticleSwapping out Spring Bean Configuration at Runtime
Most Java developers these days deal with Spring on a regular basis and there are lots of us out there that have become familiar with its abilities as well as its limitations. I recently came across a...
View ArticleEvolving Document Structures with Morphia and MongoDB
In my previous post on Morphia, I went through some typical usages and mentioned some caveats and workarounds for known problems. I showed how easy it is to work with Morphia and how cleanly it...
View ArticleJava Concurrency Part 6 – CountDownLatch
Some concurrency utilities in Java naturally get more attention than others just because they serve general purpose problems instead of more specific ones. Most of us encounter things like executor...
View ArticleProblems with ORMs
Object Relational Mapping tools like Hibernate have helped developers make huge productivity gains in dealing with relational databases in the past several years. ORMs free developers to focus on...
View ArticleJava 7 is Pathetic
Java 7 is finally nearing general release, but I have to say that I’m fairly unimpressed by the features being delivered considering Java 6 was released 4 1/2 years ago. It’s already been delayed for...
View ArticleScheduler Monitoring Done Right
One of the most important features of Obsidian is the ability to be notified of application events and also quickly locate and correct any issues that arise. While products like Quartz and cron4j give...
View ArticleUsing MongoDB with Morphia
In the past few years, NoSQL databases like CouchDB, Cassandra and MongoDB have gained some popularity for applications that don’t require the semantics and overhead of running a traditional RDBMS. I...
View ArticleConcurrent Collections – Map Time!
Java has boasted various collections classes for many years now, all to deal with common programming problems. When we need synchronized collections, we used to just wrap our regular collections with a...
View Article