loading table of contents...

CoreMedia Studio Manual

Copyright CoreMedia AG © 2015

CoreMedia AG

Ludwig-Erhard-Straße 18

20459 Hamburg

International

All rights reserved. No part of this manual or the corresponding program may be reproduced or copied in any form (print, photocopy or other process) without the written permission of CoreMedia AG.

Germany

Alle Rechte vorbehalten. CoreMedia und weitere im Text erwähnte CoreMedia Produkte sowie die entsprechenden Logos sind Marken oder eingetragene Marken der CoreMedia AG in Deutschland. Alle anderen Namen von Produkten sind Marken der jeweiligen Firmen.

Das Handbuch bzw. Teile hiervon sowie die dazugehörigen Programme dürfen in keiner Weise (Druck, Fotokopie oder sonstige Verfahren) ohne schriftliche Genehmigung der CoreMedia AG reproduziert oder vervielfältigt werden. Unberührt hiervon bleiben die gesetzlich erlaubten Nutzungsarten nach dem UrhG.

Licenses and Trademarks

All trademarks acknowledged.

07.Mar 2017

1. Introduction
1.1. Audience
1.2. Typographic Conventions
1.3. CoreMedia Services
1.3.1. Registration
1.3.2. CoreMedia Releases
1.3.3. Documentation
1.3.4. CoreMedia Training
1.3.5. CoreMedia Support
1.4. Change Chapter
2. Overview
2.1. Architecture
2.2. Technologies
3. Deployment
3.1. Connecting to the Repository
3.2. Control Room Configuration
3.3. Basic Preview Configuration
3.4. Advanced Preview Configuration
3.5. Development Setup
4. Quick Start
5. Concepts and Technology
5.1. Ext JS Primer
5.1.1. Components
5.1.2. Declarative UI (Ext JSON)
5.1.3. Component Plugins
5.1.4. Actions
5.2. Ext JS with ActionScript and EXML
5.3. Client-side Model
5.3.1. Beans
5.3.2. Remote Beans
5.3.3. Issues
5.3.4. Operation Results
5.3.5. Model Beans for Custom Components
5.3.6. Value Expressions
5.4. Remote CoreMedia Objects
5.4.1. Connection and Services
5.4.2. Content
5.4.3. Workflow
5.4.4. Structs
5.4.5. Types and Property Descriptors
5.4.6. Concurrency
5.5. Studio Component IoC
5.5.1. Motivation
5.5.2. Inversion of Control
5.5.3. Annotations of Context Consumer and Context Provider
5.6. Web Application Structure
5.7. Localization
5.8. Multi-Site and Localization Management
5.9. Further Reading
6. Using the Development Environment
6.1. Configuring Connections
6.2. Build Process
6.3. IDE Support
6.4. Debugging
6.4.1. Browser Developer Tools
6.4.2. Ext JS debug.js
6.4.3. Illuminations
6.4.4. Tracing Memory Leaks
7. Customizing CoreMedia Studio
7.1. Studio Plugins
7.2. Localizing Labels
7.3. Document Type Model
7.3.1. Localizing Types and Fields
7.3.2. Defining Content Type Icons
7.3.3. Customizing Document Forms
7.3.4. Image Cropping and Image Transformation
7.3.5. Enabling Image Map Editing
7.3.6. Disabling Preview for Specific Document Types
7.3.7. Configuring Translation Support
7.3.8. Excluding Document Types from the Library
7.3.9. Client-side initialization of new Documents
7.4. Customizing Property Fields
7.4.1. Conventions for Property Fields
7.4.2. Standard Component StringPropertyField
7.4.3. Compound Field
7.4.4. Complex Setups
7.4.5. Customizing RichText Property Fields
7.5. Upgrading the CKEditor
7.5.1. Upgrading RichTextArea Plugins from CKEditor 3 to 4
7.5.2. Migrating Richtext Editor Dialogs
7.5.3. CKEditor plugins available
7.6. Coupling Studio and Embedded Preview
7.6.1. Built-in Processing of Content and Property Metadata
7.6.2. Using the Preview Metadata Service
7.7. Storing Preferences
7.8. Customizing Studio using Component IoC
7.8.1. Content Actions
7.8.2. Example: Add a disapprove button to the actions toolbar
7.8.3. Studio Component Map
7.9. Customizing Central Toolbars
7.9.1. Adding buttons to the Favorites Toolbar
7.9.2. Providing default Search Folders
7.9.3. Adding a Button with a Custom Action
7.9.4. Adding a Button to the Apps Menu
7.9.5. Adding Disapprove Buttons
7.10. Inheritance of Property Values
7.11. Customizing the Library Window
7.11.1. Defining List View Columns in Repository Mode
7.11.2. Defining Additional Data Fields for List Views
7.11.3. Defining List View Columns in Search Mode
7.11.4. Configuring the Thumbnail View
7.11.5. Adding Search Filters
7.11.6. Make Columns Sortable in Search and Repository View
7.12. Work Area Tabs
7.12.1. Configuring a Work Area Tab
7.12.2. Configure an Action to Open a Work Area Tab
7.12.3. Configure a Singleton Work Area Tab
7.12.4. Storing the State of a Work Area Tab
7.12.5. Customizing the Start up Behavior
7.12.6. Customizing the Work Area Tab Context Menu
7.13. Dashboard
7.13.1. Concepts
7.13.2. Defining the Dashboard
7.13.3. Predefined Widget Types
7.13.4. Adding Custom Widget Types
7.14. Configuring MIME Types
7.15. Server-Side Content Processing
7.15.1. Validators
7.15.2. Intercepting Write Requests
7.15.3. Immediate Validation
7.15.4. Post-processing Write Requests
7.16. Available Locales
7.17. Notifications
7.17.1. Configure Notifications
7.17.2. Adding Custom Notifications
7.17.3. Creating Notifications (Server Side)
7.17.4. Displaying Notifications (Client Side)
8. Security
8.1. Preview Integration
8.2. Content Security Policy
8.3. Single Sign On Integration
8.4. Auto Logout
8.5. Logging
Glossary
Index

