> How is EXTERNC getting called, which entry point? Directly thru the externc.jar : org.apache.flex.compiler.clients.EXTERNC, so, it is probably the main() which call staticMainNoExit()
Frédéric THOMAS ---------------------------------------- > Date: Sat, 20 Jun 2015 15:23:25 -0400 > Subject: Re: [FalconJX FlexJS] JQuery up and running, a nightmare but we now > have 1.9 in AS > From: [email protected] > To: [email protected] > > staticMainNoExit() has to be called to create the configuration correctly. > > And yes, that NPE means there is no configuration instance, that is the > problem. > > How is EXTERNC getting called, which entry point? > > Mike > > On Sat, Jun 20, 2015 at 3:18 PM, Frédéric THOMAS <[email protected]> > wrote: > >> Should be something missing because the config seem not to be set, the >> first exception is >> >> Exception in thread "main" java.lang.NullPointerException >> at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1530) >> at >> org.apache.flex.compiler.clients.EXTERNC.cleanOutput(EXTERNC.java:180) >> at >> org.apache.flex.compiler.clients.EXTERNC.mainNoExit(EXTERNC.java:157) >> at >> org.apache.flex.compiler.clients.EXTERNC.staticMainNoExit(EXTERNC.java:142) >> at org.apache.flex.compiler.clients.EXTERNC.main(EXTERNC.java:125) >> >> because the asRoot is null despite I set <as-root>out/as</as-root> >> >> >> Frédéric THOMAS >> >> >> ---------------------------------------- >>> Date: Sat, 20 Jun 2015 15:16:00 -0400 >>> Subject: Re: [FalconJX FlexJS] JQuery up and running, a nightmare but we >> now have 1.9 in AS >>> From: [email protected] >>> To: [email protected] >>> >>> I'm testing this right now, I might have not committed something when >> Alex >>> started doing stuff. >>> >>> Mike >>> >>> On Sat, Jun 20, 2015 at 3:07 PM, Michael Schmalle < >> [email protected] >>>> wrote: >>> >>>> HAHA Sorry! I guess I hit the send button to early. >>>> >>>> Well, something is not being added correctly is my guess, I know for a >>>> fact I compiled this with the same arguments. :) And I also remember >>>> getting that error, thus it being excluded. >>>> >>>> Do a system out in or breakpoint and make sure the exclude is going to; >>>> >>>> public void addExclude(String className, String name) line >>>> 194:ExternCConfiguration. >>>> >>>> If it's getting added then it's something REALLY stupid happening. :) >>>> >>>> Mike >>>> >>>> >>>> >>>> On Sat, Jun 20, 2015 at 3:02 PM, Frédéric THOMAS < >> [email protected]> >>>> wrote: >>>> >>>>>> The error is right here; the return type "jQuery.callbacks" >>>>>> >>>>>> public static function Callbacks(flags:String = >> null):jQuery.callbacks { >>>>>> return null; } >>>>> >>>>> yeah, I've seen that but I excluded it in my config.xml >>>>>>> <exclude><class>jQuery</class><name>Callbacks</name></exclude> >>>>> >>>>> So, why is it in jQuery.as ? >>>>> >>>>>> Just for sake of consistency, you might want to rename; >>>>>> >>>>>> <classToFunction> >>>>>> >>>>>> to >>>>>> >>>>>> <class-to-function> >>>>> >>>>> Done >>>>> >>>>>> You are using jquery-1.9.js right? >>>>> >>>>> Yes >>>>> >>>>>> That should be excluded with; >>>>> >>>>> ?? >>>>> >>>>> Frédéric THOMAS >>>>> >>>>> >>>>> ---------------------------------------- >>>>>> Date: Sat, 20 Jun 2015 14:56:13 -0400 >>>>>> Subject: Re: [FalconJX FlexJS] JQuery up and running, a nightmare but >>>>> we now have 1.9 in AS >>>>>> From: [email protected] >>>>>> To: [email protected] >>>>>> >>>>>> The error is right here; the return type "jQuery.callbacks" >>>>>> >>>>>> public static function Callbacks(flags:String = >> null):jQuery.callbacks { >>>>>> return null; } >>>>>> >>>>>> Just for sake of consistency, you might want to rename; >>>>>> >>>>>> <classToFunction> >>>>>> >>>>>> to >>>>>> >>>>>> <class-to-function> >>>>>> >>>>>> You are using jquery-1.9.js right? >>>>>> >>>>>> That should be excluded with; >>>>>> >>>>>> >>>>>> Mike >>>>>> >>>>>> >>>>>> >>>>>> On Sat, Jun 20, 2015 at 2:46 PM, Frédéric THOMAS < >>>>> [email protected]> >>>>>> wrote: >>>>>> >>>>>>> I'm looking for a while why I've got this king of errors for a while >>>>> now, >>>>>>> any clue ? >>>>>>> >>>>>>> >> U:\sources\asf\flex\falcon\externs\jquery\out\as\classes\jQuery.as:210 >>>>>>> Erreur interne : java.lang.NullPointerException >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.scopes.TypeScope.getPropertyForMemberAccess(TypeScope.java:344) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.scopes.ScopeView.getPropertyForMemberAccess(ScopeView.java:81) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.scopes.ASScope.getPropertyFromDef(ASScope.java:879) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.scopes.ASScope.getPropertyFromDef(ASScope.java:841) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.scopes.ASScope.getPropertyFromDef(ASScope.java:760) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.tree.as.IdentifierNode.resolveMemberRef(IdentifierNode.java:829) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.tree.as.IdentifierNode.resolve(IdentifierNode.java:377) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.tree.as.IdentifierNode.getMName(IdentifierNode.java:432) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.tree.as.MemberAccessExpressionNode.getMName(MemberAccessExpressionNode.java:158) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.ABCGeneratingReducer.dottedName(ABCGeneratingReducer.java:840) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.action_321(CmcEmitter.java:5236) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.dispatchAction(CmcEmitter.java:8487) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.reduceAntecedent(CmcEmitter.java:39127) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.dispatchAction(CmcEmitter.java:6881) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.reduceAntecedent(CmcEmitter.java:39127) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.dispatchAction(CmcEmitter.java:9434) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.reduceAntecedent(CmcEmitter.java:39127) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.reduce(CmcEmitter.java:39104) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.reduceSubgoals(CmcEmitter.java:39146) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.reduceAntecedent(CmcEmitter.java:39126) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.reduce(CmcEmitter.java:39104) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.burm(CmcEmitter.java:39406) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.ABCGenerator.generateInstructions(ABCGenerator.java:228) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.ABCGenerator.generateMethodBodyForFunction(ABCGenerator.java:393) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.ABCGenerator.generateMethodBodyForFunction(ABCGenerator.java:347) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.ABCGenerator.generateFunction(ABCGenerator.java:262) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.ClassDirectiveProcessor.declareFunction(ClassDirectiveProcessor.java:787) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.DirectiveProcessor.processNode(DirectiveProcessor.java:214) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.DirectiveProcessor.traverse(DirectiveProcessor.java:188) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.GlobalDirectiveProcessor.declareClass(GlobalDirectiveProcessor.java:423) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.DirectiveProcessor.processNode(DirectiveProcessor.java:206) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.DirectiveProcessor.traverse(DirectiveProcessor.java:188) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.GlobalDirectiveProcessor.declarePackage(GlobalDirectiveProcessor.java:449) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.DirectiveProcessor.processNode(DirectiveProcessor.java:223) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.DirectiveProcessor.traverse(DirectiveProcessor.java:188) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.as.codegen.ABCGenerator.generate(ABCGenerator.java:122) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.units.ASCompilationUnit.handleABCBytesRequest(ASCompilationUnit.java:477) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.units.CompilationUnitBase.processABCBytesRequest(CompilationUnitBase.java:866) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.units.CompilationUnitBase.access$300(CompilationUnitBase.java:107) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.units.CompilationUnitBase$4$1.call(CompilationUnitBase.java:309) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.units.CompilationUnitBase$4$1.call(CompilationUnitBase.java:305) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.units.requests.RequestMaker$1.call(RequestMaker.java:228) >>>>>>> at >>>>>>> >>>>> >> org.apache.flex.compiler.internal.units.requests.RequestMaker$1.call(RequestMaker.java:222) >>>>>>> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) >>>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:166) >>>>>>> at >>>>>>> >>>>> >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) >>>>>>> at >>>>>>> >>>>> >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) >>>>>>> at java.lang.Thread.run(Thread.java:722) >>>>>>> >>>>>>> public static function Callbacks(flags:String = >> null):jQuery.callbacks >>>>>>> { return null; } >>>>>>> ^ >>>>>>> >>>>>>> This is my jquery-config-xml: >>>>>>> >>>>>>> <flex-config> >>>>>>> >>>>>>> <compiler> >>>>>>> <accessible>true</accessible> >>>>>>> >>>>>>> <locale/> >>>>>>> >>>>>>> <source-path> >>>>>>> <path-element>src</path-element> >>>>>>> </source-path> >>>>>>> >>>>>>> <warn-no-constructor>false</warn-no-constructor> >>>>>>> </compiler> >>>>>>> >>>>>>> <external> >>>>>>> <path-element>externs/jquery-1.9.js</path-element> >>>>>>> </external> >>>>>>> >>>>>>> <as-root>out/as</as-root> >>>>>>> >>>>>>> >>>>>>> <classToFunction>$</classToFunction> >>>>>>> >>>>>>> <exclude><class>jQuery</class><name>is</name></exclude> >>>>>>> <exclude><class>jQuery</class><name>promise</name></exclude> >>>>>>> <exclude><class>jQuery</class><name>getJSON</name></exclude> >>>>>>> <exclude><class>jQuery</class><name>ajax</name></exclude> >>>>>>> <exclude><class>jQuery</class><name>when</name></exclude> >>>>>>> <exclude><class>jQuery</class><name>post</name></exclude> >>>>>>> <exclude><class>jQuery</class><name>getScript</name></exclude> >>>>>>> <exclude><class>jQuery</class><name>Callbacks</name></exclude> >>>>>>> >>>>>>> <class-exclude><class>Deferred</class></class-exclude> >>>>>>> <class-exclude><class>jQuery.deferred</class></class-exclude> >>>>>>> <class-exclude><class>jQuery.Event</class></class-exclude> >>>>>>> <class-exclude><class>jQuery.Deferred</class></class-exclude> >>>>>>> <class-exclude><class>$.Event</class></class-exclude> >>>>>>> <class-exclude><class>$.Deferred</class></class-exclude> >>>>>>> <class-exclude><class>$.deferred</class></class-exclude> >>>>>>> >>>>>>> </flex-config> >>>>>>> >>>>>>> >>>>>>> I had to create: >>>>>>> >>>>>>> @Config(allowMultiple = true) >>>>>>> @Mapping("classToFunction") >>>>>>> @InfiniteArguments >>>>>>> public void setClassToFunctions(ConfigurationValue cfgval, >>>>>>> List<String> values) >>>>>>> { >>>>>>> for (String val : values) >>>>>>> addClassToFunction(val); >>>>>>> } >>>>>>> >>>>>>> >>>>>>> Frédéric THOMAS >>>>>>> >>>>>>> >>>>>>> ---------------------------------------- >>>>>>>> From: [email protected] >>>>>>>> To: [email protected] >>>>>>>> Subject: Re: [FalconJX FlexJS] JQuery up and running, a nightmare >> but >>>>> we >>>>>>> now have 1.9 in AS >>>>>>>> Date: Sat, 20 Jun 2015 16:52:00 +0000 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On 6/20/15, 8:38 AM, "Michael Schmalle" <[email protected]> >>>>>>> wrote: >>>>>>>> >>>>>>>>>What happens if you try to compile an external that does this that >> is >>>>> not >>>>>>>>>part of the JS.swc build? Well for one, it won't be added because >> the >>>>>>>>>Window class is already compiled into the JS.swc. >>>>>>>>> >>>>>>>>>So for now, it's important that we add all externs to JS.swc that >>>>> mixin >>>>>>> to >>>>>>>>>the HTML DOM classes. >>>>>>>>> >>>>>>>>>Good frameworks I would think don't do this? It's just their API and >>>>> that >>>>>>>>>is all. >>>>>>>>> >>>>>>>> >>>>>>>> Hmm, I’ll get a lot of frameworks hack the built-in prototypes. >> We’re >>>>>>>> doing that in the UI frameworks for FlexJS. First of all, it is >>>>> possible, >>>>>>>> second, there are only so many ways to associate the actual HTML >>>>> elements >>>>>>>> with the actual classes you want to present. >>>>>>>> >>>>>>>> So maybe, instead of having a stack of SWCs where Jquery.swc depend >> on >>>>>>>> js.swc, the Jquery.swc will be all-inclusive and not depend on >> js.swc >>>>>>>> because it will have its own copies of the classes that are in >> js.swc >>>>> in >>>>>>>> it with the modifications that JQuery applies. >>>>>>>> >>>>>>>> -Alex >>>>>>>> >>>>>>> >>>>>>> >>>>> >>>>> >>>> >>>> >> >>
