Friendly URLs in WebCenter Sites

March 4, 2015

By: Darek Blankenbuhler – Application Consultant

Having friendlier, cleaner looking URLs has always been a challenge in WCS. In the past it would require a developer to write a Java class. Once the class had been written it would need to be configured and deployed on every instance of WebCenter Sites in your setup. If you wanted a second assembler for another asset type or blobs that would require even more configuration and coding to work properly. Suffice it to say that in the past making a friendlier URL was a difficult task especially if friendly URLs were not set up during the initial build. This has all changed with the advent of WebCenter Sites 11.1.1.8. Friendly URLs have been built right into the Advanced Interface and no longer require as much specialized knowledge. An administrator can find this new feature in the Admin tab under Asset Types inside the Asset that is being configured.

Fr1

Today I want to set up a new pattern for the Page Asset type. As you can see there are no URL patterns set for pages yet. So, I will go ahead and click Add New, and I will be brought to the following page:

Fr2

Now I am ready to start creating my first URL pattern. As you can see I can be as generic or as specific as I want to be. No longer do I have to worry about writing my templates and URL assembler to work together to render the final product. The system will go ahead and take care of that for me. The URL is comprised of the different attribute values available to the asset. In the case that the Subtype is set to “Any” I will only have access to the default basic attributes that come along with every asset type that is created. By selecting a subtype I can now use attributes that are a part of that asset type in the URL.

Fr3

The primary downside to this is the fact that now the “Standard” subtype will have its own pattern. If I only set up the “Standard Page” URL only page assets with the subtype “Standard” will have a friendly URL. It is a good idea to set up a pattern for “Any” type as before going live. Last we will put it all together with the pattern itself. The pattern uses the Java Expression Language to build the URL. As you can see I can put as much or as little information in the URL as I want too. When I have finished configuring the URL, at the bottom of the page I can get a preview URL for existing pages.

fr4

This way I can test to make sure my URLs are going to come out clean looking before I implement the new URLs. Then I can save and I have completed building the URLs. URL Patterns are stored as a part of the asset type. Which means that all I have to do is publish the asset type to get the URL pattern to be pushed between systems – this tool is kept as simple as possible.

All in all, the new URL pattern tool is a powerful and easy to use tool and a welcome addition to WebCenter Sites. Whether it is the ability to generate URLs using any information in the asset or the ability to make the URL assembler as specific as we want. URL assemblers are now much easier to make and implement.

Want to meet us at Collaborate 15 in Vegas to talk about your WebCenter needs? Fill out the contact form and we will work with you to arrange a meeting!


Content Security in Alfresco One

February 10, 2015

By: Jon Chartrand – Solution Architect

teamandalfresco

Locking down content is a primary concern for those leveraging – or considering – Alfresco One for its content management (CM) capabilities. Thankfully, Alfresco makes this simple by allowing and controlling access across five separate “tiers”, each of which provide opportunities for users and managers to specify and manipulate privileges to both users and groups. Beyond that, keep in mind that users, groups, and site participation can be controlled outside of Alfresco at the enterprise level with LDAP/Active Directory, Kerberos, NTLM, and others. This allows for IT-managed oversight and tight controls on the first two tiers of Alfresco security.

Platform Tier (Access/privileges to the application)

The Alfresco platform is relatively unique in that a user can be granted access to “just” the application itself. This means they cannot access or participate in any of the Site-based activities but they can log into Alfresco and utilize both the “My Files” and “Shared Files” portion of the personal dashboard. This creates opportunities for content to be shared or collaborated-on with a relative outsider to the platform without worrying about them accessing more sensitive materials contained within an Alfresco site. Those considered ‘Alfresco Users’ can be created in Alfresco directly by an administrator or provisioned in your enterprise SSO architecture.

Site(s) Tier (Access/privileges to the Site)

Alfresco’s repository and social functions are broken out into logical groupings called Sites. Each site represents one or more users engaged in a common theme, effort, or goal which has been granted its own area of the platform. More than just sharing files, users of the sites can collaborate with one another through calendaring and events, managing and updating a wiki, contributing to a blog, establishing lists of links, and other activities. For now, however, we’re going to examine security solely against the mirror of content management. Privileges within a site are dictated by the role each user is granted. This assignment can be managed either by a site administrator or at the enterprise level.

