Today, we are being inundated with data. So much so, that IBM estimates that in 2012, 2.5 quintillion bytes of information are generated every day. That's a million trillion bytes of data, more data than we can fathom and considerably more than we can easily process. Online, every web-page we visit, every link we click, every phrase we search, every photo or video we upload, every "like," every purchase we make, and every comment we write generates some amount of data online with associated metadata (data about that data, such as date and time, and other useful information). Our online footprints generate not only large quantities of data, but equally large amounts of insight as this data can lead to real value if processed appropriately. This modern data deluge has been called Big Data, and it's only getting bigger. In this article based on chapter 1 of Pig in Action, author Tim Jones talks about how Pig democratizes Big Data.
The applications have grown together with the man dream to get more and more information, then more application have been emerging and the man had became hostage of the application.
For example we can recognized the evolution between man and machine:
In the first time: Many men to just one machine ( like mainframe's age) then one man to one machine ( in to Personal computer era) and...
Asynchronous operation is supported in Servlet 3.0. I have discussed startAsync in my previous blog, startAsync in Servlet 3.0. In this blog, I will discuss AsyncContext#complete. The javadoc of AsyncContext#complete has the following:
Completes the asynchronous operation that was started on the request that was used to initialze this AsyncContext, closing the response that was used to...
Servlet 3.1 Specification (JSR 340) is almost ready for the release. One of the new features is the support for protocol upgrade.
HTTP protocol upgrade was introduced in HTTP 1.1 (RFC 2616):
The Upgrade general-header allows the client to specify what additional communication protocols it supports and would like to use if the server finds it appropriate to switch protocols. The server MUST use...
Acteur - a framework for building scalable, asynchronous web applications using Netty + Guice with an interesting programming model
Web Forms is one of the exciting new features of the recently released BPM 126.96.36.199. To really embrace the power of Web Forms, one must understand Forms Rules, which can give your forms dynamic behavior, such as showing a field or calculating a sum total. In this example, I'm going to show you how to use Form Rules to dynamically populate a dropdown (or list).
Web Services and XML
By default, all connections to the Oracle Cloud are encrypted. Browsers automatically import the necessary certificates, however, when trying to access these services from a Java client, you will not be immediately successful.
In this blog entry I outline the steps necessary to deploy JAX-RS (JSR 311) RESTful web services to the Oracle Cloud. We'll be using Jersey, which is the reference implementation for JAX-RS, and JDeveloper, which is my primary Java IDE.
Servlet 3.1 (JSR 340) is almost ready for the release. One of the new features is the support for non-blocking IO. ReadListener and WriteListener are introduced to allow non-blocking processing in Servlet.
Non-blocking IO can only be used in async (defined in Servlet 3.0) or the upgrade mode. We can set the async in a servlet with @WebServlet annotation.
In this blog, we will illustrate the use...
classes are dead, long live to lambdas
Servlet 3.1 Specification (JSR 340) and Java Authorization Contract for Containers (JSR 115) MR3 are almost ready for release. Besides "*", the role-name "**" is introduced in the above two specifications.
In a nutshell, "*" means any role defined in web.xml and "**" means any authenticated user.
Prior to Servlet 3.1, web containers use proprietary mechanisms to add security-constraints for any...
Servlet 3.1 Specification (JSR 340) is almost ready for the release. Several new security features have been added in this version of Servlet specification.
In this blog, I will explain one of the security features, namely deny-uncovered-http-methods.
Let us take a look at a simple security-constraint in web.xml as follows:
<web-app xmlns="http://www.w3.org/2001/XMLSchema" ...
Servlet 3.1 was in Public Review in Janurary 2013. And it is in Proposed Final Draft now. Most of the new features are related to security.
In this following, I will highlight features since Servlet 3.1 Public Review:
add new API javax.servlet.http.Part#getSubmittedFileName
add new API javax.servlet.ServletContext#getVirtualServerNameThis API allows a JASPIC module to be registered in a Servlet...
Creating a JavaFX 2 (or should I say FX8) application can be a time consuming task. We all got used to powerful frameworks helping us creating such applications based on Swing (NetBeans Platform) or SWT (Eclipse). There even was an attempt at getting this standardized in Java for Swing - JAF anyone? So where is such an application framework based on JavaFX 2/8, which leverages all the nice things from Java7 and 8?
Kanban is an approach to software development based on the principles of lean. It has quickly been picked up by many businesses around the world. You can pick it up too! This article, based on chapter 2 of Kanban in Action, defines kanban, introduces kanban principles, and gets you started using kanban.
Atlassian has made some seriously great products, for example the project tracker JIRA. We recently upgraded our rather archaic version of JIRA at Magnolia to the latest and greatest offering. Everyone in the team found something in this upgrade. Some of us were desperate to use GreenHopper, others were looking forward to a better LDAP integration, and my personal favourite was the new REST API...
Sometimes, life drops a house on your code. Sometimes, it's flying monkeys. Most of the time though, the damn stuff just stops working and it's nothing so obvious as being crushed by a Kansas farmhouse or being carried away by winged primates.
For this last common case, there are a good number of great tools to help you out. JMeter may help you to reproduce the conditions under load, while...
And now you can go stateless!
by Michael Fogus and Chris Housen, authors of The Joy of Clojure
In many cases, Clojure's compiler will be able to highly optimize idiomatic Clojure source code. But there are times when the form of your functions, especially in interoperability scenarios, will prove to be ambiguous or even outright counter to compiler optimizations. In this article, based on chapter 12...