Your SlideShare is downloading. ×
Custom Development with Novell Teaming
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Custom Development with Novell Teaming

17,530
views

Published on

Novell Teaming offers excellent functionality out of the box. It also offers limitless possibilities for customization based on your organization's needs. Attend this session to learn how easily you …

Novell Teaming offers excellent functionality out of the box. It also offers limitless possibilities for customization based on your organization's needs. Attend this session to learn how easily you can create custom branding elements for your Novell Teaming environment—and how you can create extensions from Novell Teaming to other applications. You'll receive step-by-step instructions on the process from Novell Teaming engineers and experts.


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
17,530
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
101
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Custom Development with Novell Teaming ® Peter Hurley Software Engineer Consultant Novell, Inc. phurley@novell.com
  • 2. Customizing Your Novell Teaming Site ® • Basic customizations – No coding required • Custom JSPs – Simple modifications using JSPs and JSTL • Remote applications – Integration with other applications • Extensions – Extending the teaming code • Configuration files • Language translations 2 © Novell, Inc. All rights reserved.
  • 3. Basic Customizations (Quick Review) • Standard out-of-the-box operations – No coding necessary • Customization options – Branding – Forms and views – Landing pages – Work-flows – Templates – Accessories 3 © Novell, Inc. All rights reserved.
  • 4. Branding (Example) 4 © Novell, Inc. All rights reserved.
  • 5. Branding (How to Add Branding) 5 © Novell, Inc. All rights reserved.
  • 6. Branding (How to Set Branding on the Log-in Page) • If you are willing to show the top workspace to the world... – Add “guest” as visitor to the top workspace – Then, add “guest” visitor access to the guest workspace • If not... – Add “guest” access to the guest workspace – Then, add the desired branding to the guest workspace 6 © Novell, Inc. All rights reserved.
  • 7. Branding (Tips) • Anyone can add branding to their own work-spaces and folders – Inherited by all work-spaces and folders below it • You can add graphics and text • Put company branding on the top workspace – Sets the branding for the whole site (unless overridden below here) 7 © Novell, Inc. All rights reserved.
  • 8. Branding (Default Starting Page) • Setting a landing page as the default starting page – Create a landing page (using the top workspace is good) – Make sure everyone has read access to this page > Add “Guest” as visitor if you want this to be available before logging in – Create a simple URL for this landing page > Click “Manage/Configure”, then create the simple URL – Edit the config file: webapps/teaming/WEB-INF/web.xml > Change the “landingPagePath” value to be your simple URL <context-param> <param-name>landingPagePath</param-name> <param-value>/ssf/a/</param-value> </context-param> 8 © Novell, Inc. All rights reserved.
  • 9. Forms and Views (Example) 9 © Novell, Inc. All rights reserved.
  • 10. Forms and Views (Summary) • Form and view designer – Create site wide designs – Create designs that are local to a folder or workspace • Create new entry types – Add new form elements > Radio buttons > Select boxes > Text – Entry data is searchable – “Configure” folders to allow the new entry type Use this to add additional user profile attributes 10 © Novell, Inc. All rights reserved.
  • 11. Additional User Profile Attributes (Areas of Expertise) 11 © Novell, Inc. All rights reserved.
  • 12. Form and View (Extend the User Profile) 12 © Novell, Inc. All rights reserved.
  • 13. Form and View (Extend the User Profile) 13 © Novell, Inc. All rights reserved.
  • 14. Landing Pages (Examples) 14 © Novell, Inc. All rights reserved.
  • 15. Landing Pages (Examples) 15 © Novell, Inc. All rights reserved.
  • 16. Landing Pages (How to Create a Landing Page) 16 © Novell, Inc. All rights reserved.
  • 17. Landing Pages • Provides a nice introduction to your workspace • Cleaner layout, easier to understand • Dynamically updated with the latest information – Content is pulled from other folders and entries • Easy to create and manage – Multiple people feeding information onto the landing page 17 © Novell, Inc. All rights reserved.
  • 18. Work-flows • Business processes • Parallel processing • Content management • Filtered data HR Facilities IT New Employee Add E-mail Orientation Prepare Office Account Add User Profile Contact Payroll Turn on Phone to eDirectory™ Tasks Completed Process Completed 18 © Novell, Inc. All rights reserved.
  • 19. Accessories (Example) 19 © Novell, Inc. All rights reserved.
  • 20. Accessories (Example) • Add additional content to work-spaces and folders – Search results – Blog and wiki summaries – Merged calendars – Task lists – External web pages (using an iframe) – Remote applications 20 © Novell, Inc. All rights reserved.
  • 21. Templates • User workspace configuration – Default folders and accessories – Default access controls • Predefined project work-spaces – Common layout for each project – This can be done with Export/Import, too 21 © Novell, Inc. All rights reserved.
  • 22. Templates (Change User Workspace Default) 22 © Novell, Inc. All rights reserved.
  • 23. Templates (Change User Work-space Default) 23 © Novell, Inc. All rights reserved.
  • 24. Custom JSPs • Custom forms and views • Custom landing pages • Custom JSP call-outs • CSS, colors and images 24 © Novell, Inc. All rights reserved.
  • 25. Custom JSPs in Forms and Views 25 © Novell, Inc. All rights reserved.
  • 26. Custom JSP (W-4 Form - custom_jsps/samples/w4) 26 © Novell, Inc. All rights reserved.
  • 27. Custom JSPs in Forms and Views 27 © Novell, Inc. All rights reserved.
  • 28. Custom JSP on a Landing Page 28 © Novell, Inc. All rights reserved.
  • 29. Custom JSPs on Landing Pages • webapps/ssf/WEB-INF/jsp/custom_jsps/samples 29 © Novell, Inc. All rights reserved.
  • 30. Custom JSP Call-outs • Built-in hooks for adding custom code – Head, CSS, sidebar, search results, mobile head – webapps/ssf/WEB-INF/jsp/custom_jsps ss_call_out_head.jsp ss_call_out_css_init.jsp ss_call_out_sidebar_top.jsp ss_call_out_sidebar_middle.jsp ss_call_out_sidebar_bottom.jsp ss_call_out_mobile_head.jsp ss_call_out_servlet_head.jsp ss_call_out_find_search_results.jsp 30 © Novell, Inc. All rights reserved.
  • 31. Add a Custom Toolbar Item (Example) • How to add a new link to the footer toolbar ss_call_out_head.jsp 31 © Novell, Inc. All rights reserved.
  • 32. Changing Teaming CSS and Colors ss_call_out_css_init.jsp 32 © Novell, Inc. All rights reserved.
  • 33. Remote Applications • Integration of external applications with teaming – Data from external application is shown on teaming pages • Multi-level security model • Runs on a separate server (e.g., PHP) – Can run under the same Tomcat used by teaming • Integrated with teaming web services 33 © Novell, Inc. All rights reserved.
  • 34. Remote Application (Example) 34 © Novell, Inc. All rights reserved.
  • 35. Remote Application Security Model • Administrator controlled – Administrator specifies who can use it – Administrator specifies the maximum set of rights it can use • Workspace owner selects the remote application(s) to be shown • Security token created for web services calls – Tokens valid through the current user's login session – Token limited to that user's session – Work-flow tokens valid for one execution of the remote application 35 © Novell, Inc. All rights reserved.
  • 36. Remote Application Calling Sequence 1. User views a page 2. Teaming calls the remote application HTTP Post a) User Id b) Folder Id c) Application Id d) Security token 3. Remote application calls teaming via web services a) Uses security token to login as current user b) Retrieves any desired information from teaming 4. Remote application returns HTML to be displayed 36 © Novell, Inc. All rights reserved.
  • 37. Remote Application Examples • The Kablink Source Kit has many examples – http://community.kablink.org/teaming/community – Follow the link to the source code in SourceForge – trunk/ssf/samples/remoteapp/... > Hello World > Twitter > Google Wave > Add Entry > Task List 37 © Novell, Inc. All rights reserved.
  • 38. Extensions • What is an extension? • Managing and packaging an extension • Examples – New entry types – Landing page extensions – Workflow call-outs – Virus checker • Kablink sample extensions: – http://community.kablink.org/teaming/extensions > News Feed (show static HTML pages in a landing page) > Landing page survey > Flow Player Video Entry > Twitter 38 © Novell, Inc. All rights reserved.
  • 39. What Is an Extension? • A packaged add-on to teaming – New entry types or work-flows – New templates – Work-flow call-out code • Enabled by the site administrator • Zone specific • Cannot be used to “extend” controllers or modules 39 © Novell, Inc. All rights reserved.
  • 40. Managing Extensions • Go to the “Site Administration” menu • Click on “Manage Extensions” 40 © Novell, Inc. All rights reserved.
  • 41. Extensions Packaging install.xml 41 © Novell, Inc. All rights reserved.
  • 42. Workflow Call-out Extension • Post a teaming entry to Twitter – When work-flow state is moved to “Twitter”, a Tweet is posted – The current user is the author of the Tweet – Entry title is sent as the Tweet text – A TinyURL is added that points back to the teaming entry 42 © Novell, Inc. All rights reserved.
  • 43. Twitter Work-flow 43 © Novell, Inc. All rights reserved.
  • 44. Workflow Call-Out Code 44 © Novell, Inc. All rights reserved.
  • 45. Landing Page Extension • Four new landing page options – Entry including author, date, description and replies – Folder including entry author, date, description and replies – Folder list including entry author and date – Survey (or a list of surveys) • Easily customized to display other entry attributes – e.g., task priority, status and percentage completed • http://community.kablink.org/teaming/extensions 45 © Novell, Inc. All rights reserved.
  • 46. Landing Page Extension (Example) 46 © Novell, Inc. All rights reserved.
  • 47. Landing Page Extension (Example) 47 © Novell, Inc. All rights reserved.
  • 48. Configuration File Customizations • ssf.properties – Enable/disable RSS – Disallow sending mail to “All Users” – Add/delete folder and workspace icons – Set the default lines per page – Add new mobile devices – Add “edit-in-place” editors – Make export/import available to everyone – Change quota algorithm from “Strict” to “Lenient” – Define new accessories • Put changes in ssf-ext.properties 48 © Novell, Inc. All rights reserved.
  • 49. ssf-ext.properties (webapps/ssf/WEB-INF/classes/config/ssf-ext.properties) 49 © Novell, Inc. All rights reserved.
  • 50. How to Define a New Accessory • Define the new accessory – ssf-ext.properties • Add JSPs – configure and view (custom_jsps/weather) • Extend the workspace controller if setup needed 50 © Novell, Inc. All rights reserved.
  • 51. Weather Accessory • Configuration jsp (weather_config.jsp) • View jsp (weather_view.jsp) – ${ssDashboard.dashboard.components[ssComponentId.data.zip} 51 © Novell, Inc. All rights reserved.
  • 52. Weather Accessory 52 © Novell, Inc. All rights reserved.
  • 53. Security Customizations • ssf.properties – Extend the XSS checking algorithms – Enable/disable Web Services – Enable/disable remote applications – Disallow login via the login form 53 © Novell, Inc. All rights reserved.
  • 54. Language Translations • Modify an existing translation – ssf/WEB-INF/messages/messages-ext_de.properties – navigation.findTeams=Teams finden • Add a new translation – ssf-ext.properties > i18n.locale.support=en,da,de,es,fr,hu_HU,it,ja_JP,nl,pl,pt_BR,ru_RU,sv,zh_CN,zh_TW,el – webapps/WEB-INF/messages/messages_el.properties 54 © Novell, Inc. All rights reserved.
  • 55. What Happens on Upgrades? • Not overwritten – Custom JSPs in ssf/WEB-INF/jsp/custom_jsps – Extensions or Remote Applications – ssf-ext.properties – zone-ext.cfg.xml – ssf/messages/message-ext_de.properties • Overwritten – ssf/css, ssf/images, ssf/js – New language files (e.g., ssf/messages/messages_el.properties) 55 © Novell, Inc. All rights reserved.
  • 56. Resources • http://kablink.org or http://community.kablink.org – Teaming Library > Extensions > Customizations – Discussion Forum (General Information) • Novell Teaming 2.1 Administration Guide ® – http://www.novell.com/documentation – Documentation includes: > Enabling custom JSPs to be used on your teaming site > Using remote applications on your teaming site > Adding software extensions to your teaming site 56 © Novell, Inc. All rights reserved.
  • 57. Questions and Answers
  • 58. Unpublished Work of Novell, Inc. All Rights Reserved. This work is an unpublished work and contains confidential, proprietary, and trade secret information of Novell, Inc. Access to this work is restricted to Novell employees who have a need to know to perform tasks within the scope of their assignments. No part of this work may be practiced, performed, copied, distributed, revised, modified, translated, abridged, condensed, expanded, collected, or adapted without the prior written consent of Novell, Inc. Any use or exploitation of this work without authorization could subject the perpetrator to criminal and civil liability. General Disclaimer This document is not to be construed as a promise by any participating company to develop, deliver, or market a product. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. Novell, Inc. makes no representations or warranties with respect to the contents of this document, and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. The development, release, and timing of features or functionality described for Novell products remains at the sole discretion of Novell. Further, Novell, Inc. reserves the right to revise this document and to make changes to its content, at any time, without obligation to notify any person or entity of such revisions or changes. All Novell marks referenced in this presentation are trademarks or registered trademarks of Novell, Inc. in the United States and other countries. All third-party trademarks are the property of their respective owners.