Skip to main content
View by: Most Recent | Topic | Community | Webloggers   
Monthly Archives:    

Blogs by topic: GlassFish

• Accessibility • Ajax • Blogging • Business • Community 
• Databases • Deployment • Distributed • Eclipse • Education 
• EJB • Extreme Programming • Games • GlassFish • Grid 
• GUI • IDE • Instant Messaging • J2EE • J2ME 
• J2SE • Jakarta • JavaFX • JavaOne • Jini 
• JSP • JSR • JXTA • LDAP • Linux 
• Mobility • NetBeans • Open Source • OpenSolaris • OSGi 
• P2P • Patterns • Performance • Porting • Programming 
• Research • RMI • RSS Feeds • Search • Security 
• Servlets • Struts • Swing • Testing • Tools 
• Virtual Machine • Web Applications • Web Design • Web Development Tools • Web Services and XML 


Asynchronous operation was introduced in Servlet 3.0. ServletRequest#startAsync is used to put the request into asynchronous mode. A thread need to be created implicitly or explicitly (see here for an example). Servlet 3.1, JSR 340 includes clarifications in asynchronous area. Besides Servlet 3,1, Concurreny Utilities for Java EE 1.0, JSR 236 is introduced in Java EE 7. JSR 236 provides a...
on Jun 6, 2013
Update: In Servlet 3.0, the behavior of using response is undefined after invoking #complete or #dispatch. In Servlet 3.1, it is clarified that AsyncContext#getResponse will throw IllegalStateException. The blog has been updated for this. 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...
on May 14, 2013
Update: Invoke WebConnection#close when there is an error. 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...
on May 7, 2013


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...
on Apr 19, 2013
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="" ...
on Apr 19, 2013
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...
on Mar 18, 2013


Update: One should not use response in AsyncListener#onComplete. Only print debug in this example. 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...
on Apr 16, 2013


If you have wanted JSF not to store any state now is your chance to try out the stateless mode of JSF. It is as easy as doing the following: <f:view transient="true">  Your regular content</f:view> And voila you are running stateless. If you decide you do want some state to be kept at the server you can use the @xxxScoped annotations on your beans Be aware that...
on Feb 8, 2013
The following blog articles are part of the JSF Validator series Introduction to JSF Validators The JSF Validator API The LengthValidator The LongRangeValidator The DoubleRangeValidator The RegexValidator The RequiredValidator Writing your own Validator Packaging your JSF Validator Multiple component validation The BeanValidator The FacesValidator annotation
on Sep 17, 2012
In the previous blog entry titled "Writing your own validator" you learned how to write a validator and hook it up for validation. At that time we made it all work using the faces-config.xml file. There is however another way, which we will describe below!   package nohelloworld;  @FacesValidator(value="NoHelloWorldValidator")  public class NoHelloWorldValidator...
on Sep 17, 2012
Since JSF 2 it is also possible to use BeanValidation as specified in JSR 303. The following blog article describes how this JSR has been integrated within JSF 2. With the following JSF managed bean. public class UserInfo {    /**     * Stores the username.     */    private String username;    /** ...
on Sep 17, 2012
Writing your own validator is a straightforward process. It involves implementing the Validator API and making sure you register it properly. Say you want to write a validator that will not allow you to use the string "Hello World" as a value.   package nohelloworld;  public class NoHelloWorldValidator implements Validator {        public void...
on Sep 9, 2012
Note this blog is obsolete, see for the current blog Say you want to make sure that a value is required. <html xmlns:h=""  xmlns:f="">  <h:inputText value="#{user.firstName}">   <f:validateRequired/>  </h:inputText...
on Sep 7, 2012
Note this blog is obsolete, see for the current blog If you want to validate input against a regular expression then you would use the RegexValidator. Say you want to make sure only letters are used for a name. <html xmlns:h=""  xmlns:f="">  <h:inputText...
on Sep 6, 2012
Note this blog is obsolete, see for the current blog Just like the LongRangeValidator before the DoubleRangeValidator validates if the given value is within the given range, but then a range of doubles. Say you want to make sure your donors can donate as little as 1.00 but at most 250.00. <html xmlns:h="" ...
on Sep 5, 2012
Note this blog is obsolete, see for the current blog The LengthValidator is one of the standard validators that is specified by the JavaServerFaces specification. It allows you to verify (validate) if the proposed input (submitted value) on a given component is valid. Say you want to make sure the minimum length of a password is 6 characters and up to 12...
on Sep 4, 2012


I am glad our team and me ofcourse, part of the Support mySchool project in WorldBank for Indonesia's Ministery of Education and Culture (MoEC), the URL is The first social media that linked with all the role in our govermental (from ministery directorate, province's education structure, district's educatio structure and schools structure). The public...
on Dec 13, 2012
Oracle just give free ADF Essential on Glassfish, a streamline edition of ADF. An interesting thing is there are also OEPE (Oracle Eclipse Plugins) that have ADF inside. which the Jdeveloper edition is far more complete and rich. ADF Essential is free for glassfish deployment, and with support US$ 1250/server (/core??), and you will get the source....
on Sep 29, 2012


Here are my slides on my "Remoting Retrospective" presentation at JavaOne 2012: Remoting Retrospective (pdf)
on Oct 26, 2012

Web Applications

Note this blog is obsolete, see for the current blog If you want to make sure a value is within given Long range then the LongRangeValidator is for you! Say you want to make sure your users are at least 13 but at most 18. <html xmlns:h=""  xmlns:f="">  <h:...
on Sep 5, 2012