You are trying to import stuff.js twice. Once via require.js and once via @Import. I get the feeling it's the @Import that's failing. On 2 Oct 2013 14:13, "Geoff Callender" <geoff.callender.jumpst...@gmail.com> wrote:
> I'm desperately seeking an up-to-date example of custom javascript, > because nothing I've tried works. Here's one attempt that failed... > > package myapp.pages; > > import javax.inject.Inject; > > import org.apache.tapestry5.annotations.Import; > import org.apache.tapestry5.json.JSONObject; > import org.apache.tapestry5.services.javascript.JavaScriptSupport; > > @Import(stack = { "core" }, library = { "stuff.js" }) > public class Index2 { > > @Inject > private JavaScriptSupport jsSupport; > > void afterRender() { > JSONObject params = new JSONObject(); > jsSupport.require("pages/stuff").with(params); > } > > } > > ...In my WAR is /META-INF/modules/pages/stuff.js... > > define(["jquery", "t5/core/console"], function($, console) { > return function(params) { > console.warn("jQuery version: " + $().jquery); > }; > }); > > ...The javascript console shows good news... > > Loading library /myapp/asset.gz/app/495033b1/pages/stuff.js > > ...followed by bad news... > > Failed to load resource: the server responded with a status of 404 (Not > Found) http://gc1.local:8080/myapp/asset.gz/module/pages/stuff.js > > Cheers, > > Geoff > > >