开发者

strategy to integrate java cms-functionality into website with highly dynamic content (Lucene / Mysql / Nosql)

I realize a lot of questions like 'what cms should I use / what is the best' have been asked, but I'm looking for integrating cms-functionality in an already functioning website.

This website (travel-related price-comparison website) is built in java with Tapestry 5 as it's web-framework. It makes extensive use of Lucene / Solr.

I'm looking for a way to be able to author additional content-rich pages, which combines content to be authored in a CMS-environment while other content is highly dynamic and results from for example Solr / Lucene or Domain Object (fetched through Hibernate).

For now I used mysql and excel as a really crude way for a CMS. --> Have Excel-files following a specific format and import the content in mysql. The website than queries mysql for the content.

Obviously, this can be approved. I guess I'm looking for guidance at what level the integration with an existing CMS should be done.

options:

1- Loosely coupled - PREFERRED FOR NOW - Use a CMS based on a content-repository which follows the JSR-170 specs. Magnolia, as well as some others come to mind here.

- Simply author pages / page-snippets in Magnolia which are stored in the content repository. - Have a periodic program query the content-repository, extract the data and populate MYSQL like before.

pros: - website wo开发者_StackOverflow社区rks like before, without changes

cons: - no way to edit pages in-place.

2- Have a CMS that is customizable in such a way, that I can bring the solr / lucene functionality into the CMS.

pro: - in place editing - better editing workflow - editing is kept in one place, etc.

cons: - needs customization to existing CMS, and probably lot's of it. But may be worth the time for us on the long run.

3- Something in between? (like begin able to incorporate the inplace-editor part of a cms into our website, and saving to our existing backend) suggestions welcome.

I bet I'm not the only one having such a use-case (on a high level), and am wondering what others have done / would suggest.

In particular: what Java CMS do you know of that are customizable to the extent as described above. For some reason I'm liking Magnolia far better than the others I've tested briefly (Alfresco, Hippo)

Any help appreciated.

Thanks, Geert-Jan


We use Atlassian Confluence for this. It's not a CMS — it's a high-quality wiki — but for us it was more suitable than a 'real' CMS like Magnolia. The strong points for us were:

  • Price: for a small installation like ours the licence is just $10
  • Flexibility: full Java source code is provided with a Maven build and a very powerful plugin system. If Confluence doesn't do something, you can implement it without hassle. There's a big ecosystem of useful plugins too.
  • Ease of use: I find Confluence easy to use, the UI is great for normal users who just need to write — whereas some CMSes are complex and hard for non-technical people to use.

I think it would work in your scenario, but I can't tell you if it is the best option. You could make use of the Remote API to retrieve content via your Tapestry application. I don't think it supports JSR-170 though.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