Users are granted one of four standard roles within an Alfresco site: consumer, contributor, collaborator, or manager. When focused on content, the role privileges shake out like this:
Consumer: Read
Contributor: Read, Upload, Create
Collaborator: Read, Upload, Create, Checkout, Edit
Manager: Full Control

This allows site managers the ability to grant a range of permissions to each user allowing them to participate in the consumption, contribution, collaboration, or management of content as necessary. Another additional feature is the ability to grant site-level roles to groups of users in Alfresco. This makes setting, managing, and revoking access for multiple users an extremely simple affair. When it comes to privilege overlap, such as for a user granted an explicit role by username and an inherited one through a group, Alfresco operates on a ‘most-permissions’ model. This means the user in this case would be granted whatever the widest permissions allowed based on either role assigned.

Folder(s) Tier (Access/privileges to the folder)

Within either the Shared Files or a sites’ Document Library, the content is managed by whatever logical organization of folders is chosen by the contributors or site manager. This makes both contribution and consumption a simple matter – just like using a Windows file share. The great thing about Alfresco folders though is that users can manage permissions on any self-made folder with a remarkably high degree of granularity.

1

The permissions window for a folder, seen here, provides an easy to manipulate interface for altering the roles and permissions everyone has to it. The first thing to note, however, is that folders automatically inherit the permissions of their direct parent. At the top of the screen you can see the checkmark next to “Inherit Permissions” which provides a visual indicator of this and requires that the user specifically undo this function (with a confirmation) to be able to set their own permissions. This process means users cannot “stumble” into setting custom permissions on a folder without an explicit and forewarned act.

2

Once the inheritance is removed, the user is now free to assign both users and groups to the folder permissions. Alfresco folders have a slightly different role-scheme than Sites do.

3

Rearranged from the order in the image to instead display by order of increasing permissions:
Consumer can read content
Editor can read and edit content
Contributor can read and add content
Collaborator can read, edit, and add content
Coordinator can read, edit, add, and delete content (full access)

These roles mean that users have a wide range of options for how they would like others to interact with their folder(s) and the content within. The scenarios where this kind of non-inherited permission capability would have great value are nearly endless in a collaborative environment like Alfresco.

File(s) Tier (Access/privileges to the file)

Taking the next step through the tiers, Alfresco also allows customizing the permissions of individual files within each folder as well. Users who own the content or are designated managers of the site the content lives within can access and alter the permissions, making the same level of customizability at the folder level available at the file level. This is accessed in exactly the same way and with the same interface, making for a consistent experience when dealing with permissions.

4

Like folders, files inherit their permissions from their parent – in this case the folder the content currently lives in. Updating the permissions means first disabling (and confirming) the removal of that inheritance, but once complete the author or manager has access to the same set of roles as is available at the folder level. This means authors and managers have exceptionally granular control over their content; who can see it, who can edit it, and who can delete it.

Of course, we’d be remiss if we didn’t discuss some of the dangers this level of granularity can evoke. For example, if a file is set to allow PersonA access as a Collaborator but is then moved to a folder that PersonA does not have permissions to read, it effectively renders the file permissions moot. Likewise, if a site manager establishes specific permissions on a folder and an author overrides those permissions at the file level, this could lead to complications in accountability and auditability. As such, altering permissions at either a folder or file level is something that should always be considered carefully and in consultation with an administrator or site manager.

Record(s) Tier

An optional addition to an Alfresco installation is the Records Module. This creates and enables an entire suite of Records Management capabilities within Alfresco One including locking, cut-offs, disposition schedules, freezes/holds, and comprehensive audits. When it comes to content, declaring something a record indicates to the environment that this item is complete and needs to be sealed for future discovery or destruction purposes. This declaration makes the content-now-a-record essentially inviolable to everyone but administrators and provides deep auditing capabilities – including storing the audit report as a record itself. While this tier of security isn’t customizable in the same way the others are, it certainly represents another way in which content can be secured and controlled in Alfresco One.

