Blog

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

June 03, 2009 | 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.

There are 99 responses. Add yours.

David Davis

3 years ago

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

El

3 years ago

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

ExtLover

3 years ago

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

Nils Dehl

3 years ago

Congratulation Ext Team !!!

NICE WORK!!!

Ramzi

3 years ago

First of all: congratulation.

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

Thank you.

KimH

3 years ago

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

Nickolay

3 years ago

Congratulations!

Trinidev » Ext JS 3.0 RC2

3 years ago

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

nilamani

3 years ago

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.

Jon

3 years ago

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.

Aaron Conran

3 years ago

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

Aaron Conran

3 years ago

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

Brendan Carroll

3 years ago

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

dpll

3 years ago

verygood
thinks

Ramzi

3 years ago

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

Jay garcia

3 years ago

Great news guys.  Keep kicking out awesome code. smile

Ext JS 3.0 RC2 Released « Eugene’s Ext

3 years ago

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

ExtJS 3.0 RC2 - ? ?? ???? ? ??????? RESTfulAlpha-B

3 years ago

[...] ???, ??????? ????? ????????? ????????-????? 3-? ?????? ExtJS, ? ????? ?????? ????-?????? Ext Core, ??? ??????????? [...]

fREW Schmidt

3 years ago

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

Crysfel

3 years ago

Excellent!! thanks you so much!!

Liberado Ext JS 3.0 RC2 : Blogografia

3 years ago

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

RUSSIAN BLACKEDITION » Blog Archive »

3 years ago

[...] ??????????, ????? ?e?o??? ? ?o?o?o???.  ?? ???? ???????, ??????? ????? ???????? ????????-????? 3-? ?????? ExtJS, ? ??? ? ?????? ????-????????????? Ext Core, ??? [...]

Ram?nas

3 years ago

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?

Marco

3 years ago

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.

boolean

3 years ago

good news,good day

Aaron Conran

3 years ago

@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!

IntelliJ IDEA??????? » Blog Archive »

3 years ago

[...] ?????ExtJS 3.0?????RC????????????????????????ExtJS 3.0??????????RC2?????????????????????????????? http://extjs.com/blog/2009/06/03/ext-js-30-rc2-release-stable-robust-and-enhanced/ [...]

Pau Ubach

3 years ago

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

Juha Carlo

3 years ago

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.

Ramzi

3 years ago

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?

Thorsten

3 years ago

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?

Daily del.icio.us for June 3rd through June 4th |

3 years ago

[...] 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. [...]

Jacob Andresen

3 years ago

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

lenoval

3 years ago

getAttribute throw error on windows 2003,IE8

Steffen Hiller

3 years ago

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

Eric Berens

3 years ago

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.

EXTJS.CN

3 years ago

Very good,
<a>http://www.extjs.cn</a>

?????

3 years ago

?? ???? ????~ ????~ ?

small business PBX

3 years ago

Thanks! Keep up the good work!!

flymoon

3 years ago

????????

myext

3 years ago

??!!!!!!!!!!!!!!!

everest

3 years ago

?????????

flash8627

3 years ago

??????3.0,????????????
????????????dojo

Jeroen

3 years ago

For when is the 3.0 final planned?

er

3 years ago

lots of bugs in IE

xiaojun

3 years ago

?????bug,???gridpanel?header?,?IE??FF????

guo

3 years ago

tree has bugs in ie6

chifeng

3 years ago

?IE6? http://extjs.com/deploy/ext-3.0-rc2/examples/tree/check-tree.html
Checkbox TreePanel?Bug, ?????ext-3.0-rc2?????,?IE6????????????.

liyanwei

3 years ago

???bug
28900? this.runCallback(callback, scope || node,[node]);??[node]??

Ajaxian » Ext Updates: Ext JS 3.0, Ext GWT 2

3 years ago

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

liyanwei

3 years ago

why delete Ext.StatusBar?

Ext Updates: Ext JS 3.0, Ext GWT 2.0; New apps and

3 years ago

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

Ext Updates: Ext JS 3.0, Ext GWT 2.0; New apps and

3 years ago

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

??

3 years ago

ExtJS ?? ?????? ^^

?? ? ?? ????.

??? ???? ExtJS ? ?? ????? ^^

guoxing

3 years ago

asdfasdfasfdasfds

Pau Ubach

3 years ago

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

Pau

The Ashes » Blog Archive » Ext Updates

3 years ago

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

KKK

3 years ago

So da ro!

