DD.MM.YYYY at Venue/CustomerFirst Last, Role
Fitch Ratings Goes Open Suite
Practical lessons in integrating back office applications with Magnolia
1 Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Chris Bogzevitz, Fitch Ratings and Natascha Desmarais, Magnolia Intl. Date: 2.19.2014
2
About the presenters
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Chris Bogzevitz, Director, Fitch Ratings
Twitter: @chrisbogz
LinkedIn: www.linkedin.com/in/chrisbogzevitz
Email: christopher.bogzevitz@fitchratings.com
§  Trainer / Developer at Magnolia
for almost 3 years
§  STK and best practices
§  LinkedIn:
http://ch.linkedin.com/in/ndesmarais
§  Email:
natascha.desmarais@magnolia-cms.com
3
About the presenters
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
§  Ratings and Research on corporate, municipal and corporate finance
debt
§  External tools include a subscription web site, web services and data
feeds
§  Offices in more than 30 countries worldwide, many of which need to
have their own web site
Global Web Site:
https://www.fitchratings.com/
4
Fitch Ratings is a Global Credit Rating Agency
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
§  Consolidation of technologies (Java) – conscious IT effort
§  Open Source
§  Extensible – Integration with Fitch systems
5
Fitch Chooses Magnolia
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Replace 3 existing web sites with new sites built in Magnolia
Key components of the platform:
§  Common Site Structure for Local Offices to Enter Content
§  Support Multiple Languages
§  Implement Rules for Ratings Display
§  Synchronize with Fitch Global Site Content for Ratings and Research
§  Workflow support
http://www.fitchpolska.com.pl
http://www.fitchratings.ru
http://www.fitchratings.com.tw
6
First Project: Regional Web Site Platform
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
7
Regional Web Site Content Map
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Fitch Core
Content
Issuers
(Companies)
Research
Sector
Pages
Editor-Driven
Content
Home Page
Regulatory
Marketing
8 Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
By The Way, this needs to be done in September.
It’s May.
9
Before the Regional Website Project
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Fitch Global Web Site
Core Systems
Endeca Search
MongoDB
Oracle
Various CMS
Taiwan
GWS Application
Taiwan
Database
Russia Poland
Web
App
Web
App
Web
App
Poland
Database
Russia
Database
No Fitch Integration
10
After the Regional Website Project
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Magnolia
Fitch Global Web Site
Core Systems
Endeca Search
MongoDB
Oracle
GWS Application
Regional Web Site
Platform
Built on Magnolia
Taiwan Russia Poland
§  Take advantage of the STK
§  Platform advantages – filters, PUR, i18n, extend
§  Magnolia configures integration with other systems
The challenge – getting both developers and business to think this way
11
How Do We Get There? Think the “Magnolia Way”
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
§  Sector Pages (Search Integration)
§  Public User Authentication
12
Integration with Fitch Systems
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
13 Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Sector Pages (Search Integration)
14
Sector Pages - Example
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
On the Global Web Site:
§  pages are configured in XML files as part of Spring MVC
§  requires a full release cycle to add a sector
§  CMS content is managed externally – an editor cannot see how the
content integrates with the site until after publishing
On the Regional Site Platform :
§  pages are configured in Magnolia
§  editors see the content integrated immediately
§  Search parameters are configured in Magnolia STK dialogs and site
configurations
15
Sector Pages – Overview
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
16
Sector Pages - Flow
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
EndecaDAO class
Uses Endeca API to retrieve data from Endeca
ENDECA MDEX
Endeca’s index engine
Magnolia STK
Extend Page Model Class to Retrieve Content from Endeca
Components include Issuers, Research and Guided Navigation
17
Sector Pages – Sector Configuration
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Sector Navigation Parameter controls the sector. It’s a search engine
specific ID that does not change. A new sector can be created simply
by applying a different sector parameter.
18
Sector Pages – Site Content Configuration
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Endeca provides a filter for queries based on the content. We added
that as a parameter in the Site Configuration.
19
Sector Pages – Sample Code
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
String sectorSiteParam = (String) site.getParameters().get("sectorSiteParam");
String sectorSectorParam = PropertyUtil.getString(content, "sectorSectorParam");
this.endecaSearchRequest = new EndecaSearchRequest(sectorSiteParam,
sectorSectorParam,
sectorNumberIssuers, sectorNumberResearch, sectorPageType);
20 Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Integration the “Magnolia Way”
Thoughts and Examples
21
Integration options
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
§  Fitch already has a Spring project
§  Components need to change dynamically
§  Components interact
§  Powerhouse Blossom + STK
22
We ♥ Blossom
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
23
Gadgets
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
§  Instead of split search (Magnolia & external system) one unified
search
§  Full text search
§  Faceted search
§  Replication made easy
§  Scalable
24
Solr
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
§  Data module lets you create own data types
§  Import data from other systems into Magnolia
§  Scheduled (e.g. nightly) automated imports
§  Independent from availability of other system
§  Select and modify data from within Magnolia
25
Data module
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Wasn‘t the data module retired with
Magnolia 5?
26
But wait…did you say data module?
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
§  Content apps are your new
friends
§  New projects use own
workspace
§  Data workspace still there
§  Migration tool creates a content
app for viewing your data
27
Fear not – even better now!
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Success!
28 Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
All or nothing?
Cherry pick
Use whatever is there
Don’t reinvent the wheel!
§  Current problem: Usability / UX
§  Too much and volatile to import the data
§  The annoying part are the navigation IDs
§  But – they’re static!
§  Cherry pick – just import the updated Endeca IDs and corresponding
descriptions into Magnolia
§  Make Sector IDs and other navigation IDs selectable from within
Magnolia
§  Human readable
29
Data module – Fitch example
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
30 Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Extending the Public User Registration Module
Magnolia comes with a great module for managing public user
registration (the PUR).
The (PUR) module had everything we wanted.
§  Pre-fab forms and classes that integrate with the STK
§  Authentication
§  Access Control
But…
31
Public User Registration
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
The PUR stores Users in the JCR.
Fitch couldn’t count on synchronizing user records between Fitch’s
Global Web Site users and Magnolia.
Instead…
32
Public User Registration
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
33
Public User Registration – The Solution
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Extended the PUR to use our own User
Management System
§  Reuse PUR components
§  Update Jboss to add a Fitch User
Management Realm
§  FitchLoginModule extends
AbstractLoginModule
§  Implement our own UserManager and
AbstractUser
§  Provide custom behavior:
§  Terms of Use filter
§  Validate user with Fitch-generated
token
Terms of User Filter:
If (user != null) {
String termsOfUse = user.getProperty("termsOfUse");
if (termsOfUse != null) {
if (termsOfUse.equals("0")) {
response.sendRedirect(MgnlContext.getContextPath() + "/" +
uriArray[1] + "/users-area/terms-of-use.html");
}
}
}
34
Public User Registration – Sample Code
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Use Magnolia Forms! Extend Magnolia form elements when needed,
don’t hard code them in your FTLs
Anonymous User – could be a better way
35
Public User Registration – Lessons Learned
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
Fitch Ratings is a leading provider of credit ratings, commentary and
research. Dedicated to providing value beyond the rating through
independent and prospective credit opinions, Fitch Ratings offers global
perspectives shaped by strong local market experience and credit
market expertise.
Fitch Group is a global leader in financial information services with
operations in more than 30 countries. In addition to Fitch Ratings, the
group includes Fitch Solutions, an industry-leading provider of credit risk
products and services, and Fitch Learning, a preeminent training and
professional development firm. Fitch Group is jointly owned by Paris-
based Fimalac, S.A. and New York-based Hearst Corporation.
36
About Fitch Ratings
Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.

