cancel
Showing results for 
Search instead for 
Did you mean: 

Overview of our customisations

frederick
Champ in-the-making
Champ in-the-making
Hello,

I'm currently implementing various modifications in Alfresco as a part of a CMS comparation project (the goal is to determine which features Alfresco lacks compared to other CMS, and how difficult the implementation of these features would be).

Additionally, we tried to deploy Alfresco on several different setups: Jboss/Tomcat/Weblogic combined with MySQL/PostgreSQL.
Note: all of the above combinations have worked for us.

My colleagues, sjeek and Xerox, have already posted some information regarding our customisations, but I decided to gather all our efforts so far in a single post.

- Tree navigator

Using the Apache Tomahawk tree2  component, we added a panel to the shelf showing a tree structure of Company_Home. Clicking on a branch is the equivalent of clicking on the Space the branch represents. Clicking on a leaf is the same as clicking on the content the leaf represents.

- Inline reader

A third panel was added to the main part of browse.jsp. When the user clicks on content which is marked as inline-editable, this panel will try to show the content using a hSmiley SurprisedutputText component. Images can also be viewed inline: they are wrapped in <img> tags.

- Change the number of items per page

A button was added allowing users to easily change this setting.

- Progressive panels

Note: as pointed out in the Wiki (http://wiki.alfresco.com/wiki/Progressive_Panel), using progressive=true with MyFaces causes errors unless each component in the panel is given a hardcoded id. We wanted a collapsible Space browse-panel, so we had to id all the components in that panel.

- Replace the FileContent implementation with a DctmContent impl.

The binary contents are stored in a Documentum repository instead of a folder on the file system (/contentstore). The reason for this was twofold: determine how content can be shared among two repositories, and determine how extensible Alfresco's storage mechanism is.

- Thumbnails for image content

With the ImageMagick feature, thumbnails can be generated automatically. Using the rules system, and modifying the jsp's,  thumbnails are added to the details of each image in the content view panel.

Some other things we are looking into are the versioning system and subscribe feature.

Here's an image of some of these changes:
http://www.student.khleuven.be/~0301980/overview.jpg

If any of these points are of interest, I would gladly share our code (though I am unsure of how to do this, pasting the code in posts would be messy given the number of modifications).
Also, I am a student doing this project as an internship. I am relatively new to concepts such as code sharing, CMS, etc. Any comments, remarks or tips about our modifications are very welcome.

Kind regards,
14 REPLIES 14

paulhh
Champ in-the-making
Champ in-the-making
Hi Frederick

These are great examples and I'm sure many people will want to give them a try or take them further.  I would suggest you create a project or two on the new Alfresco Forge (http://forge.alfresco.com) - the code can then be available via CVS or SVN and you can decide whether to allow other people to work on the code.

Some of the tasks you have done will become easier in 1.3, with the dialog and wizard frameworks as well as the configurable actions.  It may be possible to make your additions as pure extensions that people can just drop into their installation - which is obviously a goal of ours.

It would be useful to hear what was needed to run Alfresco under WebLogic.

Many thanks again for bringing this to everyone's attention.

Cheers
Paul.

martinbradford
Champ in-the-making
Champ in-the-making
Hi there,

I would also love to hear how you got it running on Weblogic! I have spent a couple of days trying - both Alfresco 1.2 and 1.3 on a Weblogic 9.1 server (Solaris). I always get errors during initialization along the lines of :

17:01:56,549 ERROR [org.alfresco.util.transaction.SpringAwareUserTransaction] Transaction didn't commit
org.springframework.dao.DataIntegrityViolationException: Non-root node has no primary parent:
   child: system://system/f878fb95-f0c6-11da-a0b9-d33fe0de70f8

I have had it working under Tomcat, so I am reasonably confident that I understand the install process. I want to use it as part of a larger application suite and really cannot face doing it all under JBoss - I know it can deliver, but the administrative tools just are not good enough for my liking!

Martin

ghernando
Champ in-the-making
Champ in-the-making
Yes.  The summary is quite impressive.

I'd be interested in seeing the work you've done keeping content in the Documentum repository.

kevinr
Star Contributor
Star Contributor

martinbradford
Champ in-the-making
Champ in-the-making
http://wiki.alfresco.com/wiki/Install_BEA_Weblogic

Hmmm, I'll try again, but this looks pretty much what I did before… Everything seemed to install correctly, but I still got the error message I described above…

Martin

kevinr
Star Contributor
Star Contributor
I tried this myself on Friday with a clean install of weblogic 9.1 - note that I am using Alfresco 1.3dev I haven't tried with 1.2.X I admit…

Cheers,

Kevin

martinbradford
Champ in-the-making
Champ in-the-making
Well, as I guessed, this did not make any difference - during the first Alfresco startup it fails with the following error :

15:09:48,882 ERROR [org.alfresco.util.transaction.SpringAwareUserTransaction] Transaction didn't commit
org.springframework.dao.DataIntegrityViolationException: Non-root node has no primary parent:
   child: system://system/ea091e50-faed-11da-a6ee-415d1c10ecf8
   at org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl.getPrimaryParentAssoc(HibernateNodeDaoServiceImpl.java:446)
   at jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.ObjectSmiley WinkLjava.lang.Object;(Unknown Source)
   at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;J)Ljava.lang.Object;(Unknown Source)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)

I have had this every time I try to deploy to Weblogic - both Alfresco 1.2 and 1.3… As I said in my initial post, the deployment into Tomcat worked, so I do have all the necessary components and broadly the correct procedures… Anyone know what that error means?
The database has been initialized and many of the tables contain significant numbers of rows…

Martin

steve
Champ in-the-making
Champ in-the-making
Hello Martin,

Have you tried deploying Alfresco into Weblogic using a clean DB?
It would be useful for you to try to see if you still get the same error.

Steve

martinbradford
Champ in-the-making
Champ in-the-making
Hello Martin,

Have you tried deploying Alfresco into Weblogic using a clean DB?
It would be useful for you to try to see if you still get the same error.

Steve

yes - I dropped and recreated the DB and deleted the alfresco_data directory structure…

Martin