Conclusion

To review, the five tiers of security within Alfresco One are:

1. Platform (Access/privileges to the application)
2. Site(s) (Access/privileges to the Site)
3. Folder(s) (Access/privileges to the folder)
4. File(s) (Access/privileges to the file)
5. Record(s) (Cannot be changed)

Each of these represents a different level of control you have over your content in an Alfresco installation. This means you and your users have unparalleled control over who can see, upload, edit, and delete materials in a content management system which already provides so many benefits over traditional file shares like file versioning, collaboration, and workflows.

If you’re interested in learning more about security in Alfresco One or how Alfresco can help you keep your content under control while also enabling collaboration across your enterprise, let us know!


WebCenter CK Editor Customization – WebCenter Portal

February 18, 2014

By: Andreja Sambolec – Application Consultant

For creating new blogs or wikis, the WebCenter CK Editor (text editor) is used. Using CK Editor we have options to edit text, add tables, embed images and videos…

In this demonstration we are going to embed video.

You can edit the HTML and add the <iframe> component, but it will be deleted after saving changes or switching between tabs.

To avoid this, we customized the task-flow which contains this editor.

The page fragment we changed is
oracle.webcenter.doclib.view.jsf.taskflow.richTextEditor.editHTML.jsff.

We figured that the problem is caused by the converter added to <rte:editor> component so we deleted it (No other problems arise because of those changes):

<rte:editor id=”rte value=”#{pageFlowScope.rte.HTMLTextArea}”
converter=”#{pageFlowScope.rte.HTMLConverter}” />

Next we wanted to have an icon for embedding videos to enhance and simplify the user experience.

embedvideo

When a user clicks on the icon a list of videos will be displayed inside of a dialog box:

ckeditor

When a user clicks on the OK button, the video should be added as part of the iframe in the editor.

The Tag Library used for this component is rte-taglib.jar, we need change this library.

Changed files are:

  • ckeditor.js (add new plugin)

j.video={init:function(m){m.addCommand(‘video’, new a.dialogCommand(‘video’));m.ui.addButton(‘Video’,{label:m.lang.video,icon:this.path+’images/video_qualifier.png’,command:’video’});a.dialog.add(‘video’, this.path + ‘dialogs/video.js’);}};j.add(‘video’, j.video);

  • config.js (declare a new plugin):

config.extraPlugins = ‘wclinkexist,wclinknew,wcimage,video,snippet,tools’; config.toolbar_WC = [ …. [‘WCLinkExist’,’WCLinkNew’,’WCImage’,’Video’,’-‘], …. ];

  • Lang/en.js (new labels for the video plugin)

…..

video : ‘Embed Video’,

videodialog :

{

title                   : ‘Select video’,

},

……

To display the video dialog, we created a new plugin and added it to the plugins folder

(META-INF\adf\oracle\webcenter\doclib\rte\jsLibs\ckeditor\plugins\video).

‘video’ folder contains two subfolders: ‘images’ folder (contains icon image to open the dialog  box) and ‘dialog’ folder (contains dialog.js file with logic to display videos and create <iframe>  in the editor when closing the dialog box)

Now to add some content inside of the dialog box and pass some value to the editor, you can check the source of other plugins as help (I used the Colordialog plugin).

This is the code snippet to add <iframe> in the editor when the user clicks on the OK button:

var dialog = this,

data = {},

iframe = c.createElement( ‘iframe’ ),

div = c.createElement(‘div’);

obj.commitContent( data );

div.setAttribute(‘class’, ‘video’);

iframe.setAttribute( ‘src’, ‘urlValue’);

iframe.setAttribute( ‘width’, ‘620’ );

iframe.setAttribute( ‘width’, ‘349’ );

iframe.setAttribute( ‘frameborder’, ‘0’);

iframe.appendTo(div);

a.insertElement(div);

This was done in WebCenter Portal 11.1.1.8 but is compatible with 11.1.1.7 and 11.1.1.6., as well.

