Re-opening and assigning to Ken for delegation to the ACE comps team.
There was a change made to org.icefaces.ace.generator.artifacts.ComponentHandlerArtifact in r24852 to allow the generated components to properly import the MethodRule implementation for the JSF library being used (Mojarra vs MyFaces).
Although this allows compilation to succeed, it poses an issue for distributing the library as it will only work against the JSF implemenation it was compiled against. The goal is to have a single library that works across both JSF distributions. The options are in order of preference are:
1) To adjust the components and code generator so that it require us to output implementation specific imports and classes. This means removing our dependency on the following by strictly using only public JSF API classes and methods.
import com.sun.faces.facelets.tag.MethodRule
import org.apache.myfaces.view.facelets.tag.MethodRule
2) Writing our own wrapper/factory style code that is smart enough to handle both implementations without having to compile and distribute separate libraries.
Switched from the build-time autodetect mechanism to using the ACE helper class, so that we're agnostic to whether we're running in Mojarra, MyFaces and anything else.
Development branch
Subversion 26214
ace/generator/src/org/icefaces/ace/generator/artifacts/ComponentHandlerArtifact.java