Site Studio and Server Side IdocScript Browser Detection

August 21, 2013

By: Rick Katka – Application Consultant

downloadBrowser Detection for SiteStudio Sites

Have you ever wanted to switch subtemplates or control content based on your user’s browser?  How about lightening the load for mobile users?  Browser detection isn’t new but with more and more users moving towards viewing websites on mobile devices, web developers really need to think more about making concessions for this growing demographic.  One thing we wanted to do for a recent client was swap out the navigation and scripts for mobile users for a large site.  To do so we decided to start with an open source mobile phone detection site called:  http://detectmobilebrowsers.com/ and modified the code to work with IdocScript. Most of the complicated regex is handled for you from the scripts provided by http://detectmobilebrowsers.com/.  There are a few places we considered modifying, mostly around the iPhone, iPod and iPad logic.  I’ve bolded it in the code below.  At one point we removed iPad’s from being considered a mobile device, since they can display desktop versions of sites without really any changes required.

Our resulting subtemplate code ended up looking something like this:
<!–$ua = strLower(HTTP_USER_AGENT) –>

<!–$isMobile = “false”–>

<!–$if regexMatches(ua, “.*(android.+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino).*”)

or

regexMatches(strSubstring(ua,0,4),(“1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|e\\-|e\\/|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\\-|2|g)|yas\\-|your|zeto|zte\\-“))–>

<!–$isMobile = “true”–>

<!–$endif–>

We then call this subtemplate pretty early in the page template so that we can use the isMobile logic flag later on in the code. This will dynamically switch other subtemplates in the page to avoid loading things (such as: JS libraries, desktop navigation, content not available on mobile devices) we didn’t need for an optimized mobile experience.

As far as performance goes, it’s still up in the air in a blank test.  In Chrome, the page loaded 11.4ms faster with the browser detection subtemplate and in Firefox it loaded 67.4ms faster.  In IE 10 it actually slowed the response time by 71ms.  I ran a fairly small test of 10 pages against a vanilla WebCenter Content installation.   The real benefits come in to play when you can avoid loading extra resources that your mobile users don’t need, especially when they are connecting on some of the slower networks available.

For more information or questions, please reach out to us.


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 VS Site Studio: What You Gain, What You Lose

June 4, 2013

By: Jon Chartrand – Solution Architect

There have been an increasing number of clients questioning the real differences between these two products– not just in terms of the overall picture but on a feature-by-feature basis. After all, there are tens of thousands of highly functional Site Studio websites out there today (some of which I built) and when contemplating the shift from Site Studio to WebCenter Sites the question, “What will I gain and what will I lose?” is an extremely valid one. I thought it would be a worthy exercise to line up some of the major legacy features that clients have always found important and some of the newer didn’t-know-I-wanted-that features and see how both WebCenter Sites and Site Studio stack up.

