Homework 6
CS520, Spring 2009


Due: Friday, May 29

Package all the source files of your project into a zip file using the zip Ant target you developed in Homework 1, and upload the zip file to CSNS. Note that file uploading will be disabled automatically after 11:59PM of the due date, so please turn in your work on time.

[CSNS Blogs]

Continue to work on CSNS Blogs and implement the following features.

1. (15pt) Blog entry page.

Create a page that displays a selected blog entry and its comments. We will refer to this page as the blog entry page, and similarly, we will call the page that shows the list of blogs the blog list page, and the page that shows the entries of a blog the blog page.

The application should show the blog entry page when a) a user clicks on the title of a blog entry on the blog page (either in the main display area or in the archive area), or b) after a user added a comment for the blog entry.

2. (40pt) Edit blog entry and comment.

Allow users to edit blog entries and comments. Only the author of a blog entry/comment can edit it.

3. (40pt) Full text search.

On the blog list page, add a search box that allows a user to performs full text search on all blog entries. For each entry in the search result, display the title of the blog, the title of the blog entry, the name of the author, and the date of the entry. Clicking on the title of a blog should take the user to the blog page, and clicking on the title of an entry should take the user to the blog entry page.

On the blog page, add a search box that allows a user to performs full text search on the entries of that blog. For each entry in the search result, display the title and the date of the blog entry. Clicking on the title should take the user to the blog entry page.

This feature must be implemented using the full text search support provided by PostgreSQL.

[About Submission and Grading]

Before submitting your work, commit all the changes to your Subversion repository and create a tag.

If you use any libraries that are not in the original CSNS and are not included in your csns.zip, please upload the library jar files together with csns.zip when you submit your work.

To test your project, we will use the following SQL scripts in your csns.zip to create, populate, and then clear the database:

Please make sure that these scripts are up to date and can be run in their entirety without generating any errors. You can check out http://sun.calstatela.edu/~cysun/public/cs520-grading/instructions.txt for more details about the grading procedure.