UJO Framework 0.80

Discussions

News: UJO Framework 0.80

  1. UJO Framework 0.80 (16 messages)

    The UJO Framework was extended to version 0.80:
    • the new interface UjoExt is available for a better comfort to developers. The interface supports a chaining of properties or setters for example
    • optimized deserialization of UJO objects, which is now faster as JAXB 2.1
    • simplification of some methods by a new interface UjoAction
    UJO Framework provides objects with a different architecture from JavaBeans. The original idea was a toy with generic data types of Java 5.0 however over time it appears, that the architecture has some exciting features:
    • an easy object introspection without a heavy PropertyDescriptor implementation
    • a transfer of the UJO object properties (not values) by a collection
    • the core of the building has two interfaces for an easy implementation
    These properties open up new possibilities for the use in the J2EE mainly in a production of generic operations over objects. Framework contains some tools for managing the UJO object in addition. See a short motivational presentation for more information: http://ujoframework.org/presentation/ You can find a link to a reference application called jWorkSheet on the home page. The jWorkSheet is a project time tracker application and uses the architecture UJO objects consistently for all persistent objects. I welcome all feedback and comments.

    Threaded Messages (16)

  2. Re: UJO Framework 0.80[ Go to top ]

    And what problem or issues does this framework aim to solve?
  3. Re: UJO Framework 0.80[ Go to top ]

    The problem of lack of "non-traditional object architectures different from JavaBeans".
  4. Re: what problem to solve?[ Go to top ]

    For example: you have got objects with facilities similar like PropertyDescriptor created by a very small effort.
  5. Re: what problem to solve?[ Go to top ]

    Ok, the framework addresses the difficulty of creating "PropertyDescriptor like facilities". That is a concise description which is missing from the original post. This kind of statement allows people to quickly decide if they wish to dig deeper or move on to other things.
  6. Ok, but it is a one feature only which opens a way to more unique solutions include quick serialization or a simple JTable support for example.
  7. Integration[ Go to top ]

    I think this is a valuable design choice with the advent of more "property-based" datastores like S3/SimpleDB and BigTable. One hole to plug is a way to navigate the new bean format from an EL. If your JSP page issues employee.address.zip, you will want to be able to handle that call without some kind of adapter layer. But using it from something like Wicket which doesn't have an EL would allow for extremely quick development cycles if your stack includes BigTable or SimpleDB. -- jim
  8. Re: UJO Framework 0.80[ Go to top ]

    Why person.setName("name") is better than person.set(Person.NAME, "name"); ???
  9. The next notation is not simpler of course:
    person.set(Person.NAME, "name")
    however the UJO object architecture can be valorized simple by a generic tools without coding an PropertyDescriptor(s).
  10. The next notation is not simpler of course:
    > person.set(Person.NAME, "name")

    however the UJO object architecture can be valorized simple by a generic tools without coding an PropertyDescriptor(s).
    Let me see if I understood. If I use this framework I'll have to make my objects extends from a MapUjo (a class from the framework). Doing so I won't have do code an PropertyDescriptor. Come on, is this the major advantage of the framework? I'll have to kill my POJO architecture because of this? It´s 2008, you know... frameworks shouldn't obligate developers to extend their bussiness object from a crazy framework class. Surprise me if I'm wrong :)
  11. If I use this framework I'll have to make my objects extends from a MapUjo
    Yes, it is the easiest way, however you can implement an Ujo interface (just one implementation to your parent e.g.)
    Come on, is this the major advantage of the framework?
    This is a major feature. Advantages starts, if you works over the object:
    • copy all or selected attributes from source to new object by a one statement (method)
    • clone the object by a selected depth
    • create a generic comparator
    • find a property by its text name
    • write a value by the found property to an another object or a collection of objects
    • restore a default value of the property
    • easy text conversions of the properties
    • simplified work with an arrays (you can't initialize array before add method e.g.)
    • generic toString() method for easy debugging
    • easy visualization of UJO object(s) by JTable
    • easy persistence of ujo to different formats
    • and many, many more ...
    I'll have to kill my POJO architecture because of this?
    Oh no! See a simple solution.
    It´s 2008, you know...
    OK :-)
    frameworks shouldn't obligate developers to extend their bussiness object from a crazy framework class.
    Surprise me if I'm wrong :)
    OK, I try it by the next simple solutions:
  12. OK, I try it by the next simple solutions:
    You don't need to recreate JavaBeans model to have a simpler JTable. See http://www.sourceforge.net/projects/tikeswing and YTable that shows a collection of JavaBeans in a table without writing table models. And these standard JavaBeans can be used as EJB 3.0 entity beans (+ many other frameworks). So I don't see any reason to model my business some other way and end up creating convertors to JavaBeans because of persistence, xml-mapping etc. framework
  13. I'll have to kill my POJO architecture because of this?
    Oh no! See a simple solution.
    Yes but the solution implies that my POJOs should extend BeanUjo or MapUjo, or am i missing something?
  14. ... the solution implies that my POJOs should extend BeanUjo or MapUjo, or am i missing something?
    Yes, an extension is the easiest way, however you can implement an Ujo interface (just one implementation to your parent e.g.). See the next sample.
  15. Re: Ujo implementation[ Go to top ]

    A link to the Ujo implementation sample one more: http://ujoframework.org/#ujoimpl
  16. Why not annotations?[ Go to top ]

    While I see some cases that benefit from using this lib I sincerely don't think it's worth all the effort. If I understood correctly the motivation, why a simple POJO with a bunch of custom annotations is not enough? Things are already too complex to add another layer...
  17. Re: Why not annotations?[ Go to top ]

    ... why a simple POJO with a bunch of custom annotations is not enough?
    Annotations are excellent thing but I'm afraid that the one can't replace the UJO architecture.
    Things are already too complex to add another layer...
    This is a great truth. However, I believe that will happen gradually new tools for the development on the UJO architecture.