List of Examples

5.1. Ext JSON
5.2. Viewport definition as Ext JSON
5.3. Plugin usage in Ext JSON
5.4. Component instantiation using Ext JSON
5.5. Component instantiation using typed setters
5.6. Component instantiation using typed wrapper
5.7. Updating multiple bean properties
5.8. Model bean factory method
5.9. Model bean access
5.10. Adding a listener and initializing
5.11. Creating a property path expression
5.12. The valueExpression EXML element
5.13. Creating a function value expression
5.14. Creating a value expression from a private function
5.15. Creating a value expression from a static function
5.16. Manual dependency tracking
5.17. The bindPropertyPlugin EXML element
5.18. Property paths into struct
5.19. Adding struct properties
6.1. Detecting public API violations
7.1. Adding a plugin rule to customize the actions toolbar
7.2. Adding a separator and a button with a custom action to a toolbar
7.3. Adding a plugin rule to customize all LinkList property field toolbars
7.4. Using <ui:nestedRulesPlugin> to customize a sub-component using its container's API
7.5. Using <ui:nestedRulesPlugin> to customize a sub-component
7.6. Registering a plugin
7.7. Loading an external script
7.8. Loading an external style sheet
7.9. Adding a search button
7.10. Example property file
7.11. Overriding properties
7.12. Localizing document types
7.13. Article form
7.14. Configuring the Image Editor
7.15. Configuring the variants
7.16. Configuring an Image Map Editor
7.17. Configuring a validator for image maps
7.18. Defining document types without preview
7.19. Blueprint source language document resolver
7.20. Configuring a source language document resolver
7.21. Defining excluded document types
7.22. Defining excluded document types in EXML
7.23. Defining a content initializer
7.24. Custom property field
7.25. Using a base class method
7.26. Inline images in richtext
7.27. Configuring the rich text symbol mapping
7.28. Customizing the rich text editor toolbar
7.29. Adding a custom icon to the rich text editor toolbar
7.30. Adding resource path to pom.xml
7.31. Customizing the CKEditor
7.32. Adding a search for documents to be published
7.33. Adding a custom search folder
7.34. Creating a custom action
7.35. Creating a custom action configuration class
7.36. Using a custom action
7.37. Adding disapprove action using enableDisapprovePlugin
7.38. Configuring Property Inheritance
7.39. Defining list view columns in the repository mode
7.40. Defining list view fields
7.41. Defining list view columns in the search mode
7.42. Configuring the thumbnail view
7.43. Two additional attributes for sorting.
7.44. Optional extendOrderBy Attribute for sort by more than one column.
7.45. Optional sortDirection Attribute to enable only one sort direction.
7.46. defaultSortColumn Attribute to configure one column as the default for sorting.
7.47. Adding a button to open a tab
7.48. Adding a button to open a browser tab
7.49. Base class for browser tab
7.50. Dashboard Configuration
7.51. Fixed Search widget Configuration
7.52. Simple Search Widget Configuration
7.53. Simple Search Widget Type
7.54. Simple Search Widget Component
7.55. Simple Search widget Type with Editor Component
7.56. Simple Search widget Editor Component
7.57. widget State Class for Simple Search widget
7.58. Configuring MIME types
7.59. Implementing a property validator
7.60. Configuring a property validator
7.61. Implementing a content validator
7.62. Configuring a content validator
7.63. Configuring validator messages
7.64. Defining a Write Interceptor
7.65. Configuring a Write Interceptor
7.66. Configuring Immediate Validation
8.1. Import base context
8.2. Spring Security context
8.3. Delegating entry point
8.4. Logout filter
8.5. User finder
8.6. Enable user finder
8.7. Example Output
8.8. Marker Hierarchy
8.9. Configure Access Log
8.10. Configure Security Log
8.11. Configure Default Log
8.12. Configure Logger
8.13. Suppress Security Logging