Drew Varner, Sr. Pricipal Consultant at BEA, has written a good post on JSR 168 portlet development guidelines. These are some basic guidelines that a portlet developers must aware of. He has also given examples to support his views. Here are the guidelines - 1. Always Utilize the URL Rewriting APIs for Content in Your Portlet 2. Do Not Append Paths to a Rewritten URL 3. Qualify Client-side Script Variables and Methods with Namespaces 4. Ensure Inline Client-side Scripts that Refer to Portlet Resources Follow the Spec 5. Always Declare a Content Type for Portlet Responses 6. Do Not Send Cookies from Portlets 7. Separate Business Logic from Presentation Please check his post for details.