1. #1
    Sencha Premium Member
    Join Date
    Oct 2009
    Location
    Germany
    Posts
    299
    Vote Rating
    62
    Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough

      3  

    Default Ext4j : Another approach on Ext JS development

    Ext4j : Another approach on Ext JS development


    Hello commnunity,


    Today i m exited to share with a tool that we ve been using internally for quite a long time now and that has helped us take our Ext JS developement to another level.


    Working on a heavy J2EE based environment we were always looking for a way to improve our developement experience.

    Tooling around Ext(and JS in general) has become verry powerful over the time(Designer, Eclipse plugin,IntelliJ, Cmd, etc ...).Libraries like ExtDirect, DJN have make (Java) backends integration enjoyable. Even though we were always able to get things done, we were not really satisfied with this approaches.

    What we wanted is the ability to leverage the same language all over the application stack (from front to backend).On top of that we wanted even powerful tooling. We wanted our code to scale as the code size becomes bigger and bigger.

    Meet Ext4j

    Ext4j is a library that leverage Ext JS and the Google Web Toolkit(GWT) to help developers write Ext JS apps in Java and have it compile to JavaScript using the GWT compiler.
    Not only do you get a high optimised JS output(The GWT compiler is one the best at generating performant JS), you also get all the tooling around Java Enterprises Softwares for free.

    Why use Ext4j ?

    If you are looking for strong tooling support with a language designed for big scale applications and must not use JavaScript to create Ext JS applications then Ext4j might a good choice for you.
    Convincing customers of this approach could be difficult but once they see what Ext4j brings to the table their opinion will change real fast.

    What does Ext4j has to offer ?

    1) First the library will be FREE to use with an Apache 2 license(Ext JS licensing still applies though).

    2) 100% coverage of Ext JS API. Whatever s possible in JavaScript the library aims to support and better.

    3) Strong typing and IDE support at NO COST.
    outlineview.jpg

    This means code completion, compile time errors, real debugging, refactoring all FOR FREE.

    4)
    Real Softwware Engineering

    Interface design, Composition, Design pattern must not be emulated. BecauseExt4j leverages the Java langague everything is there ready to use.
    5) Declarative User Interface

    Ext4j support GWT UI Binders giving you the ability to layout the UI in a XML based declarative way.
    Code:
    <x:TabPanel  height="500px" width="800px" activeTab="1">
         <x:Panel title="Chart Panel" closable="true" layout="fit">
             <x:ToolBar>
                   <x:ToolBarFill/>
                  <x:Button text="Reload Data" ui:field="button" />
            </x:ToolBar>
            <x:Chart ui:field="chart"/>
         </x:Panel>
         <x:Panel title="DatePicker" closable="false" bodyPadding="10" layout="vbox" >
               <x:DatePicker/>
               <x:Button text="Ext Button"/>
              <x:Slider increment="5" minValue="0" maxValue="100" width="200px"/>
          </x:Panel>
    </x:TabPanel>
    As you can see this is less verbose and pretty handy speciall for non prorammers(Designers).

    6) Seamless Java(and others) backend integration.


    Because Ext4j leverages the Google Web Toolkit you get the ability to invoke Java backend methods right from the client in Java.

    7) Even more...


    Version 1 is just the beginning. We are planing(with the help of the comminity of course) to make this the best tool possible for creating Ext JS application.
    We are confident that after using Ext4j your Ext JS development experience will never be the same.

    Real world example

    While getting ready for the GA release. We are also implementing a set of applications to demonstrate what s possible with Ext4j. Below is the picture of the Ext4j Explorer.
    explorer.jpg
    The explorer allready contains more then 50 demos(and counting). You can see it in action here:

    http://eemi2010.github.com/ext4j

    What s next ?

    Stay tuned for more infos here while we are getting the library ready for release.

    Cheers,

    Ekambos



  2. #2
    Sencha - Support Team scottmartin's Avatar
    Join Date
    Jul 2010
    Location
    Houston, Tx
    Posts
    9,076
    Vote Rating
    467
    scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future scottmartin has a brilliant future

      0  

    Default


    Very nice ... thank you for sharing!

    Scott.

  3. #3
    Sencha User
    Join Date
    Sep 2012
    Posts
    9
    Vote Rating
    1
    WebUser is on a distinguished road

      0  

    Default


    Brillant !
    After a lot of PHP based solutions(Bancha, Ext4 Yii, etc...)
    Finally something for us Java Devs.
    When should we expect this ?

  4. #4
    Sencha User
    Join Date
    Sep 2010
    Posts
    25
    Vote Rating
    1
    GXTUser1 is on a distinguished road

      0  

    Default


    Interesting indeed.
    Nice demo app by the way.
    The app is written with Ext4j ?
    Why should one using your tool instead of Sencha GXT ?

  5. #5
    Sencha Premium Member
    Join Date
    Oct 2009
    Location
    Germany
    Posts
    299
    Vote Rating
    62
    Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough

      1  

    Default


    @Scott.
    Thx. Really appreciate

    @WebUser
    Thx
    As a Java Devs myself i understand where you are coming from.
    There is not ETA yet. I will definitely share more in the coming days.
    GA release is not faar away.

    @GXTUser1
    Yes the Explorer is written with Ext4j
    Like i said in my previous post we will be adding more demos before GA.

    "Why should one using your tool instead of Sencha GXT ?"

    Well we created Ext4j because our customers wanted an Ext JS solution.
    We just convinced them that that solution must not be written in JavaScript.
    Most of them allready have a Ext JS license and were not willing to buy a GXT license.
    The library primary aims to help people in the same situation.

    Beyond that we simply aim to be a great alternative for Web development period.
    Combining Ext JS and Java in the way we do has a big potential and hopefully you guyz will also see it that way





  6. #6
    Sencha Premium Member
    Join Date
    Oct 2009
    Location
    Germany
    Posts
    299
    Vote Rating
    62
    Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough

      0  

    Default


    A better real world example will follow in a few.
    Stay tuned

  7. #7
    Sencha Premium Member
    Join Date
    Mar 2010
    Posts
    111
    Vote Rating
    -1
    predator has a little shameless behaviour in the past

      0  

    Default


    Every once in a while somebody comes around and says XML is so much better...


    For me personally this is a mess:
    PHP Code:
    <x:TabPanel  height="500px" width="800px" activeTab="1">      <x:Panel title="Chart Panel" closable="true" layout="fit">          <x:ToolBar>                <x:ToolBarFill/>               <x:Button text="Reload Data" ui:field="button" />         </x:ToolBar>         <x:Chart ui:field="chart"/>      </x:Panel>      <x:Panel title="DatePicker" closable="false" bodyPadding="10" layout="vbox" >            <x:DatePicker/>            <x:Button text="Ext Button"/>           <x:Slider increment="5" minValue="0" maxValue="100" width="200px"/>       </x:Panel> </x:TabPanel
    But I guess your platform is something good for the java people, keep up.

    /P

  8. #8
    Sencha Premium Member
    Join Date
    Oct 2009
    Location
    Germany
    Posts
    299
    Vote Rating
    62
    Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough

      0  

    Default


    Well some people prefer a more declarative approach. Specially non programmer.
    Plus XML layouting gives a basis for a visual editor (Stay tune for more in that direction )

    But you must not use XML. One can do it all in code
    PHP Code:
    Panel p = new Panel(Layout.FIT);
    p.add(new Button("Click Me");
    //more code here 
    While the library use Java as input language it targets every developer.
    Give it a try .

    Cheers,

    E



    Quote Originally Posted by predator View Post
    Every once in a while somebody comes around and says XML is so much better...


    For me personally this is a mess:
    PHP Code:
    <x:TabPanel  height="500px" width="800px" activeTab="1">      <x:Panel title="Chart Panel" closable="true" layout="fit">          <x:ToolBar>                <x:ToolBarFill/>               <x:Button text="Reload Data" ui:field="button" />         </x:ToolBar>         <x:Chart ui:field="chart"/>      </x:Panel>      <x:Panel title="DatePicker" closable="false" bodyPadding="10" layout="vbox" >            <x:DatePicker/>            <x:Button text="Ext Button"/>           <x:Slider increment="5" minValue="0" maxValue="100" width="200px"/>       </x:Panel> </x:TabPanel
    But I guess your platform is something good for the java people, keep up.

    /P

  9. #9
    Sencha User
    Join Date
    Jun 2012
    Posts
    33
    Vote Rating
    14
    plum will become famous soon enough

      0  

    Default


    I'm not very familiar with GWT world. Can you explain how to implement custom new component created with ExtJs to Ext4j?

  10. #10
    Sencha Premium Member
    Join Date
    Oct 2009
    Location
    Germany
    Posts
    299
    Vote Rating
    62
    Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough Ekambos is a jewel in the rough

      0  

    Default


    Do you mean exporting an existing custom Ext JS component to GWT with Ext4j ?

    Quote Originally Posted by plum View Post
    I'm not very familiar with GWT world. Can you explain how to implement custom new component created with ExtJs to Ext4j?