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>
<!-- JQuery -->
<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
>