PDA

View Full Version : [CLOSED] proxy buildUrl method doesn't get overridden



odibo
19 Apr 2014, 2:47 AM
https://fiddle.sencha.com/fiddle/57p


Ext version tested:

Ext 5.0.0.736

Browser versions tested against:


FF26.0 (firebug 1.12.8 installed)

DOCTYPE tested against:


!DOCTYPE HTML

Description:

Look at the fiddle example. In the console you can see an error message generated by Ext.data.proxy.Server.buildUrl():
"You are using a ServerProxy but have not supplied it with a url."

Given the proxy class inheritance (Server->Ajax->Rest) the buildUrl method must be overriden.

The documentation states this same idea:
http://docs.sencha.com/extjs/5.0.0/apidocs/#!/api/Ext.data.proxy.Rest-method-buildUrl

"...Override this to provide further customizations..."

The Ext Js version 4.2.1 acted correctly in this situation.
The bug has been detected during application code migration.

Steps to reproduce the problem:


define a store with a rest proxy
specify buildUrl method inside the proxy definition
load the store
see that your method has not been called
see Error

The result that was expected:


proxy buildUrl method gets overridden

The result that occurs instead:


proxy buildUrl method doesn't get overridden

Gary Schlosberg
19 Apr 2014, 8:30 AM
Thanks for the report! I have opened a bug in our bug tracker.

evant
8 May 2014, 5:39 AM
This is being marked as wont-fix. It was never really an intended behaviour to be able to override methods in this way when they aren't configurations to be passed in. It can also cause problems with the method hierarchy (callParent).

To implement this behaviour, you should create a subclass of the proxy and create the override there.

mattjenkins
13 Jun 2014, 2:52 AM
So can the docs be fixed instead of providing incorrect advice?

westoncerny
30 Jan 2015, 1:06 PM
agreed the docs clearly call this out and confuse the end user.