Ext

Ext JS 3.0 RC2 Release – Stable, Robust, and Enhanced

June 3, 2009 by Evan Trimboli

We are pleased to announce that the latest release candidate of Ext 3.0 is now publicly available. We are very proud of the stability of this release. We’d like to thank our support team and elite community members who have tested the release candidates. You have assisted in squashing a number of bugs affecting both Ext Core and Ext JS. The time taken to report issues and create test cases is much appreciated.  The list of issues resolved for this deployment can be found for Ext Core and Ext JS separately. Some of the major fixes include:

  • Items are now automatically laid out when they are first shown – rather than trying to calculate dimensions when they are hidden. This will solve a number of layout issues that occur across all components.
  • The toolbar overflow has been improved to support all toolbar items, including CycleButtons and Buttons with toggle enabled (both grouping and otherwise).
  • Issues with some animations in the Fx library have been corrected.

New Examples

Several new examples have been added in this version to help you get up and running with Ext 3.0 quickly.

  • A new example detailing the new REST support for stores has been included, which supports full CRUD operations.
  • // A single store using the Proxy, Reader and Writer together
    // through a RESTful interface
    var store = new Ext.data.Store({
           id: 'user',
           restful: true, // <-- This Store is RESTful
           proxy: proxy,
           reader: reader,
           writer: writer // <-- plug a DataWriter into the store just as you would a Reader
    });
  • An excellent demo illustrating the use of multiple providers together is now available. Here we use the Ext.direct polling to make regular requests to get the server’s time. These requests can be interspersed with those of a remoting provider, which allows both an echo and a multiplication to take place.
  • <script type="text/javascript" src="php/api.php"></script> //Ext.app.REMOTING_API
     
    <script type="text/javascript">
    Ext.onReady(function(){
        Ext.Direct.addProvider(
                Ext.app.REMOTING_API,
               {
                   type:'polling',
                   url: 'php/poll.php'     //additional Provider
               }
         );
    });
    </script>
  • An additional example demonstrates the new writer capabilities of Ext. It provides full CRUD support using a grid, without any use of Ext direct. It shows how the writer can be used with legacy style server interaction.

Writer Sample
Writer Sample

New Features

It wouldn’t be a cool release if we didn’t add some goodies. The documentation has been significantly improved, with a number of classes getting extra information or examples added to their reference page. Peruse the new and updated documentation to find some hidden gems.

REST support

Many web frameworks today are implementing REST services to simplify the CRUD process. With Ext’s new data package enhancements, designing a RESTful Store is a snap. Simply plug a suitable DataWriter extension, like JsonWriter, into any Store along with a standard HttpProxy and set the new Store configuration-property restful: true. Your Store will now automatically generate GET, POST, PUT and DELETE requests to your server.

DataWriter

The Ext JS 3.0 data package introduces compelling enhancements with a new component called DataWriter (along with descendant JsonWriter). These collection of enhancements will simplify your interaction with Ext.data.Store by automatically generating CRUD requests to your server-side framework. Once you plug a suitable DataWriter extension, like JsonWriter, into your Store you’ll never have to manually compose Ajax CRUD requests to your server again — it’s all automated now and highly configurable.

//define and we'll handle the rest
var proxy = new Ext.data.HttpProxy({
    api: {
        read    : 'app.php/users/read',
        create  : 'app.php/users/create',
        update  : 'app.php/users/update',
        destroy : 'app.php/users/destroy'
    }
});

Ext.Error

A base error class has been added, with the intention of extending this to provide more robust error handling throughout the framework in the debug build. As part of this, we will be looking at introducing extra code into the debug build to check for common errors and problems. The developer will be alerted to the issue allowing them to quickly find the point of failure and rectify the problem. These extra checks will be automatically removed in the production build so that performance is not negatively impacted. Stay tuned for more details.

As an example, here are some errors used in data namespace to make it easier for new and seasoned developers:

"DataProxy attempted to execute an API-action but found an undefined url / function.  
Please review your Proxy url/api-configuration."

