Opened 11 years ago

Closed 10 years ago

Last modified 10 years ago

#8657 closed defect (fixed)

dojox.dtl._DomTemplated templates occasionall throw error 'parser is null'

Reported by: ttilley Owned by: Neil Roberts
Priority: high Milestone: 1.3.1
Component: DojoX DTL Version: 1.3.0b1
Keywords: Cc:
Blocked By: Blocking:

Description

My main example of this problem doesn't actually use DTL statements anywhere. Perhaps this is partially to blame for the error?

I have since switched this class to using plain old dijit._Templated.

Attachments (1)

partial.html (279 bytes) - added by ttilley 11 years ago.
example template

Download all attachments as: .zip

Change History (14)

Changed 11 years ago by ttilley

Attachment: partial.html added

example template

comment:1 Changed 11 years ago by Neil Roberts

Resolution: worksforme
Status: newclosed

Created a demo using the _HtmlTemplated mixin, and with widgetsInTempplate set to both false and true, in all browsers, in multiple tests, did not see this error.

comment:2 Changed 11 years ago by wrcook

Resolution: worksforme
Status: closedreopened

Hi, I'm running into the "parser is null" problem too. I looked at the demos for dtl and it looks like the one that tests widgets in a template is not working.

http://archive.dojotoolkit.org/nightly/dojotoolkit/dojox/dtl/demos/demo_DomTemplated.html

I looked back in the archives and found the last working one was before the conversion to DomTemplated?.

http://archive.dojotoolkit.org/dojo-2008-08-09/dojotoolkit/dojox/dtl/demos/demo_HtmlTemplated.html

My project is using the latest development code from svn. The project is located here: http://myweb.clemson.edu/~wrcook/example/

Thanks, Billy

comment:3 Changed 11 years ago by wrcook

Found this in dom.js starting at line 975. Guess that is why parser is null..

if(fn){

TODO: We need to mp ove this to tokenization so that it's before the node and the parser can be passed here instead of null nodelist.push(fn(null, new dd.Token(type, value), value.tagName.toLowerCase()));

}

comment:4 Changed 11 years ago by bill

Milestone: tbd1.4

1.3rc1 has been release; bumping remaining tickets to 1.4 (except for documentation/testing tickets)

comment:5 Changed 10 years ago by Phil Bowles

I don't fully understand this thing yet, so bear with me. I too am getting parser is null and the DomTemplated? example doesn't work.

Are we saying here that its not going to be fixed until 1.4, or have I missed something?

comment:6 Changed 10 years ago by Neil Roberts

wrcook: There currently aren't any node: plugins implemented, so that shouldn't be throwing an error

comment:7 Changed 10 years ago by wrcook

Yes, I was wrong about that being the source of the problem. But still get an error on this test: http://archive.dojotoolkit.org/nightly/dojotoolkit/dojox/dtl/demos/demo_DomTemplated.html

comment:8 Changed 10 years ago by Bryan Forbes

Milestone: 1.41.3.1

The problem is at dom.js line 962 where you call the function returned from ddt.getTag() with a null initial value. When the parser encounters a dojoType attribute, ddt.getTag returns dojox.dtl.contrib.dijit.dojoType which expects a parser as the first argument and the second line of that function calls parser.swallowNode(). Hopefully this new info can help fix this issue.

comment:9 Changed 10 years ago by Neil Roberts

Resolution: fixed
Status: reopenedclosed

(In [17420]) Fixes #8657. Fixed problem with case-sensitive attribute plugins !strict

comment:10 Changed 10 years ago by Adam Peller

Milestone: 1.3.11.4

pottedmeat, you checked this into 1.4 only, correct?

comment:11 Changed 10 years ago by Neil Roberts

(In [17422]) Refs #8657. Fixed problem with attribute tokens !strict

comment:12 Changed 10 years ago by Neil Roberts

(In [17423]) Refs #8657. Fixed problem with attribute tokens !strict

comment:13 Changed 10 years ago by Adam Peller

Milestone: 1.41.3.1

changing milestone to properly reflect checkin [17424]

Note: See TracTickets for help on using tickets.