- Andrew Kos
- Bill Burlein
- Bryan Williams
- Christian Vozar
- Jeff Brown
- John Kraus
- Joseph Mak
- Mark Daugherty
- Matt Van Bergen
- Melissa Geoffrion
- Michael Kang
- Michael Chan
- Michael Hodgdon
- Mike Motherway
- Molly McDaniel
- Nadia Maciulis
- Pat McLoughlin
- Paul Michelotti
- Puru Hemnani
- Rohit Srinath
- Ryan Lunka
- Tom Kelly
Part 2 – Alfresco Integration with JBoss Portal
Tuesday, April 14, 2009
This blog is an addendum to last week’s blog found here. I had not planned to do a follow-up or second part to that blog, but after working to display the CMIS objects in a tree structure, I wanted to share what I had learned.
Let’s start with the result first and work backwards. I have enhanced the Browser tab to display the CMIS objects from Alfresco in a hierarchical tree structure. See here:
To do this, I used the RichFace recursiveTreeNodesAdaptor component to build a dynamic tree based on the CMIS calls to Alfresco. As it’s name implies, you feed it CMIS objects in a recursive fashion to display as a tree. In my case, I then cached the objects in Seam’s Conversational state to make subsequent retrievals faster. The component also allows different UI looks, which I based on the CMIS object’s baseType property.
Couple “gotchas” I hit on the way.
- I was originally using the JBoss Portlet Bridge v1.0.0.B6. However I could not get the tree to expand beyond the root children. After some time wasted thinking I was implementing the tree incorrectly, a quick search found this was a reported bug and fixed in v1.0.0.RC1. So… I upgraded to that version. That “almost” fixed the issue. The tree started to work, but would not expand beyond 2 nodes deep when in the switchType=”ajax” mode. This was the mode/behavior I wanted, but as a workaround for now, I changed the switchType for the tree to “server”. This bridge is still a tech preview, so I guess some bugs are to be expected.
- I also upgraded from Seam 2.1.0 to 2.1.1.GA as that is the version tested with the Bridge version I was using. This was a simple replacement of the Seam-related JAR files with the newer versions.
- Upgraded RichFaces from 3.3.0.GA to 3.3.1.B2 as again, that was what was listed as tested for the new Bridge version. This was also a simple replacement of the three associated JAR files with the latest versions.
- Upgraded JBoss Portal 2.7.0 to 2.7.1 for the same reasons as above.
Sorry to say I am not sure if the Seam, RichFaces, and Portal updgrade were necessary as I just went with the “big bang” approach based on what was tested for the Bridge version I needed.
FYI – I discovered the tree issue was caused by the Bridge because I could run the Seam application outside the portal as a stand-alone webapp and things worked fine. Once I determined that, I was able to focus on the Bridge as the cause, and not a problem I was causing implementing the tree or CMIS.
Hope this follow-up helps if you are planning a similar approach.
For more than 19 years, Jeff has been developing well-designed, high-quality software products to meet business needs across many sectors, including: retail, government, insurance, education, and manufacturing. He has expertise in distributed messaging systems, service-oriented architecture design and implementation, and most recently has worked extensively with content management systems.
- Invisible requirements within Business requirements
- Building a better Options Predicate
- Extensionless URLs with Adobe Experience Manager
- The Life of a Tester in Adobe CQ World!
- Limitations of the CQ Parsys Model and the Implementation of a Nested Paragraph System
- Using Apache FOP to generate a PDF document based on a form submission data
- Configuring SAML in AEM 5.6
- Why You Should Get the WCM Experts Involved Early