Discussions

News: OpenXava 1.0 released: XML/Java framework

  1. OpenXava 1.0 released: XML/Java framework (12 messages)

    Gestión 400 is pleased to announce OpenXava 1.0 release. OpenXava is a XML/Java Framework to develop J2EE business applications rapidly and easily. It is based on business components defined with XML. Feature rich and flexible since is used for years to create real business applications.

    OpenXava is a framework to develop easily transactional applications with XML and Java.

    Its virtue resides in the fact that the heart of our applications is XML instead of Java.

    Features:
        * Has been used during years to develop real applications.
        * It's focused to make easy to use and to obtain a very high productivity.
        * Learn curve very short.
        * Robustness: More than 230 junit tests.
        * Flexible: It's possible to insert our own functionality in every place.
        * Based in the concept of business component.
        * Totally MVC.
        * Web user interface with rich features like sophisticated business applications.
        * Adapted to work with legacy database schemas.
        * Generate a full J2EE application (including EJB).
        * Based in standars as XML, J2EE, EJB, JSP, etc.
        * Its Open Source (LGPL) and based in other Open Source tools like Ant, JUnit, JasperReports, TL, XDocLet, Hibernate, etc.
        * The developer can use English or Spanish.
        * All labels and messages are in English, Spanish and Catalan; by now...

    The official site of OpenXava is http://www.gestion400.com/openxava

    You can download OpenXava from
    http://sourceforge.net/project/showfiles.php?group_id=123187

    Threaded Messages (12)

  2. This is what i got when i clicked on your official website.
    Check the values of your variables to find velocity template :)
    --------------------------------------------------------
    There has been an Error!
    Reason:
            java.lang.ClassCastException: org.apache.turbine.services.rundata.DefaultTurbineRunData

    Stacktrace:
          
              java.lang.ClassCastException: org.apache.turbine.services.rundata.DefaultTurbineRunData
    at org.apache.jetspeed.modules.actions.JLoginUser.doPerform(Lorg.apache.turbine.util.RunData;)V(JLoginUser.java:168)
    at org.apache.turbine.modules.ActionEvent.perform(Lorg.apache.turbine.util.RunData;)V(ActionEvent.java:148)
    at org.apache.turbine.modules.ActionLoader.exec(Lorg.apache.turbine.util.RunData;Ljava.lang.String;)V(ActionLoader.java:122)
    at org.apache.turbine.Turbine.doGet(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(Turbine.java:509)
    at javax.servlet.http.HttpServlet.service(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(HttpServlet.java:697)
    at javax.servlet.http.HttpServlet.service(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(HttpServlet.java:810)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationFilterChain.java:237)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationDispatcher.java:704)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationDispatcher.java:474)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationDispatcher.java:409)
    at org.apache.catalina.core.ApplicationDispatcher.forward(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationDispatcher.java:312)
    at org.apache.jasper.runtime.PageContextImpl.doForward(Ljava.lang.String;)V(PageContextImpl.java:670)
    at org.apache.jasper.runtime.PageContextImpl.forward(Ljava.lang.String;)V(PageContextImpl.java:637)
    at org.apache.jsp.index_jsp._jspService(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(index_jsp.java:50)
    at org.apache.jasper.runtime.HttpJspBase.service(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(HttpJspBase.java:94)
    at javax.servlet.http.HttpServlet.service(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(HttpServlet.java:810)
    at org.apache.jasper.servlet.JspServletWrapper.service(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;Z)V(JspServletWrapper.java:324)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;Ljava.lang.String;Ljava.lang.Throwable;Z)V(JspServlet.java:292)
    at org.apache.jasper.servlet.JspServlet.service(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(JspServlet.java:236)
    at javax.servlet.http.HttpServlet.service(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(HttpServlet.java:810)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationFilterChain.java:237)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationFilterChain.java:157)
    at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;Ljavax.servlet.FilterChain;)V(ReplyHeaderFilter.java:75)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationFilterChain.java:186)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(Lorg.apache.catalina.Request;Lorg.apache.catalina.Response;Lorg.apache.catalina.ValveContext;)V(StandardWrapperValve.java:214)
    at org.apache.catalina.core.StandardValveContext.invokeNext(Lorg.apache.catalina.Request;Lorg.apache.catalina.Response;)V(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(Lorg.apache.catalina.Request;Lorg.apache.catalina.Response;)V(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(Lorg.apache.catalina.Wrapper;Lorg.apache.catalina.Request;Lorg.apache.catalina.Response;)V(StandardContextValve.java:198)
    at org.apache.catalina.core.StandardContextValve.invoke(Lorg.apache.catalina.Request;Lorg.apache.catalina.Response;Lorg.apache.catalina.ValveContext;)V(StandardContextValve.java:152)
    at org.apache.catalina.core.StandardValveContext.invokeNext(Lorg.apache.catalina.Request;Lorg.apache.catalina.Response;)V(StandardValveContext.java:104)
          
    ------------------
  3. How many brands/types of soap do you need?
    How many Java/XML/MVC frameworks do you need?

    Apparently a lot!
  4. Is bad the variety?[ Go to top ]

    I live in Spain,
    and when I go to buy wine to the shop,
    in the shop there are hundreds of differents
    wine type.
    Is this bad?

    On the other hand, OpenXava generate a complete business
    J2EE application from specification and it's Open Source,
    and alive since 2001.
    How many frameworks like this?
    AndroMDA, JAG, OpenDMX, etc.

    And finally, for avoid duplication the better way is
    open the code...
  5. How many brands/types of soap do you need?How many Java/XML/MVC frameworks do you need?Apparently a lot!

    If you don't like choice (and the confusion it brings), there's always .NET.
  6. Hi
    It's the OpenXava the same product than has been discussed here (xavax)?
    http://www.javahispano.org/news.item.action?id=168070378
  7. Hi It's the OpenXava the same product than has been discussed here (xavax)?http://www.javahispano.org/news.item.action?id=168070378

    Yes,
    xavax was renamed to OpenXava due to a trademark issue in USA
  8. But not Galician ...[ Go to top ]

    * All labels and messages are in English, Spanish and Catalan; by now...

    All this 'x' usage reminds me more of Galician than Català 8-)
  9. I am not sure exactly how OpenXava compares with Orbeon PresentationServer (OPS) (of which I am one of the developers) because the OpenXava FAQ and project description leave me utterly confused as to what it is really about!

    But quickly looking at the tutorial, it appears that it ends up building and deploying WAR files and EJBs and appears to be closer from traditional J2EE development than OPS, which favors pure XML technologies with a quick modify-reload type of approach (think scripting).

    Another difference I see is the use of XML. OPS tries to leverage XML standards as much as possible. XML is used to create forms (XForms), page templates (XHTML + XSLT), coarse-grained page model and action logic (XPL, i.e XML pipelines), describe the page flow (PFC), perform data validation (XML Schema and Relax NG), etc. In OpenXava, from what I can tell, it looks like XML is just a way of creating something like objects based on an XML description (but again I am confused).

    If you are looking for an open source XML platform to build web applications, check out those OPS-related links:

      http://www.orbeon.com/software/
      http://forge.objectweb.org/projects/ops/
      http://www.orbeon.com/ops/doc/pages/Tutorial.pdf
  10. I think that Orbeon and OpenXava are different things,
    and hence not comparables.

    Orbeon implements XML standards (like xforms) and make
    it suitable for develop applications. This is good.

    OpenXava tries to base the development in business component concept, that is for every logic concept (Invoice, Customer, etc) we have a .xml with a complete description needed for
    generate a complete (including EJB with EntityBeans) applicaction.
    For us the power of XML is the X (eXtending). The chance
    of create our .dtd and customize it; it's allow us to
    obtain simplicity and flexibility that fit ours requeriments.

    Which is better? I think that depends on the application
    type that you wish to develop. If you need a business application similar to theses that OpenXava generate maybe
    OpenXava is better...
  11. Yawn[ Go to top ]

    Gestión 400 is pleased to announce OpenXava 1.0 release. >>OpenXava is a XML/Java Framework to develop J2EE business >>applications rapidly and easily. It is based on business >>components defined with XML. Feature rich and flexible >>since is used for years to create real business >>applications

    Develop J2EE business applications rapidly and easily....yawn..zzzzzZZZZZ
  12. Comparison with others?[ Go to top ]

    How is this different than Cocoon, AppFuse, EJOSA (from enhydra.org)?

    It would be interesting to see a comparison.
  13. Comparison with others?[ Go to top ]

    I cannot do a exhaustive comparison because I didn't
    use theses framework for develop applications.
    I have used MDA like (UML to EJB generation), IDEs with wizards, XDocLet, Struts, etc. And I can do a exhaustive
    comparison with theses.

    Anyways, I will try to do a comparison, maybe inaccurate:

    Cocoon:
    * Resemblances:
      - Based in xml
    * Differences:
      - Abstraction level: In OpenXava your mainly define logic aspects, and every tecnical one is in OpenXava hand.
    It's more fast make a typical business application with
    OpenXava than with Cocoon. Your can choose use Cocoon as
    implementation tecnology of OpenXava (instead of JSP + EJB).

    AppFuse:
    * Resemblances:
      - Same goal: Rapid development of java application
    * Differences:
      - AppFuse help to develop Struts + Hibernate (or Spring) applications, and it allows to developer to use that for develop. In other hand OpenXava generate complete applicaction and allow to developer to put the pure business logic.
      - In AppFuse your need to write your model code, mapping and DAO code. OpenXava generate this code or provide this functionality.
      - With OpenXava is easy to migrate a complete application from swing to web or from EJB to Hibernate.

    EJOSA:
    * Resemblances:
      - Same goal: Rapid development of J2EE application
    * Differences:
      - EJOSA is base on MDA: See OpenXava FAQ about this, in
           http://www.gestion400.com/openxava
      - EJOSE generate more code. OpenXava generate only model code and mapping to database (now EJB EntityBeans 2, and soon Hibernate), and use introspection for the rest.
      - EJOSE seem linked to Jonas. OpenXava support JBoss, and very soon Websphere.
      - EJOSE born as a project to learning of students. OpenXava born in a company that need produce J2EE applications with the same (at least) cost and functionality that RPG ones. The features of OpenXava has been growing as it was used in the application development.


    I don't say that OpenXava is better than other frameworks, this depends on the type of application that you wish develop; and your preferences (do you like xml for define applications?).
    The better comparison is develop a little example with each of this framework, and then taste it.