You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-dev@db.apache.org by Alexander Bibighaus <al...@scrashmeow.org> on 2003/07/18 06:45:31 UTC

ui console

Hello,

I have been working on a web application that I'd like to contribute to OJB in some way with src.  It transparently provides browse, search, create, edit, delete functionality to OJB objects.  
It also provides some OJB administrative features and customization features.

A while back, I wrote the included email asking for a little feedback from the OJB developers regarding my prototype.

I have taken some more time to solidify the application. I feel like the application is evolving quite nicely.

Since the prototype, I've made lots of additions.

The highlights include support for the Collection Descriptors and Reference Descriptors and Data validation.  Simple Cache Management and
multiple PB Key support. I'/ve also added minimal support for providing additional repository metadata to enhance the UI.  labels, annotations and such.  

If you'd like an easy demo, you can go to the url is   http://www.scrashmeow.org/ojb/

If you'd like to download the application, including the source. You can go here: http://www.scrashmeow.org/web/downloads.jsp

I hope you try it out.  I hope it will be quite useful.  I have significantly reduced the size of the distribution this time so it should
be easier to download.  The download includes a war (which  you need to expand and replace the repository files) and the source code and sparse javadocs.
If you deploy the application, it requires jdk 1.4 (right now) and I've only really tested it with Tomcat. 

One thing you might want to try is:

- Create an Address, 
   Browse, Search etc.

- Create a Photo Album. 
- Within an album, you can add photos or add comments to the album. (CollectionDescriptor).  This can be nested as much as you want.
- Within a photo, you can create a PhotoImage object.  (Reference Descriptor). 

You might also want to try searching for objects.  You can trigger the struts validators by trying to include bad data such as a non integer number
in an integer field.  Feel free to explore all you'd like.

Finally, you might want to browse the settings and the descriptor sections.

I'm am ready to let a wider audience  try it out and hopefully get a a few users.  I'd love to donate it to the project or maybe have it available as a contrib.

Let me know what you think and  feel free to ask me questions.

-alexander

----- Original Message ----- 
  From: Alexander Bibighaus 
  To: ojb-dev@db.apache.org 
  Sent: Thursday, June 05, 2003 10:19 PM
  Subject: a UI...something to think about


  Hi Ojb Developers,

  I have a prototype of a User Interface for OJB.  Now, I would like to get some feedback from the developers to see if its worth pursuing further.
  I'm starting out with a small audience so I hope the dev list is not inappropriate. 

  I guess my goal would be to put together an Administrative Console that I could donate to OJB and ideally evolve it into some type of sub project of OJB ( if
  that is deemed appropriate )

  Right now, I feel that I carefully put together a prototype that conveys enough to discuss.  While I hope it shows that I'm serious about it,
  given my intentions here I simply shouldn't go much further in the implementation without opening dialog with OJB.

  Basically here are my thoughts:

  In as few words as possible:

  This console is the administrative interface to OJB.   The current prototype provides the following features:

  1. A view into the Repository ie the Descriptor and Connection Repositories.

  2. Transparent Crud for all object. This implies:
    * Browsing the objects of a given type
    * Selecting objects of a type to Edit
    * Inserting new objects
    * Removing objects of a type
    * Removing all objects  of  a type

  3. Login with a different PB Key

  Things you need to know if you look deeper

  0. I encourage you to take a look at the code. I welcome further discussion.  Just email and ask.  I can provide a  war file to play with and/or the src.  Or I could just generate the javadocs so u can see the basic design.
  1. My intention is to keep the UI simple but functional.  I'd rather add more features rather than concentrating on visual flashy things.
  2. I  used Struts (nightly build) and ojb Rc3 to implement this.
  3. I have only tested it on Tomcat 4 with JDK 1.4 (linux and windows).
  4. There is a lot of thought out design and abstraction under the covers....but it is just a prototype :) There are bugs lurking, Other things lack too...  I haven't completed javadocs or written unit tests...
  5.  I think there are few html flaws when viewed with Mozilla, but not to far off.

  A few things I've already planned for features in the furute

  0. Ability to provide additional repository metadata to enhance the UI.  labels, annotations and such.  This could be done through a UI repository.xml  or other means.
  1. Ability to actually modify, create/edit repository elements and export the OJB repository.xml 
  2. Further enhance to Insert/Edit to support reference and collection descriptors.
  4. Enhance the collection of widgets for the Insert/Edit form.   (Currently, A widget implement an interface and provides a struts tile definition.
      Also enhance so that struts validations can be specified for specific field descriptors for the Insert/Edit forms
  5. Provide a  OQL /ODMG query tool where you could type in your queries and then see your result set much like the simple search I've prototyped
  6. Reverse engineer tables like your current swing app does.
  7. Provider further statistics about the current state of the system.
  8. UI Extension mechanisms to help people building OJB/Struts based apps.

  Here is my web site address where you can view the prototype in action.

  http://www.scrashmeow.org/ojb

  As a sample use case, you may want to 

  Click on repository.
  Browse News Articles
  Click on one to insert
  Save it and browse again.
  You can try out the search too.

  Hope this stirs some discussion up at least :)  
  -alexander bibighaus