Recent Notes

Displaying keyword search results 1 - 10
Created by Fang on March 05, 2012 20:32:37    Last update: March 05, 2012 20:32:37
In this simple example, I create a simple validating bean and create a JUnit test to test the validation. The bean ( src/main/java/com/example/Person.java ): package com.example; import javax.validatio... The test ( src/test/java/com/example/TestPerson.java ): package com.example; import java.util.Set; ... Run the test: mvn clean test You'll notice that one test passed and the other failed. The tests require that a person must have a name and the name cannot be empty, so @NotNull is not the right rule to use here. To make sure that the name is not empty, we need to use @Pattern . But since a null String matches any pattern, @NotNull is also needed: package com.example; import javax.validatio...
Created by Fang on October 31, 2011 21:10:10    Last update: October 31, 2011 21:13:10
In this example I'll add a parameter to a facelets template. The example contains three tabs, each tab points to a different page. The tab control is shared among all pages, therefore, it is put in the template. Starting from the simple facelet example , make these additions: Create a new template WEB-INF/templates/tabs.xhtml : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Stric... Add a page for the about tab ( about.xhtml ): <?xml version="1.0" encoding="UTF-8"?> <ui:comp... Add a page for the news tab ( news.xhtml ): <?xml version="1.0" encoding="UTF-8"?> <ui:comp... Add a page for the partner tab ( partner.xhtml ): <?xml version="1.0" encoding="UTF-8"?> <ui:comp... Build and re-deploy the application. Launch the browser and load page http://localhost:8080/facelet-demo/about.jsf . This is a screenshot:
Created by Fang on October 28, 2011 14:49:53    Last update: October 28, 2011 14:52:19
Facelet templates can be nested, for example, a page can use a template which inherits from another template. To demonstrate this, let's start from the simple example and make these additions: Add a place holder for CSS style sheets in WEB-INF/templates/default.xhtml : <h:head> <title>Facelets Template Demo</tit... Add a derivative template ( WEB-INF/templates/default-style.xhtml ) which provides CSS: <?xml version="1.0" encoding="UTF-8"?> <ui:comp... Add a page that uses the styled template ( home-style.xhtml ): <?xml version="1.0" encoding="UTF-8"?> <ui:comp... The only difference between this file and home.xhtml is the template being used. Compare the display of the pages home.xhtml and home-style.xhtml .
Created by Dr. Xi on July 14, 2011 11:50:28    Last update: July 14, 2011 11:50:28
This is not to make the size of the array smaller, but to remove the leading and trailing spaces in each element. This works: String[] a = { " 1 ", " 2 " }; for (int i = 0; ... This does not work: for (String s: a) { s = s.trim(); }
Created by Dr. Xi on July 14, 2011 09:28:57    Last update: July 14, 2011 09:28:57
Java arrays are fixed size, so you have to make a new array with smaller size and copy the data. For JDK6 and above: // import java.util.Arrays; newArray = Arrays.c... Before that (using Object as example): Object[] newArray = new Object [newSize] ; Syst...
Created by magnum on March 25, 2011 12:31:58    Last update: March 25, 2011 12:31:58
Create an image file of the correct size $ dd bs=1024 count=1440 if=/dev/zero of=floppy.img... Make dos file system $ mkfs.msdos floppy.img mkfs.msdos 3.0.9 (31 Ja...
Created by woolf on February 10, 2011 12:51:14    Last update: February 10, 2011 13:06:11
Windows command line shell does not come with a sleep command. One trick is to emulate sleep using the ping command: C:\>ping /? Usage: ping [-t] [-a] [-n count... To sleep for about 5 seconds: @rem make sure to ping a non-existing IP, otherwis... If you have the Windows Resource Kit installed, it does provide a sleep command: C:\>sleep Usage: sleep time-to-sleep-in-s...
Created by Dr. Xi on August 31, 2008 20:43:44    Last update: January 22, 2011 12:48:08
It's probably more useful to make the JavaScript executor a bookmarklet. That way it gains access to the page on which it is invoked. Therefore, more helpful while debugging. Here's the code: <html> <body> <a href="javascript:(funct... Or, you can add this link to your bookmarks, name it "JS Executor". For a full featured JavaScript console, you may need Jash
Created by James on March 29, 2010 03:11:38    Last update: January 11, 2011 20:19:39
This is an age old problem. Since it comes up time and time again, I'm writing this down for future reference. Let's start with a two-column layout generated by the 2 Column Layout Generator : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Trans... It renders like this: The left column is shorter than the right column. How to make the left and right column the same height? Adding height: 100% to the style sheet of the left column doesn't cut it. There are several hacks, none of them are straightforward: In search of the One True Layout Faux Columns Creating Liquid Layouts with Negative Margins In short, there's no instruction in CSS that tells a DIV that its height should be 100% of that of the...
Created by James on July 19, 2009 20:51:23    Last update: January 11, 2011 20:14:18
If CSS3 border-image is properly supported, making a rounded corner box is very easy. You just need a round corner image like this: The following markup: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" ... would render like this (try it in Firefox 3.5 and Google Chrome): However, IE as of version 8.0 does not support border-image . So until border-image is reliably supported in all major browsers, we still have to rely on tried and true tricks to make it work. In general, I found three general categories of tricks to make rounded corners: Good old tables. This trick creates a table of 9 cells and uses the 8 cells on the perimeter to render the borders and rounded corners. The central cell is used for...
Previous  1 2 3 Next