Fitch Ratings Goes Open Suite

  • 1.
    DD.MM.YYYY at Venue/CustomerFirstLast, Role Fitch Ratings Goes Open Suite Practical lessons in integrating back office applications with Magnolia 1 Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Chris Bogzevitz, Fitch Ratings and Natascha Desmarais, Magnolia Intl. Date: 2.19.2014
  • 2.
    2 About the presenters Version1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Chris Bogzevitz, Director, Fitch Ratings Twitter: @chrisbogz LinkedIn: www.linkedin.com/in/chrisbogzevitz Email: christopher.bogzevitz@fitchratings.com
  • 3.
    §  Trainer /Developer at Magnolia for almost 3 years §  STK and best practices §  LinkedIn: http://ch.linkedin.com/in/ndesmarais §  Email: natascha.desmarais@magnolia-cms.com 3 About the presenters Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 4.
    §  Ratings andResearch on corporate, municipal and corporate finance debt §  External tools include a subscription web site, web services and data feeds §  Offices in more than 30 countries worldwide, many of which need to have their own web site Global Web Site: https://www.fitchratings.com/ 4 Fitch Ratings is a Global Credit Rating Agency Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 5.
    §  Consolidation oftechnologies (Java) – conscious IT effort §  Open Source §  Extensible – Integration with Fitch systems 5 Fitch Chooses Magnolia Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 6.
    Replace 3 existingweb sites with new sites built in Magnolia Key components of the platform: §  Common Site Structure for Local Offices to Enter Content §  Support Multiple Languages §  Implement Rules for Ratings Display §  Synchronize with Fitch Global Site Content for Ratings and Research §  Workflow support http://www.fitchpolska.com.pl http://www.fitchratings.ru http://www.fitchratings.com.tw 6 First Project: Regional Web Site Platform Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 7.
    7 Regional Web SiteContent Map Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Fitch Core Content Issuers (Companies) Research Sector Pages Editor-Driven Content Home Page Regulatory Marketing
  • 8.
    8 Version 1.1Magnolia is a registered trademark owned by Magnolia International Ltd. By The Way, this needs to be done in September. It’s May.
  • 9.
    9 Before the RegionalWebsite Project Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Fitch Global Web Site Core Systems Endeca Search MongoDB Oracle Various CMS Taiwan GWS Application Taiwan Database Russia Poland Web App Web App Web App Poland Database Russia Database No Fitch Integration
  • 10.
    10 After the RegionalWebsite Project Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Magnolia Fitch Global Web Site Core Systems Endeca Search MongoDB Oracle GWS Application Regional Web Site Platform Built on Magnolia Taiwan Russia Poland
  • 11.
    §  Take advantageof the STK §  Platform advantages – filters, PUR, i18n, extend §  Magnolia configures integration with other systems The challenge – getting both developers and business to think this way 11 How Do We Get There? Think the “Magnolia Way” Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 12.
    §  Sector Pages(Search Integration) §  Public User Authentication 12 Integration with Fitch Systems Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 13.
    13 Version 1.1Magnolia is a registered trademark owned by Magnolia International Ltd. Sector Pages (Search Integration)
  • 14.
    14 Sector Pages -Example Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 15.
    On the GlobalWeb Site: §  pages are configured in XML files as part of Spring MVC §  requires a full release cycle to add a sector §  CMS content is managed externally – an editor cannot see how the content integrates with the site until after publishing On the Regional Site Platform : §  pages are configured in Magnolia §  editors see the content integrated immediately §  Search parameters are configured in Magnolia STK dialogs and site configurations 15 Sector Pages – Overview Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 16.
    16 Sector Pages -Flow Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. EndecaDAO class Uses Endeca API to retrieve data from Endeca ENDECA MDEX Endeca’s index engine Magnolia STK Extend Page Model Class to Retrieve Content from Endeca Components include Issuers, Research and Guided Navigation
  • 17.
    17 Sector Pages –Sector Configuration Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Sector Navigation Parameter controls the sector. It’s a search engine specific ID that does not change. A new sector can be created simply by applying a different sector parameter.
  • 18.
    18 Sector Pages –Site Content Configuration Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Endeca provides a filter for queries based on the content. We added that as a parameter in the Site Configuration.
  • 19.
    19 Sector Pages –Sample Code Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. String sectorSiteParam = (String) site.getParameters().get("sectorSiteParam"); String sectorSectorParam = PropertyUtil.getString(content, "sectorSectorParam"); this.endecaSearchRequest = new EndecaSearchRequest(sectorSiteParam, sectorSectorParam, sectorNumberIssuers, sectorNumberResearch, sectorPageType);
  • 20.
    20 Version 1.1Magnolia is a registered trademark owned by Magnolia International Ltd. Integration the “Magnolia Way” Thoughts and Examples
  • 21.
    21 Integration options Version 1.1Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 22.
    §  Fitch alreadyhas a Spring project §  Components need to change dynamically §  Components interact §  Powerhouse Blossom + STK 22 We ♥ Blossom Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 23.
    23 Gadgets Version 1.1 Magnoliais a registered trademark owned by Magnolia International Ltd.
  • 24.
    §  Instead ofsplit search (Magnolia & external system) one unified search §  Full text search §  Faceted search §  Replication made easy §  Scalable 24 Solr Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 25.
    §  Data modulelets you create own data types §  Import data from other systems into Magnolia §  Scheduled (e.g. nightly) automated imports §  Independent from availability of other system §  Select and modify data from within Magnolia 25 Data module Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 26.
    Wasn‘t the datamodule retired with Magnolia 5? 26 But wait…did you say data module? Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 27.
    §  Content appsare your new friends §  New projects use own workspace §  Data workspace still there §  Migration tool creates a content app for viewing your data 27 Fear not – even better now! Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Success!
  • 28.
    28 Version 1.1Magnolia is a registered trademark owned by Magnolia International Ltd. All or nothing? Cherry pick Use whatever is there Don’t reinvent the wheel!
  • 29.
    §  Current problem:Usability / UX §  Too much and volatile to import the data §  The annoying part are the navigation IDs §  But – they’re static! §  Cherry pick – just import the updated Endeca IDs and corresponding descriptions into Magnolia §  Make Sector IDs and other navigation IDs selectable from within Magnolia §  Human readable 29 Data module – Fitch example Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 30.
    30 Version 1.1Magnolia is a registered trademark owned by Magnolia International Ltd. Extending the Public User Registration Module
  • 31.
    Magnolia comes witha great module for managing public user registration (the PUR). The (PUR) module had everything we wanted. §  Pre-fab forms and classes that integrate with the STK §  Authentication §  Access Control But… 31 Public User Registration Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 32.
    The PUR storesUsers in the JCR. Fitch couldn’t count on synchronizing user records between Fitch’s Global Web Site users and Magnolia. Instead… 32 Public User Registration Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 33.
    33 Public User Registration– The Solution Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd. Extended the PUR to use our own User Management System §  Reuse PUR components §  Update Jboss to add a Fitch User Management Realm §  FitchLoginModule extends AbstractLoginModule §  Implement our own UserManager and AbstractUser §  Provide custom behavior: §  Terms of Use filter §  Validate user with Fitch-generated token
  • 34.
    Terms of UserFilter: If (user != null) { String termsOfUse = user.getProperty("termsOfUse"); if (termsOfUse != null) { if (termsOfUse.equals("0")) { response.sendRedirect(MgnlContext.getContextPath() + "/" + uriArray[1] + "/users-area/terms-of-use.html"); } } } 34 Public User Registration – Sample Code Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 35.
    Use Magnolia Forms!Extend Magnolia form elements when needed, don’t hard code them in your FTLs Anonymous User – could be a better way 35 Public User Registration – Lessons Learned Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.
  • 36.
    Fitch Ratings isa leading provider of credit ratings, commentary and research. Dedicated to providing value beyond the rating through independent and prospective credit opinions, Fitch Ratings offers global perspectives shaped by strong local market experience and credit market expertise. Fitch Group is a global leader in financial information services with operations in more than 30 countries. In addition to Fitch Ratings, the group includes Fitch Solutions, an industry-leading provider of credit risk products and services, and Fitch Learning, a preeminent training and professional development firm. Fitch Group is jointly owned by Paris- based Fimalac, S.A. and New York-based Hearst Corporation. 36 About Fitch Ratings Version 1.1 Magnolia is a registered trademark owned by Magnolia International Ltd.