I put this at the base of my home page

<script>
    if (typeof angular == 'undefined')
        alert('angular did not load properly');
</script>

and the alert box comes up

for some reason angular is not being loaded when I

public class CustomJavaScriptStack implements JavaScriptStack {

    public static final String ANGULAR_CORE_PATH = "angular.core.path";
    public static final String ANGULAR_VERSION = "angular.version";
    public static final String ANGULAR_PAGES_SUBPACKAGE = 
"angular.pages.subpackage";
    
    public static final String JAVASCRIPT_STACK_ANGULAR = "js-angular";
    public static final String CSS_STACK_ANGULAR = "css-angular";
    public static final String FONT_STACK_ANGULAR = "font-angular";

    public static final String JAVASCRIPT_STACK = "tapestry.javascript-stack";
    public static final String JAVASCRIPT_STACK_DEFAULT = "js-prototype";
    public static final String JAVASCRIPT_STACK_NONE = "js-none";
    
    public static final String CSS_STACK = "tapestry.css-stack";
    public static final String CSS_STACK_DEFAULT = "css-default";
    public static final String CSS_STACK_DEFAULT_WITHOUT_BLACKBIRD = 
"css-default-without-blackbird";
    public static final String CSS_STACK_NONE = "css-none";
    public static final String DISABLED_FORM_AUTOFOCUS = 
"tapestry.disabled-autofocus";

    /**
     * CustomJavascriptStack Constants
     */
    public static final String STACK_ID = "custom-javascript-stack";
    public static final String STACK_ROOT = 
"classpath:/META-INF/assets/js/bower_components";
    public static final String APP_ROOT = "classpath:/META-INF/assets/psi";
    
    public static final String ANGULAR_STACK_ROOT = STACK_ROOT + "/angular";
    public static final String BOOTSTRAP_STACK_ROOT = STACK_ROOT + "/bootstrap";
    public static final String BOOTSTRAP_CSS = BOOTSTRAP_STACK_ROOT + "/css";
    public static final String BOOTSTRAP_FONTS = BOOTSTRAP_STACK_ROOT + 
"/fonts";
    public static final String BOOTSTRAP_JS = BOOTSTRAP_STACK_ROOT + "/js";
    
    private final boolean productionMode;

    private final List<Asset> assetStack;
    private final List<String> modulesStack = new ArrayList<String>();
    private final List<StylesheetLink> cssStack = new 
ArrayList<StylesheetLink>();

    public CustomJavaScriptStack(
            @Symbol(SymbolConstants.PRODUCTION_MODE) final boolean 
productionMode,
            final AssetSource assetSource) {
        this.productionMode = productionMode;

        final Mapper<String, Asset> pathToAsset = new Mapper<String, Asset>() {

            public Asset map(String path) {
                return assetSource.getExpandedAsset(path);
            }
        };

        if (productionMode) {

            assetStack = F
                    .flow("${angular.core.path}/angular/angular.min.js",
                            
"${angular.core.path}/angular-route/angular-route.min.js",
                            
"${angular.core.path}/angular-resource/angular-resource.min.js")
                    .map(pathToAsset).toList();

        } else {
            assetStack = F
                    .flow(BOOTSTRAP_JS + "/bootstrap.js", 
                            STACK_ROOT + "/angular-cookies/angular-cookies.js",
                            STACK_ROOT + "/angular-mocks/angular-mocks.js",
                            STACK_ROOT + 
"/angular-resource/angular-resource.js",
                            STACK_ROOT + "/angular-route/angular-route.js",
                            STACK_ROOT + 
"/angular-scenario/angular-scenario.js",
                            STACK_ROOT + 
"/angular-translate/angular-translate.js",
                            STACK_ROOT + 
"/angular-translate-loader-static-files/angular-translate-loader-static-files.js",
                            STACK_ROOT + 
"/angular-translate-storage-cookie/angular-translate-storage-cookie.js",
                            ANGULAR_STACK_ROOT + "/angular.min.js",             
                           
                            APP_ROOT + "/mixins/date-time.js",                  
                          
                            APP_ROOT + "/mixins/Gallery.js",                    
                        
                            APP_ROOT + "/mixins/TransparentText.js",            
                                
                            APP_ROOT + "/mixins/TransparentTextImage.js",       
                                     
                            APP_ROOT + "/app.js"                                
            
                            )
                    .map(pathToAsset).toList();
        }
        for (Iterator<Asset> iter = assetStack.iterator(); iter.hasNext();) {
            Asset element = iter.next();
            modulesStack.add(new String(element.toClientURL()));
        }
    }

    public String getInitialization() {
        return productionMode ? null : "Tapestry.DEBUG_ENABLED = true;";
    }

    public List<Asset> getJavaScriptLibraries() {
        return assetStack;
    }

    public List<StylesheetLink> getStylesheets() {
        return Collections.emptyList();
    }

    public List<String> getStacks() {
        return Collections.emptyList();
    }

    @Override
    public JavaScriptAggregationStrategy getJavaScriptAggregationStrategy() {
        return JavaScriptAggregationStrategy.COMBINE_ONLY;
    }

    @Override
    public List<String> getModules() {
        return modulesStack;
    }
}
                                          

Reply via email to