我需要为没有经验的Java开发人员的团队设计一个大学项目的CMS系统。我查看了不同的选项(特别是Apache Jackrabbit和JCR),但我不知道该使用什么。我们必须为DMS开发Web界面,其中可以上传文档并向其填充自定义属性集(所有文档的属性都相同)。我不确定我的团队是否能够与Jackrabbit合作。
使用数据库存储Base64中的文件编码选项吗?
我打算使用JSF,JPA,hibernate,EJB和JBoss AS,
系统必须能够:
答案 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