If you have any questions, or would like to talk to someone from TEAM, contact us!


Oracle WebCenter Suite & Microsoft Office 365 – Understanding the Differences

November 21, 2013

By: Raoul Miller – Enterprise Architect

Improving collaboration and content management are important goals for many organizations today and the choice of products to help is wide.  Understanding the differences between the different platforms and vendors is very important for anyone looking to start an initiative in order for them to get the best value for their investment.  TEAM is a long-term Oracle partner, but is also a Microsoft partner so we are well-positioned to help clients decipher the differences between the two sets of products and decide what is best for their organization – now and in the future. Click here or the picture below to be taken to a comparison paper of the features  of Oracle WebCenter and MS365.

Ovs365


15 Great WebCenter and ADF Resources

June 24, 2013

TEAM is an enterprise solutions and technology company that collaborates with clients providing products, services, support and training to put unstructured data to work.  TEAM’s expertise lies in Oracle’s WebCenter pillar and more specifically WebCenter Content (UCM), Sites (FatWire), Portal and ADF within the WebCenter family of products. Expanding upon last year’s posts from John Brunswick on 25 Great ADF resources and 25 Excellent WebCenter resources, I have added 15 additional resources that will assist you with getting up to speed on these products and staying on top of the latest news and tips.

WebCenter and ADF Blogs

Oracle A-TEAM

The contributors to this blog are comprised of the WebCenter contingent of Oracle’s Fusion Middleware Architecture Team, otherwise known as the “A-Team”. This particular group of product specialists maintains expert knowledge in the areas of WebCenter Portal, Webcenter Sites (FatWire), Oracle ADF, WebCenter Content (UCM) and Site Studio (WCM), and WebCenter Imaging (IPM). These experts support Oracle’s key middleware accounts worldwide. I am certain that you, the reader, will find ample nuggets of wisdom in this blog to help further your current or future Fusion implementations, but should the information in this publication fall short … you know who to call on.

ADF Code Corner by Frank Nimphius

JDeveloper is the IDE used to create these WebCenter and ADF applications and this blog by Frank Nimphius will keep you up to date on the latest tools and tips regarding this product.

Yannick Ongena’s WebCenter Blog

Yannick Ongena’s Blog has an in-depth tutorial on the WebCenter Portal product with tons of additional tips on other products and technologies including WebCenter Portal: Spaces and ADF.

One size doesn’t fit all by Chris Muir

New blog by Oracle ADF Product Manager Chris Muir that is already filled with some great tips on ADF task flows and data models.

Forums

Google WebCenter EMG Group

The WebCenter Enterprise Methodology Group is for discussing high level design issues for WebCenter projects, beyond how to get things to work via the OTN forums.

Oracle’s JDeveloper and ADF forum

Oracle’s official forum on JDeveloper and ADF products and technologies that also includes announcements for upcoming events.

Training

Free Advanced online ADF Course

Free ADF course that runs you through video tutorials and hands-on labs and then gives you a quiz at the end of each section.

Tutorial for WebCenter Portal Developers (11.1.1.6)

Updated tutorial for the WebCenter Portal product.

Tutorial for WebCenter Portal: Spaces Developers (11.1.1.6)

Updated tutorial for WebCenter Portal: Spaces product.

Documentation

Latest WebCenter PS5 Documentation (11.1.1.6)

WebCenter Portal

Oracle’s official documentation on the WebCenter Portal product.

WebCenter Content

Oracle’s official documentation on the WebCenter Content product.

Expression Language Expressions

Explains expression language expressions and gives you tips on the most common ones to use within your WebCenter Portal application.

Videos

Oracle WebCenter Social Network

Great set of videos that explain the WebCenter Social product and what we can expect with the upcoming release.

Build Killer Sites with Oracle WebCenter

Explains the AviTrust WebCenter Portal website that is used within the WebCenter Portal VM and how you can use the examples within that application within your own WebCenter Portal application.

Advanced ADF Faces – Skinning & Javascript

Every WebCenter Portal project will need some sort of skinning and this video explains the best practice on how to accomplish this.


WebCenter Content & WebCenter Sites: A Matched Pair