"Could not locate your "root" property in your server response.  
Please review your JsonReader config to ensure the config-property "root" matches the property 
your server-response.  See the JsonReader docs for additional assistance."

We look forward to community input on where we should add additional checks based on your experiences.

Ext.direct interoperation with Ext.Component subclasses

The main feature that has been added in this release candidate is extra interoperability between Ext.direct and other Ext.Component classes. Both the Ext.tree.TreePanel and Ext.form.FormPanel can now load their data via Ext.direct.

Loading a tree using Ext Direct

In this case our server side method takes a single parameter (the id of the node) and returns an array of JSON nodes. An example of this can be found here.

API Definition:

Ext.app.REMOTING_API = {
    "url": "php/router.php",
    "type": "remoting",
    "actions": {
        "TestAction": [{
            "name": "getTree",
            "len": 1
        }]
    }
};

Sample code

Ext.onReady(function(){
    Ext.Direct.addProvider(Ext.app.REMOTING_API); //setup provider
 
    var tree = new Ext.tree.TreePanel({
        width: 400,
        height: 400,
        autoScroll: true,
        renderTo: document.body,
        root: {
            id: 'root',
            text: 'Root'
        },
        loader: new Ext.tree.TreeLoader({
            directFn: TestAction.getTree //specify directFn on tree
        }),
        fbar: [{
            text: 'Reload root',
            handler: function(){
                tree.getRootNode().reload();
            }
        }]
    });
});

Forms and Ext Direct

By popular demand, we’ve added Ext.direct for loading and submitting data via forms.

var form = new Ext.form.FormPanel({
               api: {
                      load: App.ss.ClientForm.load,   
                      submit: App.ss.ClientForm.submit
                      },
                paramOrder: ['uid'],
                defaultType: 'textfield',
                items: [/* Ext.form.Fields go here */]
});

We encourage you to download and use the latest release candidate. We hope you enjoy using Ext JS 3.0 – we had a blast creating it.

Lastly, following a tradition started with Ext 1.0, we are offering a pre-release sale with hefty discounts to upgrade your 2.x license. If you’ve thought about purchasing an Ext License, for a limited time, you can purchase online for less than an Ext 2.x License. There’s no better time to support the Ext team. Enjoy.

