A query for persistent Java™ objects is typesafe if a compiler can verify it for syntactic correctness. Version 2.0 of the Java Persistence API (JPA) introduces the Criteria API, which brings the power of typesafe queries to Java applications for the first time and provides a mechanism for constructing queries dynamically at run time. This article describes how to write dynamic, typesafe queries using the Criteria API and the closely associated Metamodel API.
Online attackers grow more ingenious, with their exploits becoming more audacious and potentially more lucrative. We say crime doesn't pay, and yet the aggregated scale of online crime puts attackers' revenues at around the GDP equivalent of a large country. As software professionals, we have a duty to fight these attackers, and the means to do it in our arsenal of software tools and techniques. One key technique is data validation, which can filter out all kinds of nasty data. Stephen B. Morris explores Java-based validation with some examples using Hibernate Validator.
The Resource Description Framework (RDF) is the World Wide Web Consortium (W3C) proposed standard for linking and expressing data on the Web. Java™ developers who develop applications for the Semantic Web will need to convert RDF properties to or from Java types. Jenabean uses the Jena Semantic Web framework's flexible RDF/OWL API to persist JavaBeans, making the task of writing these applications easier and more familiar to Java developers.
The IBM Application Pattern for Java lets you easily move any existing Java application into a cloud-based environment and make it reusable as either a platform or a modifiable template. Find out how this pattern works with IBM's cloud offerings, and get started with step-by-step instructions — including two video demos — for creating, deploying, and monitoring Java virtual applications in a variety of usage scenarios.
This article gives you a hands-on introduction to developing for and deploying on the Amazon Elastic Compute Cloud (EC2). Learn how EC2 differs from Google App Engine, and leverage an Eclipse plug-in and the concise Groovy language to get a simple Web application up and running quickly on EC2.
The Metro Web service stack provides a comprehensive solution for accessing and implementing Web services. It's based on the reference implementations of the JAXB 2.x and JAX-WS 2.x Java™ standards, with added components to support WS-* SOAP extension technologies and actual Web service deployment.
WS-Security offers powerful features for securing Web service applications, and for many applications these features are essential. But these features come at a high cost in terms of performance and message overhead. Dennis Sosnoski continues his Java Web services column series with a look at how using WS-Security or WS-SecureConversation affects Axis2 performance, and he discusses when the simpler (and better performing) alternative of HTTPS-secured connections is a more appropriate choice.