June 11, 2013

By: Jon Chartrand – Solution Architect

In 1966 the psychologist Abraham Maslow is quoted as saying, “I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail.” You wouldn’t pound a screw into a beam nor would you use a screwdriver on a nail. The right tool for the job, right? When it comes to the Content Management space, while it is important for us to identify not just the nails and the screws, that is, the business needs that must be met, we must also forge the right tools to accomplish the goal.

Today we’re talking about the various needs represented by Enterprise Content Management (ECM) and Web Content Management (WCM) and how these similar-but-now-different spheres can be addressed by a unification of Oracle products – WebCenter Content and WebCenter Sites. Clients might be thinking in terms of either/or and while that’s a nice idea in theory they’ll be so busy forcing an octagonal peg into a round hole (so close!) they’ll probably miss out on a solution better suited to answering their needs – a solution which may be closer and easier to forge than they think.

ECM and WCM: Nails and Screws

Too often the term “content management” is used without context. The space has evolved and refined to the point where that phrase alone doesn’t have enough meaning most of the time. We’ve moved into an era where Document Management (DM), Web Content Management (WCM), Records Management (RM), and Digital Asset Management (DAM) are just some of faces of the same CM beast and yet each one has uniquely rigorous demands and requirements. So when someone says, “content management” I find myself asking, “What kind?”

From my perspective the simplest way to think of this is to put ECM at the top of the pyramid. Enterprise Content Management encompasses all the other subsets of CM and when you think ECM you should be thinking of WebCenter Content (WCC). The WCC product was built to handle the various demands of each CM subset and has done so exceedingly well for the past decade. In fact, it continues to be one of the world leaders in document management, records management, and digital asset management – basically an overall ECM juggernaut. However while WCC has matured and maintained its position as a top contender, the Web Content Management (WCM) space has evolved far more dramatically.

In the last five years it became clear that the demands of developing, organizing, contributing, and managing website content have in many regards outpaced the ever-evolving abilities of a tool designed to handle everything under the ECM umbrella. Oracle recognized early that the WCM subset was becoming highly specialized, evolving its own unique requirements and flexibility demands – not to mention being regularly tied to revenue. With WebCenter Sites (WCS) they released a tool designed from the ground up to address the demands of the WCM subset with a forward-looking approach to the functionality you might not even know you needed.

Forging a Proper Tool

Now we find ourselves in the position of having two applications – both of which solve problems beneath the ECM umbrella. Obviously WebCenter Content could hold all your WCM content. Its very capable Site Studio module has been a stalwart companion for many clients over the years but WCM has evolved into more than just content – it’s now about managing an experience. Similarly, WebCenter Sites could hold your DM content.  The core content server within Sites is strong and flexible but it was built from the first line of code with dynamic content in mind, not static, and its nature can work against the demands of a document management model. These would be prime examples of octagonal pegs and round holes. Some may feel it’s a choice that must be made between the two applications but the truth is we don’t need to choose, nor should we. The answer lies in understanding the strengths and weaknesses of each and carefully crafting a strategy that unifies them to address together the needs they could only mostly meet individually.

I’m betting your business doesn’t just produce documents. Nor does it just produce web content. Your business probably produces a cornucopia of digital assets all of which need proper categorization, searchability, security, workflow, and publishing. Your documents and images are likely needed by mostly internal resources but only marginally by external ones. Your web content, needed internally for an intranet and externally for your public site, is probably managed by a whole different team of people and has different editorial requirements, publishing demands, targeting needs, and release schedules.

Unifying both WebCenter Content and WebCenter Sites into your architecture allows you to meet the rigid demands and requirements of your ECM/DM processes while fostering the flexibility necessary for your WCM processes. Even better, if you already have an installation of WebCenter Content, bringing Sites into the mix is easier than ever – both in terms of generating web-viewable documents and even migrating legacy website content. In one fell swoop you provide top-tier applications to meet both ECM and WCM necessities.

Process Harmony

