Posts
Conditional Java Configurations in Spring Framework
Spring Framework offers very flexible means for binding application components. Externalizable properties, composite configuration, nested application contexts and profiles.
Sometimes, it is necessary to control whether particular beans or @Configuration
will be loaded or not. Spring Framework v.4.1.x does not provide that feature out of the box. But, hopefully, Spring allows conditional bean initialization (see @Profile
implementation and @Configurable
).
So, I created the annotation @Enabled
which allows me to control bean instantiation via properties.
@Enabled
indicates that a component is eligible for registration when evaluated expression is true. This annotation should be used in conjunction with Configuration and Bean annotations.
JDBC Driver Settings for Oracle RAC
If you are modifying your java application to use Oracle Real Application Clustered (RAC) Database instead of standard single-node database server (Express or Standard edition), then you need to modify settings of your JDBC driver.
JAX-WS with Custom SSLSocketFactory
It’s very easy to configure custom SSLSocketFactory for JAX-WS web-service: just specify custom property referring to SSLSocketFactory
bean.
But there is a nuance…
Useful Code Templates for Jetbrains Idea
Jetbrains Idea is a perfect IDE (sorry, Eclipse fans). But, like every tool, sometimes it needs some customization to fit your needs. Today I want to show how to adjust it’s code-generation templates.
When you generates a new class or method using Idea, it creates one using predefined templates. You may modify that template in “Settings -> File and Code templates” section.
Chef for Managing Small Cloud Infrastructure
I need to manage a small cloud server infrastructure. I have no intention to edit configs by hand all the time, nor write deployment scripts myself.
Instead, I’ll give a chance to Chef-Solo – a smaller sibling of well-known configuration management tool Chef.
Recommended Scrum Presentations
For those, who not yet familiar with Scrum, I highly recommend to watch the “Scrum Training Series” presentations and the AgileMethodology.org website.
A Scrum Reference Card is also useful to understand what the Scrum is, it’s processes, roles and practices.
The presentations describes the Scrum process step by step.
Introduction to Scrum #
WebJars: Easy Packaging Client Libraries
Jolokia: HTTP/JSON bridge for JMX
Very often there is a need to monitor the Java application server. For example, external monitoring tool, like Nagious/Zenoss/Zabbix needs to get some metrics, like heap memory usage or thread count.
Usual way to get that metrics is to setup access to application server via JMX.
But, sometimes, it is not possible to leave some other port opened for JMX and the only port available is HTTP(80 or 8080) or HTTPS(443 or 8443).
Here the Jolokia comes to rescue!
JSON Validation with JSON Schema
JSON has became a de-facto standard for webservices, replacing XML web services. It has native support in web browser clients.
That makes JSON is the standard of choice for UI-oriented services. It has a good support on mobile devices. Also, it provides smaller data payload size compared to XML and it’s very sufficient for high-load systems as it saves a traffic. But what is for data validation? For XML web services there is a XML Schema. It comes ti mind, that similar standard for JSON should be called “JSON Schema”. And it really exists!