Microsite Management
It’s becoming fairly common in my experience that clients aren’t just building and managing a single site anymore. Trying to squeak out as much ROI as possible means utilizing your licenses to their utmost. Public facing, vendor portal, intranet… The list can be extensive. This means the solution you choose must handle multiple/many websites easily.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
SS absolutely handles multiple websites with aplomb. You get individual address control, asset assignments, cross-site asset utilization, security control, and individualized workflows. On the other hand, the interfaces for managing a large number of websites can quickly get cumbersome and the logistics of managing multiple asset groups can be taxing. WCS has power to spare when it comes to managing multiple websites. The flexible asset model provides deep integration for assets and any number of websites while the walled-garden approach to the sites ensures your content is protected. The power of the WEM interface comes to the fore when dealing with multiple sites as the ease in switching between interfaces saves users time and complication.
Conclusion
I would probably give the edge on this one to WCS. Ultimately the newer WEM interface simplifies process management (though overall administration is more complex). SS can find itself burdened by the bevvy of data files, project files, and definitions while WCS maintains a bit more distance between the user and these materials.
Multi-language Support
We live in an increasingly shrinking world and as much as multiple websites are becoming common, so too are multilanguage adaptations. The question becomes how easy or difficult is it for you to manage language-versions of your sites in your WCM system.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
I’ve personally worked on several multilanguage implementations with SS. The pleasing element is the different approaches that can be taken; clone the whole site, clone only the content, swap out content, etc. Each method has its pros and cons in terms of contribution and maintenance. The problem is, besides whole-site cloning every other method is a customization. It may not be complex but every customization to your system is something else to be concerned about. WCS’ flexible asset modeling provides a different kind of power to this operation. With the ‘locale’ attribute for creating multilingual sets and the automatic assignment of master assets, WCS comes to the table with a flexible and powerful tool for simply accomplishing this once-onerous task. All without core customizations or custom components.
Conclusion
This one goes to WCS. While SS can and does handle multilanguage implementations, the WCS asset model steps up with a robust implementation of this concept already in hand.
Remote Caching (Site Delivery)
This is one of those features you probably know about but didn’t know you should want it. In traditional architectures you might deploy an F5 or similar device at the top of your stack to handle caching and delivery of your HTML and site files. This provides faster load times for end users and offloads burden from your primary application server to a unit designed to handle the load.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
WebCenter Content and Site Studio have several options for internally caching materials but nothing is provided in the package for remote caching. Most often the route taken is to deploy an F5 or similar device. WCS comes with Satellite Server (SaS) – a coresident or remote application which handles the caching and distribution of your HTML and site files. With bidirectional communication to the Sites Server, SaS keeps pages and content fresh without having to interact with it administratively. Remote SaS can be deployed on light hardware too.
Conclusion
Have to give this one to WCS. Satellite Server is an ingenious piece of technology that comes with your license. It deploys easily on a light hardware footprint and provides a simple method to cache remotely and offload server burden.
Workflow
It’s always important to maintain strong chains of accountability when it comes to anything being produced by your business. Robust workflows help to create accountability and editorial ownership without (hopefully) interfering in employees’ routines. It’s also important to have customizable and unique paths for different types of content being produced and edited – all with the end goal of firm control over quality and accuracy of produced content.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
WebCenter Content has long been lauded for its robust and customizable workflow processes. Integration with live web content has made this an even stronger feature as well. Quickly deployable, easy to migrate, and totally customizable based on any metadata value, the WCC workflows are hard to beat. WCS’ workflow processes are definitely slanted in the direction of the content servers’ strength: web content. The product’s unfortunately unintuitive approach to workflow entrance and exit also makes the process more difficult to manage – especially given users common expectations.
Conclusion
This one goes to WCC/SS. While WCS certainly has the ability to perform workflowing processes, the balance of power, ease of use, and customizability give the edge to WCC.
Digital Asset Management (DAM) & Content Conversion
The ability to create packages of pre-sized renditions of your imagery, manipulate and convert video, or dynamically convert documents into web-viewable renditions can be a major boon to your contribution efforts. While it’s rare to need all these features, any one of them can be a serious help.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
With built-in (though somewhat limited) functionality for conversions and easy integration with several 3rd party applications, WCC allows you to convert full-size imagery to pre-sized web renditions and thumbnails or all Word docs to PDFs right at check-in. DAM and Content Conversion are not functionality within WCS.
Conclusion
This one is clearly in the WCC wheelhouse as it is part of the larger Enterprise Content Management (ECM) strategy which WCC embodies.
In-Context Contribution & Desktop Integration
Your contributors need simple access to update website content and documents. In-context contribution allows your authors to view the site as it looks live and quickly make changes, small or large, to reshape or refine your message. The same applies to documents as well; your users should have easy Windows-integrated access to items in the repository.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
Site Studio’s in-context contribution is robust and time-tested. Security can be applied at the placeholder level providing tight editorial control over portions of a single page. Integration with users’ workstations using Desktop Integration Suite (DIS) provides simple but powerful access to all authorized content in WCC. WCS’ Insite editor is a step forward in terms of integration and simplicity although the deep level of customizability adds to development overhead. With the same tight security controls, the only thing WCS lacks is the intimate integration with workstation desktops.
Conclusion
The edge goes to WCC/SS. While Insite is a step forward, the limited nature of WCS’ workstation integrations holds it back in this category. There’s word of eventual revamped functionality for WCS in this area but until then…
Segmentation / Content Targeting
Customizing the content that appears on your website based on metrics and provided-info? Yes, please. That’s Segmentation in a nutshell and it’s a concept that as its implementation continues to grow will change the web in fundamental ways.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
There is no out of the box facility for Segmentation. It would be very possible to develop something custom for Site Studio to do this but for even a few segments the development would become increasingly complex and burdensome. WCS’ rules engine (also called Engage) allows clients to create visitor segments and assign specific content to appear for those segments. Then metrics from any number of sources (analytics, user-provided, etc) are combined with implicit and explicit rules to determine which content to show. It’s complicated and can quickly become difficult to manage but when handled deftly can take a website to the next level.
Conclusion
No doubt, WCS wins this category hands down. While something custom can be crafted for WCC, the WCS rules engine is an out of the box feature which many clients should be utilizing.
User Generated (Social) Content
Facilitating your visitors to engage with your content through ratings, polls, and commenting is an incredibly important part of the modern web experience. The rise of dynamic social websites has changed how every visitor interacts with the content around them.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
WCC/SS has no out of the box functionality in this area. The most common path of utilizing a 3rd party service vendor is easy to setup and implement across your site however this can complicate matters when it comes to retention, moderation, or feature sets. While ultimately simple to implement, this isn’t a feature of WCC. The WCS product can be extended by the installation of the Sites Community Server (CoS). This server integrates with WCS and through simple code changes introduces commenting, ratings, and polls. Due to the integration with WCS you have administrative control over white-listing words, moderation, and retention. There is additional overhead to install the software, configure it, and modify templates to utilize it but the long-run benefits beat out those provided by a 3rd party software solution.
Conclusion
This one definitely goes to WCS. The current paradigm of social interactions with web content is embodied by the Community Server and the firm control it gives you over that content is excellent.
Mobile Site Delivery
The ability to deliver a seamless mobile experience for your website may be very important to you depending on the demographics of your visitors. In today’s mobile world users have come to demand an acceptable mobile experience – whether mobile-CSS or a full application deployment.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
WCC/SS does not provide any tools to enable or aid in the delivery of mobile-specific websites. As with any website, it’s possible to create mobile-specific CSS or even to redirect users to a different SS website designed especially for mobile devices. With the addition of the Mobility Server (MoS) for WCS, the business is provided with a tool to begin adapting and molding the mobile experience for any site in the system. The authoring environment can mimic various mobile devices to allow you to test display and functionality without extensive device purchasing. As well, the software aids in enabling location-aware functionality and maintaining user generated content methods. Keep in mind there is additional overhead to install the software and configure it.
Conclusion
The winner is definitely WCS. With the addition of MoS to an installation, clients are provided with a constellation of functionality that WCC was simply never built to provide.
Enterprise Content (Document) Management
Business doesn’t just create web content – it generates all manner of digital materials from documents to images to presentations and videos. Storing, classifying, converting, and retrieving these materials is crucial to ensure employees and visitors have access to the latest and greatest whenever they look for it.
WebCenter Content with Site Studio (WCC/SS) WebCenter Sites (WCS)
WCC’s true power is in the Enterprise Content Management arena. Whatever type of content you can throw at it, WCC allows you to flexibly assign metadata and meticulously store a full revision history. These processes tie in seamlessly with the workflows allowing end-to-end coverage of a content items lifecycle. The content management system (CMS) underlying Sites is robust but it was built from the ground up for Web Content Management (WCM), not document management. In this area it is simply eclipsed by the lifetime purpose of WCC and its decade-plus of evolution in this space.
Conclusion
ECM is hands-down the realm of WCC – especially when you factor in DAM, conversions, workflow, and records management capabilities.

