Results 1 to 6 of 6

Thread: Upgraded from 4.0.7 to 4.1.0 now nothing displays

  1. #1
    Sencha User
    Join Date
    Sep 2007
    Posts
    118
    Answers
    1

    Default Upgraded from 4.0.7 to 4.1.0 now nothing displays

    Hello, I have upgraded from 4.0.7 to 4.1.0. Now when it tries to load I get this error:

    Unhandled exception at line 250, column 25 in http://localhost:4739/ext/resources/...=1335830240142

    0x800a01b6 - Microsoft JScript runtime error: Object doesn't support property or method 'isAClassNameWithAKnownPrefix'

    I checked the source and that function is there in the Loader.js file, although it is a private function. Here is the code it is breaking on in the Controller.js file:

    Code:
    for (i = 0,ln = modules.length; i < ln; i++) {
                        module = modules[i];
                        namespaceAndModule = namespace + '.' + module + '.';
    
                        items = Ext.Array.from(data[module + 's']);
    
                        for (j = 0,subLn = items.length; j < subLn; j++) {
                            item = items[j];
                            // Deciding if a class name must be qualified:
                            // 1 - if the name doesn't contains at least one dot, we must definitely qualify it
                            // 2 - the name may be a qualified name of a known class, but:
                            // 2.1 - in runtime, the loader may not know the class - specially in production - so we must check the class manager
                            // 2.2 - in build time, the class manager may not know the class, but the loader does, so we check the second one
                            //       (the loader check assures it's really a class, and not a namespace, so we can have 'Books.controller.Books',
                            //       and requesting a controller called Books will not be underqualified)
                            if (item.indexOf('.') !== -1 && (Ext.ClassManager.isCreated(item) || Ext.Loader.isAClassNameWithAKnownPrefix(item))) {
                                requires.push(item);
                            } else {
                                requires.push(namespaceAndModule + item);
                            }
                        }
                    }
    Here is my app.js file for the application:

    Code:
    Ext.Loader.setConfig({
    	enabled: true,
    	paths: {
    		"Vertical": "app",
    		"UX": "ux",
    		"Ext": "ext/resources/src"
    	}
    });
    
    Ext.require([
    	"Vertical.controller.NavTree",
    	"Vertical.controller.Viewport",
        "Vertical.controller.Dashboard",
        "Vertical.controller.tab.Member",
    	"ux.ErrorHandler"
    ]);
    
    Ext.application({
    	name: "Vertical",
    	autoCreateViewport: true,
    	controllers: [
    		"Viewport",
            "Dashboard",
            "tab.Member",
            "window.Member"
    	]
    });
    
    
    Am I missing something?
    
    Thanks
    Timothy

  2. #2
    Sencha Premium User evant's Avatar
    Join Date
    Apr 2007
    Location
    Sydney, Australia
    Posts
    19,258
    Answers
    759

    Default

    Are you sure it's not some kind of caching issue? Otherwise, I don't really see any reason for there to be a problem.
    Twitter - @evantrimboli
    Former Sencha framework engineer, available for consulting.
    As of 2017-09-22 I am not employed by Sencha, all subsequent posts are my own and do not represent Sencha in any way.

  3. #3
    Sencha User
    Join Date
    Sep 2007
    Posts
    118
    Answers
    1

    Default

    I agree. I have been fighting this for two days now. I have cleared my cache a million times. I am just at a loss.

  4. #4
    Sencha User
    Join Date
    Sep 2007
    Posts
    118
    Answers
    1

    Default

    When I remove this line from Ext.app.Controller:

    Code:
    for (j = 0,subLn = items.length; j < subLn; j++) {
                            item = items[j];
                            // Deciding if a class name must be qualified:
                            // 1 - if the name doesn't contains at least one dot, we must definitely qualify it
                            // 2 - the name may be a qualified name of a known class, but:
                            // 2.1 - in runtime, the loader may not know the class - specially in production - so we must check the class manager
                            // 2.2 - in build time, the class manager may not know the class, but the loader does, so we check the second one
                            //       (the loader check assures it's really a class, and not a namespace, so we can have 'Books.controller.Books',
                            //       and requesting a controller called Books will not be underqualified)
                            if (item.indexOf('.') !== -1 && (Ext.ClassManager.isCreated(item) || Ext.Loader.isAClassNameWithAKnownPrefix(item))) {
                                requires.push(item);
                            } else {
                                requires.push(namespaceAndModule + item);
                            }
                        }
    But I still get a blank screen. Any reason why that might be. This worked fine in 4.0.7, not sure am I leaving something out with 4.1.0

    Thanks

  5. #5
    Sencha User
    Join Date
    Jan 2012
    Posts
    1,376
    Answers
    347

    Default

    Try to use ext-all-*.js instead of ext.js/ext-debug.js to see whether or not the problem happens.

  6. #6
    Sencha User
    Join Date
    Sep 2007
    Posts
    118
    Answers
    1

    Default

    Quote Originally Posted by vietits View Post
    Try to use ext-all-*.js instead of ext.js/ext-debug.js to see whether or not the problem happens.
    Ok, when I use ext-all.js I dont get the error anymore but I still get the blank screen with nothing being rendered.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •