Java CMS项目

时间:2013-10-05 09:13:35

标签: architecture jcr dms

我需要为没有经验的Java开发人员的团队设计一个大学项目的CMS系统。我查看了不同的选项(特别是Apache Jackrabbit和JCR),但我不知道该使用什么。我们必须为DMS开发Web界面,其中可以上传文档并向其填充自定义属性集(所有文档的属性都相同)。我不确定我的团队是否能够与Jackrabbit合作。

使用数据库存储Base64中的文件编码选项吗?

我打算使用JSF,JPA,hibernate,EJB和JBoss AS,

系统必须能够:

  • 免费产品或第三方库等易于使用的经验丰富的开发者;
  • 存储文件;
  • 支持版本;
  • 支持存档(低优先级);
  • 支持一组属性,即documentDescription:“some txt goes here”。

3 个答案:

答案 0 :(得分:2)

从我的经验来看,JCR本身太低,无法被一群缺乏经验的开发人员使用。您可以使用jcrom进行对象映射,但我不能说它很简单或完美无缺。

Martin Fowler写道,CMS是面向文档的NoSQL数据库的应用程序之一。您可以尝试将MongoDB与Morphia一起用于对象映射。我发现它很容易使用和部署(再次从我的经验开始使用MongoDB比开始使用JCR更容易)。虽然jcrom和Morphia的文档远非完美,但我发现Morphia更容易使用。

要存储文件,您可以使用GridFS

但请注意,如果您使用MongoDB而不是JCR,则不会进行事务和版本控制。如果你不进行交易,你会尝试使用MongoDB,你必须自己实现一些交易,这可能不是很容易。

P.S。我不确定你是否可以使用JPA / Hibernate进行JCR。根据我的研究,我发现JCR只有两个对象映射实现:jcrom和Apache Jackrabbit的一些OM实现(JCR实现)。

答案 1 :(得分:1)

Hippo可以是满足您需求的项目。它是开源的。通过企业订阅,您将能够满足您的归档要求。

与Hippo建立大学网站的一个例子是University of Amsterdam的网站。

答案 2 :(得分:1)

如果您只需要CMS,则可以尝试CUBA Platform。 我认为它是内部网或CMS项目非常酷的平台。

这个框架基于Vaadin和Spring技术。 顺便说一下,它是开源的!

此外,您还可以看到演示CMS for Public Library