KKK

3 years ago

??? ??... ^^;

KKK

3 years ago

? ??? ???? ?????????? ??? ?? ? ????? ????

Original Sin

3 years ago

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.

Frank W. Zammetti

3 years ago

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.

Pau Ubach

3 years ago

My answer is no raspberry

Frustrated License Holder

3 years ago

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?

Confused

3 years ago

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

Pau Ubach

3 years ago

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

hz

3 years ago

?????!

kabin

3 years ago

kabin de 1 numara

Vahid Fakher ???? ????

3 years ago

Very good, Thanks!
??? ??? ???? ????? ???? ????
??? ??????
?? ???? ?????? ??????? ?? ??? ?? ?????? ???? ?????
?? ?? ??? ????

liyanwei

3 years ago

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}
  });
});

Joe

3 years ago

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!

xurong

3 years ago

????????

Daniel Schultz

3 years ago

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

Thanks from Brazil

Sty

3 years ago

????????

Tony

3 years ago

It’s very good!I love it!

Spd

3 years ago

It’s very good!I love it!

????????

3 years ago

?? ??, ????? ????? ????? ????????????? ?????? ? ?????????? ???????. ??????? smile

Ext JS 3.0 vs CP2JavaWS & Direct2CP « Cj

3 years ago

[...]  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 [...]

kral oyun

3 years ago

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

OyunOla

3 years ago

Wow. Das sieht erstaunlich. Danke.

fyname

3 years ago

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: .(JavaScript must be enabled to view this email address)

kral oyun

3 years ago

it’s buggy in ie8 for me..

mich

2 years ago

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

tatil otelleri

2 years ago

it’s buggy in ie8 for me..

oyunlar

2 years ago

Reasonable Doubt, The Blueprint and the Black Album.  He spent several successful years as the CEO of Def Jam Records before buying out his contract a few months ago to release his new album on his own label.  And he’s got Beyonce.  Nobody, but nobody, in the hip hop world has his combination of hard power and soft power.  If there be hegemony, then this is it.  Heck, when he tried to

juhu

2 years ago

How about support for RESTful Forms, i.e. editing RESTful entities via FormPanel? Seems like a missing yet important feature if one were to design a truly and fully RESTful web application client. Currently there seems to be absolutely no integration between Stores and Forms in the framework…

UtastateTV

2 years ago

Win 8 would be the choice to go

??

2 years ago

in the hip hop world has his combination of hard power and soft power.

David Peers

2 years ago

This blog helped me in solving some problems with the latest release candidate, Why do they always leave out vital documentation when they release a new version? It may be trivial to them but not for us! I’m sure i’m not alone.

Download FLV Player

2 years ago

Your blog has helped, thanks a ton. I’ve come across it once or twice now and will most certainly bookmark it. You actually may possibly want to upgrade wordpress as there exists a fresh variant readily available at present!

Scream 4 The Movie

2 years ago

Your blog has helped, thank you. I’ve encountered it once or twice now and will possibly take a note of it. You may possibly really want to update wordpress as there is a completely new variant readily available at this moment!

Jai

2 years ago

My question may be silly.

Please help me out of this issue.

I am using a form with direct api and trying to insert records in to the db. But form values are submitting to the server side.

My Code:

formadd= new Ext.form.FormPanel({
      // configs for FormPanel
      title: ‘Add record’,
      border: false,
      padding: 10,
      buttons:[{
        text: ‘Submit’,
        handler: function(){
          formadd.getForm().submit({
    params: {
                foo: ‘bar’,
                uid: 34
              }
          });
        }
      }],

      defaultType: ‘textfield’,
      items: [{
        fieldLabel: ‘Name’,
        name: ‘name’
      },{
        fieldLabel: ‘Email’,
        msgTarget: ‘side’,
        name: ‘logo_url’
      }],

      api: {
        // The server-side method to call for load() requests
        load: Vendor.read,
        // The server-side must mark the submit handler as a ‘formHandler’
        submit: Vendor.save
      },
      // specify the order for the passed params
      paramOrder: [‘uid’, ‘foo’]
  });

Please help me!!!!!!!

Michael Mullany

2 years ago

Jai, please post this to the forum. This is a very old blog post at this stage.

Jimmy

11 months ago

At last, someone comes up with the “right” asnwer!

Maida1972

10 months ago

Isso foi realmente interessante. Adorei lê-lo

Comments are Gravatar enabled. Your email address will not be shown.

Commenting is not available in this channel entry.