Okay, it works if I place my javascript under /META-INF/assets/js Bug? Or does everything have to be under assets? It doesn't seem to pick up resources under META-INF/modules.
On Wed, Jun 18, 2014 at 9:11 AM, Sanket Sharma <sanketsha...@gmail.com> wrote: > > Nope. Doesn't work. I have my javascript files in the project under > resources resources/META-INF/modules/ol/ol.js > > Does it map the META-INF/modules to a virtual resource? In your code I'm > as suing there is a folder under META-INF called assets/js? > > If I use @Path("/META-INF/modules/ol/ol.js") corresponding to my folder > structure it fails with the error below: > Unable to locate asset 'classpath:modules.gz/modules/ol/ol.js' (the file > does not exist). > > In the deployed file, it seems all javascript files are gzipped under > context-root/modules.gz And thats where its loading all the javascript from. > > > > > > > On Wed, Jun 18, 2014 at 3:41 AM, Geoff Callender < > geoff.callender.jumpst...@gmail.com> wrote: > >> Here's one that worked, producing a module called jquery-ui: >> >> public static void >> contributeModuleManager(MappedConfiguration<String, Object> configuration, >> @Path("/META-INF/assets/js/jquery-ui-1.9.1.js") Resource >> jqueryUi) { >> configuration.add("jquery-ui", new >> JavaScriptModuleConfiguration(jqueryUi)); >> } >> >> HTH, >> >> Geoff >> >> On 18 Jun 2014, at 10:25 am, Sanket Sharma <sanketsha...@gmail.com> >> wrote: >> >> > Hi, >> > >> > How do I convert a non AMD javascript module to work with require.js? >> > >> > I did some investigate and it seems like shimming is the way to go. >> > I would like to take a javascript file ol.js and shim to to export 'ol'. >> > The file is located under modules and is packaged in META-INF/modules >> > directory in the standard tapestry way. >> > >> > Reading source code and documentation seems to suggest it can be done in >> > the following way: >> > >> > @Contribute(ModuleManager.class) >> > public static void setupOpenLayersConfiguration( >> > MappedConfiguration<String, Object> mappedConfiguration, >> > @Inject @Path("classpath:META-INF/modules/ol/ol.js") Resource ol) { >> > JavaScriptModuleConfiguration openLayers = new >> > JavaScriptModuleConfiguration(ol); >> > openLayers.exports("ol"); >> > mappedConfiguration >> > .add("ol", openLayers); >> > } >> > >> > What is the correct syntax to refer to inject this file as a resource? >> The >> > above class path syntax seems to be failing. >> > >> > Is there a pure Javascript way as well? Been trying to play with >> > config/shim blocks but couldn't get it working. >> > >> > Any help would be appreciated. >> > >> > Best Regards, >> > Sanket >> >> >