Context Sensitive Help For Web Applications

Providing help topics relevant to current usage scenarios is a demanding requirement in today‚Äôs enterprise web applications. It is generally called as context sensitive help. Those help systems should automatically navigate to relevant help topics in help windows according to current business process, current web page, or currently focused component in those pages. There are […]

Read More →
Providing Tooltip Help Messages Dynamically Using Ajax Functionality

This is actually part of context sensitive help requirements in our web application project. We should be able to provide small informative messages for html components displaying them as tooltips in our web pages when user moves mouse over those components. It is also in the requirements that continiously appearing tooltip message windows in those […]

Read More →
Enabling SSL with Client Authentication in Tomcat

It is very common to enable SSL only with server authentication, because it is required from SSL specification. However, it is not so common to activate client authentication as it is optional. Enabling SSL is a server dependent process. I first give a rough overview of this process step by step and then explain each […]

Read More →
Delegating Authentication to JAAS Module in Acegi Security

We are currently using Acegi Security in our web project. At the moment we employ its form based authentication. In the future, we have to integrate our web application with an environment, in which JAAS based single sign on mechanism will be used for authentication. For this moment, as a first step, we tried to […]

Read More →
A Generic JRDataSource for JasperReports

It is possible to pass data to JasperReports templates via a custom data source, which implements JRDataSource interface. Reporting engine iterates over report data collection with boolean next() method, and evaluates field expressions by asking value for them from the data source instance with calling Object getFieldValue(JRField) method. One most probably implements custom data sources […]

Read More →
Experiences with JasperReports and iReport Designer

JasperReports has subreporting concept to deal with complex report template requests, dividing main part into logically related and more manageable smaller subreport chunks. If you have, for example, a report that have a part, in which list of data items appear as a data table, that is a natural candidate to be a subreport. Table […]

Read More →
Styling HTML Input File Elements

It is almost impossible to make html input file elements look the same as the other parts of web applications. Browsers provide few possibilites to style them or nothing at all. However, within the newer versions of browsers, you might apply some tricks to alleviate this common styling problem, and one neat way, explaining how […]

Read More →
Switching Application Required System Properties According to Deployment Environment

Any serious application depends on a number of configuration properties, such as JDBC connection properties, caching properties etc. They should change according to target deployment environment. People employ different methods to take those properties outside their web applications. Among them, one commonly used method is to create a properties file and collect any property, whose […]

Read More →
Managing Dependencies With Ant

Every non-trivial java application have many dependencies on other resources, especially jar files. We have to keep track of which jars we are making use of, and their versions as the project develops. Systems may have several releases during their development life cycle, and among those releases, dependency lists may change, new jars may be […]

Read More →
Mocking ResourceBundle

If you want to unit test a method that depends java.util.ResourceBundle, and want to isolate bundle access code with mocking ResourceBundle, using for example, JMock Dynamic Mocking Library, you will face with a restriction, that commonly used methods, such as getString(key) are defined as final in ResourceBundle class. There is no way to extend and […]

Read More →