Friday, December 19, 2008

Site Studio Best Practices

Independent Oracle User Group had organised a Webinar on Site Studio Best Practices. The best practices mentioned in the webinar were lot of common sense things that one should follow while building a site studio website. These are some things that are so obvious but developers like to give it a miss considering that they are some hassels. Below is the list of best practices and some justification as to why one should follow them.
  1. Do not use 'sysadmin' to create work: The power full 'sysadmin' that is out of the box user for Oracle UCM. Developers tend to use this to write code, this is not a good idea simply because there are some services that can run only by 'sysadmin'. After you deploy your code and create users they may not be able to run some of the serivces and dev team will running in circles to figure out the reason.
  2. Security Groups For Web Assets: Create a security group exclusively for artifacts required to run your website. These can be JS, CSS, Images, Fragments, Templates, Layouts. Configure this security group to have only Read access for the Content editors and consumers. Read and Write access for developers. Read Write and Delete reserved only for managers or Technical leads.
  3. Doctype for WebAssest: Create a Doc type specific for WebAssests and check in your code and other stuff under this. Some of the content types specific for SS fragments SS layouts will be created while installing Site Studio we can use these.
  4. Do not put all fragments in only one Fragment Library: These can cause problem in large projects with more developers.
  5. One Fragment for One Fragment Library:While creating fragments its a good idea to create a new Fragment Library for each fragment. Advantage is in mutiple developer projects where developers can work on there fagment with out the problem of some one else working on it and thus locking the fragment.
  6. Give User Friendly Content ID for Fragment and Layouts: This again is to make life simpler for content creators and developers.Places where we have configured to automatticaly assaign content ID its essiential that developers make sure to give proper names.  Site manager and Site Studio display the content ID when you open them for edits. Content creators will have a horendous time while selecting layouts for there sections. Instead of looking for landing layout they have to have a name value pair of layout name and content id. (Site manager utility lists the layouts  by there content id) . The other advantage is while moving code from dev to uat to prod it is easier to archive with meaning full content id's. 
  7. Do not use Site Studio Fragments AS IS: This I learned from experience. One should not use them as is. It is just for demo and to show the capabilites. Also they are slow. So create your own fragments and use them.
  8. CSS and JS do not make them Fragment Assests: This is some thing which can swing either way. Depends on the project you are doing. In case there are fragments reffreing to same JS check them in. Buts I feel its more prudent in cases we have dyanamic list fragments depending on same CSS and JS but uses different queries and other places like that.
  9. Assign Fragments under proper sections: In site studio fragments are listed under 4 categories. Navigation, Static, Dynamic and Other. If we do some house keeping here we can find things what we are looking for faster.
  10. Always have a blank head section: Only way you can add a head section code for the fragment once created is to delete it and recreate. Hence as  a precausion keep that section always. You never know when requiremnets change.
  11. We can configue Linking in Contribution: File -->Site --> Advanced --> set default link format. ssLink usually preffred
  12. Cache Include: bin idoc script guide to speed up site
  13. Layout manually set values: No code on layout pages, no hard code values, put conditioned idoc to show 2,3 columns.
  14. URL Page Name: To get friendly names. 
  15. Design view code name same as Fragment Name: This is what you see in the tool box and also when you put them on the layout page.
  16. Fragment type to refrence:  I will get back to you on this.
Hope this is help full In case you would like to know more drop a comment i will be happy to look into my notes or do some research my self. I hvae tried to write most of the points as is from the webinar in case you find any things differnt let me know i will be happy to change.  Some expamples mentioned are my own experinces.

Monday, December 8, 2008

Limitation of Dynamic Converter

Dynamic Converter is certainly a deal clincher for OracleUCM when it comes to Intranet or internet projects. Here are some things we should be aware when it comes to DC.
DC is a acquired product for stellent which they have not completly integrated with there Content Server and Site Studio. Below are some tricky things that DC does not support.
  1. Preserving your links in word documents: Links are indispensible part of websites, we create links for different sections of website, to partner sites, external websites. Some times we wish to open links in the same window if the link is for a section on the website else we want them to open in a new window if we are linking to a partner site or an external website. The option to open in the same window or a new window can be configured in our word documents but Dynamic converter due to its poor integration with SiteStudio cannot preserve this setting. DC can either open links in a new window or open in the same window. DC considers every link as an external link because DC does not share the SiteStudio project file. There is a workaround to this problem which many of your business users do not like.
  2. Create tables and apply CSS styles: One palce where DC misirably falls short is managing tables. I think this issue is not restricted to DC alone. Getting decent enough tables using WYSIWYG editor is equally challenging. Lets look at a scenario where we have a table with a Heading and Body and you have different colors for them. DC will not recongnise this for the heading and body sections. For DC every thing is Body hence to get different styles for TH and TD is difficlt unless you do some ugly little tricks.