8

根据演示和文档,OpenXava看起来非常令人印象深刻,用于从 Java 域快速构建 RIA。如果它真的像它声称的那样好,为什么它没有更广为人知?

我想听听有实际使用 OpenXava 经验的人的意见。它的优点和缺点是什么?它与 Grails、Roo 和 Play 框架等替代方案相比如何?

4

5 回答 5

2

如果您选择使用 openxava,那么您必须选择一个门户服务器来部署它。那是复杂的部分,门户非常重。

于 2011-12-18T14:45:07.250 回答
1

它在演示中看起来很好,但我无法通过。这些是我采取的步骤。

  1. 下载了 openxava ,它更像是一个工作区然后是插件。2 创建项目。
  2. 使用“DB Importer”创建实体,因此 JPA 实体是自动生成的。(也可以在第 5 步)
  3. 运行 crateNewProject 并获取项目中复制的文件。
  4. 更新tomcat的persistence.xml文件和context.xml文件。
  5. 运行 build.xml 但删除 updateSchema 目标,因为我正在进行逆向工程并且不想丢失数据。

当我运行项目时,我没有看到生成的门户

generatePortletXml:
     [echo] Generating portlets files
     [java] Jul 11, 2013 12:05:45 PM org.openxava.util.Labels get
     [java] WARNING: Impossible to translate element with id Client
     [java] Jul 11, 2013 12:05:45 PM org.openxava.util.Labels get
preparePortletsWar:
insertCustomPortlets:
 [loadfile] C:\Projects\openxava-4.7.1\workspace\Viewport\web\WEB-INF\portlet-ext.xml doesn't exist
 [loadfile] C:\Projects\openxava-4.7.1\workspace\Viewport\web\WEB-INF\liferay-display-ext.xml doesn't exist
     [java] WARNING: Impossible to translate element with id Client
     [java] Jul 11, 2013 12:05:45 PM org.openxava.util.Labels get

当您想要生成页面但对排序或其他自定义没有太多支持时,Spring roo 非常好,而且由于 roo 是基于 OSGi 的,因此更改它需要非常好的 OSGi 经验,Spring Roo 也使用 Spring MVC 和 Hibernate,如果你已经为 MVC 搭建了脚手架。它也确实创建了很多方面文件。你不需要知道所有这些,但是当涉及到定制时,知道这些可能会让你进入更快的车道(不是真的)

我希望 openXava 获得一些牵引力并创建 maven archtype 和某种 shell 脚本来生成 portlet,Open Xava 屏幕太好了,但现在遗憾地放弃了。

于 2013-07-11T16:36:24.983 回答
1

不必将它与门户服务器一起使用。甚至下载都与 Tomcat 6.0 捆绑在一起,以便快速上手。

是的,您可以选择使用 Ant 脚本生成 portlet 并部署在 Liferay 等门户服务器中

于 2012-07-06T06:08:13.517 回答
0

有同样的问题 :) OpenXava 已经足够成熟,并且提供了更丰富的开箱即用的用户界面。对于另一个你有开箱即用的基本 CRUD。外观和感觉还可以,我认为是可定制的。因为没有像 Grails 和 Roo 这样强大的公司,所以不像其他人那么出名。Play 很好,但与 OpenXava 属于同一类别(由一些不是很大的公司支持)它们都是好产品,所以这是一个选择问题。

于 2011-05-14T11:18:17.090 回答
0

它非常适合快速制作应用程序原型,但用户界面看起来不是很精致。它在下面使用 JSP,现在已经过时了,但是您可以很快启动并运行。

它运行在一个非常轻量级的 Tomcat 上,但为了获得更多功能和更好的外观,请在 Tomcat 上运行 Liferay 门户并将 OpenXava 应用程序作为门户中的多个 portlet 上传。Liferay 文档很好地解释了这一点。

于 2015-03-11T04:40:40.547 回答