Not a bug. 
If you put actual modules in resources/META-INF/modules/, then they work fine. 
Put non-modules in resources/META-INF/assets/ and make them available as 
modules as I showed below by contributing to ModuleManager.

On 18 Jun 2014, at 5:27 pm, Sanket Sharma <sanketsha...@gmail.com> wrote:

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


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org

Reply via email to