88 Responses to “Ext JS 3.0 RC2 Release – Stable, Robust, and Enhanced”

  1. David Davis

    Awesome. I love the form loading and submitting idea using direct. Maybe I will tie this into FormFu,,,,

  2. El

    Congratulation Ext Team !!!
    We have been expecting for Ver 3.0 , and having a new stable RC is exciting.
    Keep on the good work !!
    El

  3. ExtLover

    Congratulation Ext Team !!!
    We have been expecting for Ver 3.0,and welcome to the most popular extjs forum of China 17ext.com

  4. Nils Dehl

    Congratulation Ext Team !!!

    NICE WORK!!!

  5. Ramzi

    First of all: congratulation.

    Just asking for the missing Java stack in the Ext.Direct Pack on Ext JS Downloads page.

    Thank you.

  6. KimH

    Ext Core download page is still refering to Beta 1. Shouldn’t this be updated?

  7. Nickolay

    Congratulations!

  8. Trinidev » Ext JS 3.0 RC2

    [...] Ext JS 3.0 RC2 est disponible. [...]

  9. nilamani

    Congratulation !!!
    In the example “RESTful Store Example”, if I changed column position
    pop up (edit)showed error msg even if I haven’t changed when changed
    from one row to another.

  10. Jon

    When are we going to see the air support come back in. I’m holding off on starting an Air App until I see the 3.0 AIR stuff.

  11. Aaron Conran

    @Jon The Air package will be updated for Ext 3.0 after its final release.

  12. Aaron Conran

    @KimH Look for an Ext Core 1.0 final release coming soon

  13. Brendan Carroll

    Can we get RC2 added to CacheFly? That would be suupper!

  14. dpll

    verygood
    thinks

  15. Ramzi

    What about the missing Java stack in the Ext.Direct Pack on Ext JS Downloads page ?

  16. Jay garcia

    Great news guys. Keep kicking out awesome code. :)

  17. Ext JS 3.0 RC2がリリースされました。 | Ajaxサンプル開発者ブログ

    [...] Ext JS公式ブログより。 [...]

  18. Ext JS 3.0 RC2 Released « Eugene’s Ext JS Blog

    [...] Read the full article on Ext JS Blog [...]

  19. ExtJS 3.0 RC2 - а мы идем в сторону RESTfulAlpha-Beta-Release Blog » Архив блога

    [...] так, сегодня вышел следующий кандидат-релиз 3-й версии ExtJS, а также вторая бета-версия Ext Core, они обновляются [...]

  20. fREW Schmidt

    Woohoo! Error messages! This is what I’ve been wanting forever!

  21. Crysfel

    Excellent!! thanks you so much!!

  22. Liberado Ext JS 3.0 RC2 : Blogografia

    [...] realizar algunos tutoriales para estos nuevos componentes, para mayor información puedes ir al blog oficial donde nos hablan al [...]

  23. RUSSIAN BLACKEDITION » Blog Archive » Библиотека ExtJS / ExtJS 3.0 RC2 — а мы идем в сторону RESTful

    [...] интересной, автор сeгoдня и пoгoвoрим. Из чего следует, сегодня вышел плывущий кандидат-релиз 3-й версии ExtJS, а как и вторая бета-видоизменение Ext Core, они [...]

  24. Ramūnas

    Google REST basics (http://code.google.com/intl/lt/apis/gdata/docs/2.0/basics.html) say:

    If your firewall does not allow PUT, then do an HTTP POST and set the method override header as follows:

    X-HTTP-Method-Override: PUT

    Maybe here it should be configurable?

  25. Marco

    Bugs logged in 3.0 RC1 have not been corrected.
    Why we have a RC2 before RC1 correction ?
    Half of Demos provided with RC1 don’t work with RC2 today with IE the most used browser.

  26. boolean

    good news,good day

  27. Aaron Conran

    @Marco Hundreds of issues have been resolved between the Ext 3.0 RC1.1 and RC2 release. If you have open issues, please post them in the Ext 3.0 Bug forum http://extjs.com/forum/forumdisplay.php?f=41 so that they can be addressed.

    Thanks!

  28. IntelliJ IDEA中文爱好者博客 » Blog Archive » ExtJS 3.0 RC2发布

    [...] 这个应该是ExtJS 3.0的最后一个RC版本啦,正式版应该很快发布啦,不过现在如果想了解ExtJS 3.0的特性,应该可以啦,RC2应该很稳定啦,接下来就是等正式版进行项目啦。详细信息请移步: http://extjs.com/blog/2009/06/03/ext-js-30-rc2-release-stable-robust-and-enhanced/ [...]

  29. Pau Ubach

    Marco, IE isn’t the most used browser.
    http://www.w3schools.com/browsers/browsers_stats.asp
    Anyway it would be good to have the bugs solved for it.

    Great work!! I really love this, and I’m waiting to see the final release.

    Pau

  30. Juha Carlo

    This is truly great work! Hopefully remaining issues will be worked out soon!

    @Pau Ubach,
    By reading the explanation on w3schools you will soon find out that statistics provided is collected from w3schools logfiles and represent users of their site only. It’s not realistic to use their numbers for the whole web.

  31. Ramzi

    What about the missing Java stack in the Ext.Direct Pack on Ext JS Downloads page ?

    Is it absent because it’s beta (version 0.31)?

    Any response from ExtJS team?

  32. Thorsten

    Good news.

    But we had many problems updateing our ext 2 apps to ext 3. this is the reason we are waiting for some kind of migration guide. Is a guide for migration to ext 3 available anywhere?

  33. Daily del.icio.us for June 3rd through June 4th | Vinny Carpenter's blog

    [...] Ext JS – Ext JS 3.0 RC2 Release – Stable, Robust, and Enhanced – We are pleased to announce that the latest release candidate of Ext 3.0 is now publicly available. [...]

  34. Jacob Andresen

    Thanks for the hard work guys! the REST and CRUD examples are great!

  35. lenoval

    getAttribute throw error on windows 2003,IE8

  36. Steffen Hiller

    Belated congratulations from my side, too!

    For all Rails developers out there, I wrote a Rails backend for the RESTful example: http://www.extjswithrails.com/2009/06/restful-store-example-with-rails_04.html

    Cheers,
    Steffen

  37. Eric Berens

    I must say I am impressed with the amount of work that has gone in to releasing this build. Kudos to the entire ExtJS team! Looking forward to the final release.

  38. EXTJS.CN

    Very good,
    http://www.extjs.cn

  39. 잘만들었넹

    아직 안써봐서 모르지만~ 좋아보임~ ㅋ

  40. small business PBX

    Thanks! Keep up the good work!!

  41. flymoon

    中国人民发来贺电

  42. myext

    不错!!!!!!!!!!!!!!!

  43. everest

    广东人民发来贺电!

  44. flash8627

    武汉人民恭贺3.0,你的设计器什么时候好啊。
    再不好,就不跟你玩,去玩dojo

  45. Jeroen

    For when is the 3.0 final planned?

  46. EXTJS.CN

    good!

  47. er

    lots of bugs in IE

  48. xiaojun

    发现了一个bug,在拖拽gridpanel的header时,在IE中和FF中都不行

  49. guo

    tree has bugs in ie6

  50. chifeng

    在IE6下 http://extjs.com/deploy/ext-3.0-rc2/examples/tree/check-tree.html
    Checkbox TreePanel有Bug, 导入最新的ext-3.0-rc2包后的项目,在IE6下也一样会出现同样的问题.

  51. liyanwei

    有个小bug
    28900行 this.runCallback(callback, scope || node,[node]);少个[node]参数

  52. Ajaxian » Ext Updates: Ext JS 3.0, Ext GWT 2.0; New apps and sites running

    [...] Ext JS 3.0 RC2 Release – Stable, Robust, and Enhanced [...]

  53. liyanwei

    why delete Ext.StatusBar?

  54. Ext Updates: Ext JS 3.0, Ext GWT 2.0; New apps and sites running | Guilda Blog

    [...] Ext JS 3.0 RC2 Release – Stable, Robust, and Enhanced [...]

  55. Ext Updates: Ext JS 3.0, Ext GWT 2.0; New apps and sites running | rapid-DEV.net

    [...] Ext JS 3.0 RC2 Release – Stable, Robust, and Enhanced [...]

  56. 전암

    ExtJS 점점 좋아지는군요 ^^

    요즘 잘 쓰고 있습니다.

    더욱더 발전하는 ExtJS 가 되길 기원합니다 ^^

  57. guoxing

    asdfasdfasfdasfds

  58. Pau Ubach

    The final release was expected for June 15th, any update on this??

    Pau

  59. The Ashes » Blog Archive » Ext Updates: Ext JS 3.0, Ext GWT 2.0; New apps and sites running

    [...] Ext JS 3.0 RC2 Release – Stable, Robust, and Enhanced [...]

  60. KKK

    So da ro!

  61. KKK

    전암의 자슥… ^^;

  62. KKK

    왜 울나라 색희들은 외국웹사이트에다가도 지렁이 꺽쐬 꼭 넣어가면서 글쓸까?

  63. Original Sin

    1. When is the full version ready by? (Could you at least give a rough approximate date?).
    2. Why axe the StatusBar?
    3. I love ExtJS.

  64. Frank W. Zammetti

    Am I the only one getting a little frustrated by the silence with regard to the questions about a release date for final v3? I’ve asked a couple of times, and others have as well, and I’ve never seen an answer yet. To be clear, I have NO PROBLEM WHATSOEVER if the date slips… I’ve been a developer long enough to know that happens and I’m not going to be upset about it, I’ll cope and happily wait for a product I consider great and that I’ve been a big proponent of… but not seeing even a rough, ballpark date anywhere is not cool IMO. I’m close to using my paid support credits to get an answer, but I shouldn’t have to. Come on Ext guys, I love your product, can you help a happy customer out here? Even if you can’t give an iron-clad answer, I’ll take even a real rough estimate at this point.

  65. Pau Ubach

    My answer is no :P

  66. Frustrated License Holder

    Our software relies heavily on EXT. I have purchased a license for 3.0. It is difficult for me to understand why someone cannot give us an update on when the final release will be out. We have a release of our product ready to go to final testing. I do not know whether to begin testing with the intent of using the RC 2 for our production release or if I should be waiting for the final release. How about an answer to a question that was first asked on June 9th? What is the current schedule for the release?

  67. Confused

    Ext 3 final?
    the devs probably just don’t read these comments, has anyone posted this question on the forums?

  68. Pau Ubach

    There’s an answer on forums:
    http://extjs.com/forum/showthread.php?t=71363

  69. 赖君玉

    郑州人民发来贺电

  70. hz

    很好很强大!

  71. kabin

    kabin de 1 numara

  72. Vahid Fakher وحید فاخر

    Very good, Thanks!
    آقا این سایت واقعا محشر کرده
    دست مریضاد
    کی میاد اینهمه اطلاعات رو مفت در اختیار عموم بذاره
    من که حال کردم

  73. liyanwei

    Confirmed, this seems to be happening “at random” on IE. The weird thing is, if I include Ext.Lib.Event after ext-all-debug, before my test code:

    Ext.Lib.Event = {…..};
    Ext.onReady(function(){
    var p = new Ext.Panel({
    width: 400,
    height: 400,
    renderTo: document.body,
    autoLoad: {url: ‘x.html’, scripts: true}
    });
    });

  74. Joe

    Wow this looks amazing. I’m really looking forward to the charts… Right now I’m using AMCharts which is fine, but I wanna go all the way EXT!

  75. xurong

    南京人民发来贺电

  76. Daniel Schultz

    Being using extjs since early versions on my projects. Nice to hear that you keep making it a better framework!

    Thanks from Brazil

  77. Sty

    广州人民发来贺电

  78. Tony

    It’s very good!I love it!

  79. Spd

    It’s very good!I love it!

  80. Зайчонок

    Да уж, автор этого блога действительно добрый и отзывчивый человек. Спасибо :)

  81. Ext JS 3.0 vs CP2JavaWS & Direct2CP « Cjed Audio blog

    [...] Ext JS 3.0 vs CP2JavaWS & Direct2CP September 20, 2009 The RC2 of Ext JS 3.0, unveiled last June, 3 (that was just on day after the 0.7 version of CP2JavaWS, that brought management for [...]

  82. oyunlar1

    Это очень хорошо! Я люблю его!

  83. mario oyunları

    Wow this looks amazing,а также вторая бета-версия Ext Core, они обновляются

  84. kral oyun

    Lots of bug at ie.The missing Java stack in the Ext.Direct Pack on Ext JS Downloads page

  85. OyunOla

    Wow. Das sieht erstaunlich. Danke.

  86. fyname

    about rails-extjs-direct

    question:rails Back to the data not the data needed for extjs
    Use firebug view the post is “(” action “:” Cptcategory “,” method “:” index “,” data “: [" 0 "],” type “:” rpc “,” tid “: 2)”

    Response: is html language other than the data they need

    rails code is:

    include Rails::ExtJS::Direct::Controller
    direct_actions:index

    def index(id=[params[:node])

    puts id.to_i

    plcs = Cptcategory.find_children(id)
    data =plcs.map {|r| r.attributes}
    return data
    end

    I want to ask, how is the rails to use rails-extjs-direct reply is extjs be able to parse data?
    Please contact me, thanks email: fy_name@yahoo.com.cn

  87. kral oyun

    it’s buggy in ie8 for me..

  88. mario oyunları

    So da ro!

Leave a Reply

To prove that you're not a bot, please answer this question:



© 2006-2009 Ext, LLC