Here’s how the standings break down:

Feature WCC/SS WCS
Microsite Management X
Multi-language Support X
Remote Caching (Site Delivery) X
Workflow X
Digital Asset Management (DAM) & Content Conversion X
In-Context Contribution & Desktop Integration X
Segmentation / Content Targeting X
User Generated (Social) Content X
Mobile Site Delivery X
Enterprise Content (Document) Management X

Ultimately there are two enormous factors to consider:

  1. While Oracle has announced the sun-setting of the Site Studio product, it’s fully included with the 11g release of the WebCenter Content product and supported through 2019.
  2. While I made each feature a winner-take-all, the overall isn’t a take-all comparison. You’ll need to judge on the features you find the most compelling for you own initiatives.

The last item I would submit for your consideration is that when you look at the summary chart above, it certainly appears that each software package has strength where the other may be weaker. Not long ago we came to the conclusion that WebCenter Content and WebCenter Sites are somewhat of a matched pair. When combined in a single architecture, you get industry-best ECM features and tools (from Content) and industry-best WCM features and tools (from Sites). We’ve even begun investing in this conclusion with the development and release of the TEAM Sites Connector, which is our first step in unifying these systems. And looking just a little way down the road, imagine you could migrate your legacy Site Studio web content directly over to Sites… Interesting indeed. Look for at our previous post with more details on how these applications fit so well together and how you can leverage that for a stronger, more robust architecture. Contact us for a personal conversation.