Hi all:

Here is a proposal for a improved EJX GUI. Using EJX I've
found it is very .xml oriented. You have to edit two or
three .xml files to get your application deployable in
jBoss2. I want to present a better (in my opinion)
alternative.


PROPOSAL
-----------------------------------------------------------

Make an improved EJX GUI. One that can make your .xml files
"behind the scenes" while you concentrate on the components
that make your application and how they relate to each
other.


DESCRIPTION
-----------------------------------------------------------

I've found the NOMENCLATURE of jBoss2 code very clear. This
has inspired me :-) this proposal. I like the names
Application, Container... etc.

(1) The user will work with these concepts to construct the
    application. User is not the correct word, the applica-
    tion assembler is a better one. I see EJX as an appli-
    cation assembler tool. In fig.1 are the basic concepts
    the assembler will see.

    Fig. 1 -> http://perso.wanadoo.es/dwillis/fig1.gif

    EJX should be able to read jBoss config files to
    show the esternal resources (like datasources, mail
    sessions, jms services, etc).

    I think the best way to show this information is
    graphically (I learn to program 16 years ago on a Mac,
    I am very graphical oriented :-) This way we could
    show relationships between components with a simple
    line connecting two items. We could see quickly
    components with unresolved references (ie, an ejb
    with an ejb-reference not connected to any other bean,
    or an ejb with a resource reference not connected to
    any external resource). EJX could analyze these 
    references and see if they are satisfied, and show
    a list of conflicts. Going far, far (far away from
    this galaxy :-) EJX could, using the new verification
    classes in jBoss2, verify the complete application
    to see if it is EJB 1.1 compliant (EJB 2.0 compliant
    in the future).


IN-DEPTH
-----------------------------------------------------------

Here are the steps the app. assembler will do to create or
modify an application.

(1) New/Open application

    Fig. 2 -> http://perso.wanadoo.es/dwillis/fig2.gif

(2) This would be show to the app. assembler

    Fig. 3 -> http://perso.wanadoo.es/dwillis/fig3.gif

(3) Clicking in the Application area would show the common
    properties/actions of the Application.

(4) Clicking in the "Web containers" area would show the
    common properties/actiosn of web containers.

    - Web containers administration (I don't know if there
      any, hehehe). Ability to add/modify/remove configu-
      rations.

(5) Clicking in "EJB Containers" area would show...

    - EJB containers administration. Ability to add/modi-
      fy/remove container configurations.

    - EJB persistence managers administration config?

    - Other common EJB configurations.

(6) Clicking in a particular container would show the
    specific properties of this container. 

(7) Every item (application area, web containers area,
    a particular container, external resource) should
    have a pop-up menu to do the same things that can
    be done through the properties page.


RELATIONSHIPS
-----------------------------------------------------------

Using this graphical interface only to display in a fancy 
way an application and its components would be useless. I
think that it offers a lot more than just displaying
beatiful colored rectangles ;-)

Here is an idea to construct an application just drawing
lines from component to component.

(1) Every container would have handles to show references
    to external components.


(2) The application assembler will create these handles
    (ie. ejb-references, resource references, etc) and
    then selecting the "line tool" will connect this
    handle to another component. EJX will ask the nece-
    ssary information to complete the request.

    Fig. 4 -> http://perso.wanadoo.es/dwillis/fig4.gif

    This way if we see a handle not connected to any 
    component, we know there is an unresolved reference.
    EJX will check these situations to show the app.
    assembler a list containing all the conflicts found.


PLUGIN ARCHITECTURE
-----------------------------------------------------------

I like a lot the plugin architecture of EJX. These plugins
show a properties page when an item is selected. How does
EJX will know when to show the correct plugin? Well, I
see it's a matter of SCOPE.

For example, an ejb container configuration plugin has to
be shown when we select "EJB Containers". This is the
scope of the plugin.

This scope could declared in a xml file associated with
the plugin or something similar.


THAT'S ALL FOLKS
-----------------------------------------------------------

Here are some ideas to improve EJX. I think some are
valuables. If this mail has made someone begin to think
about more possibilities... well, "mision cumplida" (I
can't translate this, sorry ;-)

kind regards

Pedro Mota

-----------------------------------------------------------
P.S. The most dificult part doing this new EJX I see is in
     the routing of lines (is there any CAD/CAE developer
     here? :-)





_______________________________________________________
�Tienes cuentas de e-mail GRATIS en Excite Espa�a!
A tu disposici�n en http://correo.excite.es 


Reply via email to