[
https://issues.apache.org/jira/browse/FLEX-35081?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Harui reassigned FLEX-35081:
---------------------------------
Assignee: Alex Harui
> Null Pointer Exception in attempt of overriding data property in item renderer
> ------------------------------------------------------------------------------
>
> Key: FLEX-35081
> URL: https://issues.apache.org/jira/browse/FLEX-35081
> Project: Apache Flex
> Issue Type: Bug
> Components: FlexJS
> Affects Versions: Apache FlexJS 0.7.0
> Environment: Windows 7
> Firefox
> Reporter: Piotr Zarzycki
> Assignee: Alex Harui
> Priority: Minor
>
> Example TodoListSampleApp - FlexJS repository.
> I have created org.apache.flex.html.supportClasses.DataItemRender in mxml. In
> attempt of compiling following code I got NPE.
> {code:title=Compiled Code}
> <basic:DataItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
> xmlns:basic="library://ns.apache.org/flexjs/basic">
> <basic:beads>
> <basic:HorizontalLayout />
> </basic:beads>
> <basic:CheckBox text="{data.selected}"/>
> <basic:Label text="{data.text}"/>
> <basic:TextButton width="50" text="Remove"/>
> <fx:Script>
> <![CDATA[
> override public function set data(value:Object):void {
> super.data = value;
> }
> ]]>
> </fx:Script>
> </basic:DataItemRenderer>
> {code}
> {code:title=Null Pointer Exception}
> Error:[TodoListSampleApp - TodoListSampleApp]: :
> java.lang.NullPointerException at
> org.apache.flex.compiler.internal.codegen.js.jx.BinaryOperatorEmitter.emit(BinaryOperatorEmitter.java:118)
> at
> org.apache.flex.compiler.internal.codegen.js.flexjs.JSFlexJSEmitter.emitBinaryOperator(JSFlexJSEmitter.java:675)
> at
> org.apache.flex.compiler.internal.codegen.as.ASBlockWalker.visitBinaryOperator(ASBlockWalker.java:525)
> at
> org.apache.flex.compiler.internal.visitor.as.ASNodeSwitch.handle(ASNodeSwitch.java:349)
> at
> org.apache.flex.compiler.internal.visitor.as.ASNodeHandler.handle(ASNodeHandler.java:85)
> at
> org.apache.flex.compiler.internal.visitor.as.BeforeAfterStrategy.handle(BeforeAfterStrategy.java:110)
> at
> org.apache.flex.compiler.internal.codegen.as.ASBlockWalker.walk(ASBlockWalker.java:157)
> at
> org.apache.flex.compiler.internal.codegen.js.jx.StatementEmitter.emit(StatementEmitter.java:22)
> at
> org.apache.flex.compiler.internal.codegen.js.JSEmitter.emitStatement(JSEmitter.java:281)
> at
> org.apache.flex.compiler.internal.codegen.js.flexjs.JSFlexJSEmitter.emitStatement(JSFlexJSEmitter.java:762)
> at
> org.apache.flex.compiler.internal.codegen.as.ASBlockWalker.visitBlock(ASBlockWalker.java:335)
> at
> org.apache.flex.compiler.internal.visitor.as.ASNodeSwitch.handle(ASNodeSwitch.java:279)
> at
> org.apache.flex.compiler.internal.visitor.as.ASNodeHandler.handle(ASNodeHandler.java:85)
> at
> org.apache.flex.compiler.internal.visitor.as.BeforeAfterStrategy.handle(BeforeAfterStrategy.java:110)
> at
> org.apache.flex.compiler.internal.codegen.as.ASBlockWalker.walk(ASBlockWalker.java:157)
> at
> org.apache.flex.compiler.internal.codegen.as.ASEmitter.emitMethodScope(ASEmitter.java:843)
> at
> org.apache.flex.compiler.internal.codegen.js.jx.DefinePropertyFunctionEmitter.emit(DefinePropertyFunctionEmitter.java:117)
> at
> org.apache.flex.compiler.internal.codegen.js.flexjs.JSFlexJSEmitter.emitDefinePropertyFunction(JSFlexJSEmitter.java:714)
> at
> org.apache.flex.compiler.internal.codegen.js.jx.AccessorEmitter.emit(AccessorEmitter.java:212)
> at
> org.apache.flex.compiler.internal.codegen.mxml.flexjs.MXMLFlexJSEmitter.emitDocument(MXMLFlexJSEmitter.java:341)
> at
> org.apache.flex.compiler.internal.codegen.mxml.flexjs.MXMLFlexJSBlockWalker.visitDocument(MXMLFlexJSBlockWalker.java:69)
> at
> org.apache.flex.compiler.internal.visitor.mxml.MXMLNodeSwitch.handle(MXMLNodeSwitch.java:84)
> at
> org.apache.flex.compiler.internal.codegen.mxml.MXMLBlockWalker.walk(MXMLBlockWalker.java:149)
> at
> org.apache.flex.compiler.internal.codegen.mxml.flexjs.MXMLFlexJSBlockWalker.visitFile(MXMLFlexJSBlockWalker.java:61)
> at
> org.apache.flex.compiler.internal.visitor.mxml.MXMLNodeSwitch.handle(MXMLNodeSwitch.java:90)
> at
> org.apache.flex.compiler.internal.codegen.mxml.MXMLBlockWalker.walk(MXMLBlockWalker.java:149)
> at
> org.apache.flex.compiler.internal.codegen.mxml.MXMLBlockWalker.visitCompilationUnit(MXMLBlockWalker.java:168)
> at
> org.apache.flex.compiler.internal.codegen.mxml.MXMLWriter.writeTo(MXMLWriter.java:67)
> at org.apache.flex.compiler.clients.MXMLJSC.compile(MXMLJSC.java:480)
> at org.apache.flex.compiler.clients.MXMLJSC._mainNoExit(MXMLJSC.java:352)
> at org.apache.flex.compiler.clients.MXMLJSC.mainNoExit(MXMLJSC.java:277)
> at flex2.tools.MxmlJSC.execute(MxmlJSC.java:93) at
> flex2.tools.Tool.compile(Tool.java:81) at
> flex2.tools.Mxmlc.mxmlc(Mxmlc.java:75) at
> com.intellij.flex.compiler.flex4.Flex4Handler.compileSwf(Flex4Handler.java:81)
> at
> com.intellij.flex.compiler.CompilationThread.run(CompilationThread.java:48)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)