In a previous post I discussed the strengths and weaknesses of the WebCenter Content WCM solution, Site Studio, as compared to WebCenter Sites on a feature-by-feature basis. The final summary table showed two products which really have strengths where the other is weaker and so it’s in the marriage of these two applications that we’ll attempt to meet every feature request with a point of strength.

Imagine the flow as working something like this: Both applications are installed on the WebLogic Server platform. This creates harmony of administration, monitoring, and resource allocation. Documents and various digital assets (imagery, videos) are managed in WebCenter Content. The installation is matched to desktop client software which provides Windows-level access to the repository. Folders break out content by type or function and centrally-managed security provided through LDAP/AD ensures people only see the content they have access to. WCC also captures full revision histories for everything, ensuring accountability from the first revision to the last.

Items intended to be used on a website (internally or externally) are dynamically converted to non-editable versions (Word into PDF) or renditioned for the web (EPS into GIF) and after being released from workflow are funneled automatically to the Sites repository by the TEAM Sites Connector. In Sites your editors make in-context edits to pages, link to documents, control targeting, and manage the user-generated content. Editorial workflows are in place to ensure consistent quality and content is published live as often as you need it to be. The sites even display content tailored to the visitor based on metrics with short load times thanks to remote caching and proper mobile delivery.

Sounds pretty great, doesn’t it?

This is the holistic approach to ECM – WebCenter Content to handle the heavy lifting and stringent requirements of enterprise document management, the TEAM Sites Connector to manage the flow of media between systems, and WebCenter Sites to handle the flexibility demands and wide functionality of quality web content management. At TEAM, we have a vision of how the pieces fit together both in terms of business processes and technical necessities. We’ve even invested in building the TEAM Sites Connector product to facilitate these integrations and overcome challenging migrations because we believe so thoroughly in this vision.

Unification is what makes for real process harmony. Then we’ll have the right tool for the job.

TEAM Informatics WebCenter Sites Demo with WebCenter Sites Connector

Site Studio to WebCenter Sites/Content Migration Demo by TEAM Informatics


WebCenter Sites 11g: It’s Kind of a Big Deal

May 16, 2012

By: Jon Chartrand – Solution Architect

Oracle unveiled the first step in their vision for the recently-acquired FatWire suite of software with the announcement of the 11g release of WebCenter Sites. We’ve all known for some time now that the intention was to have WebCenter Sites play a pillar role in the WebCenter Suite and Oracle’s just-released update shows their obvious dedication to the product. Oracle clearly has no intention of sitting on their laurels with this one and in just a short time has managed to overhaul and improve a surprisingly deep level of functionality within the product. We at TEAM are truly excited about this first release and what it very likely means for the product in the coming months.

Oracle’s coverage of this release has had a heavy focus on two major aspects of the 11g update – the revamped WYSIWYG (what-you-see-is-what-you-get) editor environment and the extension of social integration functions for the platform’s UGC (user generated content) capabilities. We see both of these points as excellent indicators of the kind of experience that Oracle is working to provide to both you and your visitors. That is, WebCenter Sites isn’t just about surfacing content, as its web content management predecessor Site Studio was, it’s about providing a comprehensive framework for your web deployments. Best of all, the exciting updates we see with this 11g release are just the tip of the iceberg of what Sites has to offer.

As a long-time Site Studio devotee, I’ve spent years providing TEAM’s clients with cutting edge solutions to their web content management needs. I’ve watched the product evolve amidst the greater ecosystem of the Internet and I’ve felt the pain of friction between those two tracks. WebCenter Sites represents a maturation of the web content management vision and an enormous pillar in the evolution of what our clients can expect to accomplish with the WebCenter Suite. We couldn’t agree more with the shift from calling the space “web content management” to “web experience management” and when you experience the power, depth, and flexibility that WebCenter Sites brings to the table we’re certain you’ll be as excited as we are.

Details, you ask? Well, we don’t want to dive too deeply in this post, but rest assured we’ll be publishing a series of posts on several powerful aspects of WebCenter Sites and what each one means both as an evolution of the space and for your deployments. We are truly excited to not only bring this evolution to our clients but to help educate the larger community on what this evolution means for everyone. We hope you’ll join us!