[ 
https://issues.apache.org/jira/browse/CLK-564?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12730332#action_12730332
 ] 

Bob Schellink commented on CLK-564:
-----------------------------------

Currently the ClickClick examples are hosted on GAE. But ClickClick places its 
resources under /clickclick/* instead of /click/*, thus I need to manually make 
the /clickclick/* resources available at build time. So I wanted to subclass 
ResourceService to provide a more generic implementation to serve any resource.

I implemented a quick hack (won't check it in) to generify the ResourceService 
implementation so any resource can be served, however changes had to be made to 
ClickServlet and VelocityTemplateService. ClickClick also makes heavy use of 
CSS and JS template resources which is why I mentioned the lazy loading 
approach in one of the comments above. This lead to me to ask if the scope of 
this feature is limited to only /click/* resources, which it is.

I'll implement an Ant task to copy the resources and report back here how it 
worked out :)

> Add ResourceService for serving static resources
> ------------------------------------------------
>
>                 Key: CLK-564
>                 URL: https://issues.apache.org/jira/browse/CLK-564
>             Project: Click
>          Issue Type: New Feature
>          Components: core
>    Affects Versions: 2.0.2
>            Reporter: Malcolm Edgar
>            Assignee: Malcolm Edgar
>             Fix For:  2.1.0 RC2
>
>
> The Click static resource deployment strategy of writing *.htm, *.css and 
> image files to the web application /click/ directory does not work on all 
> application servers. In particular WebLogic and WebSphere have security 
> restrictions which prevent this from occuring. In these scenarios users are 
> have to deploy these applications to the WAR file at build time.  Google GAE 
> also does not support this deployment mode.
> A solution to this problem is to use the ClickServlet to serve these 
> resources. By adding an additional web.xml mapping:
>       <servlet-mapping>
>               <servlet-name>ClickServlet</servlet-name>
>               <url-pattern>/click/*</url-pattern>
>       </servlet-mapping>
> The ClickServlet could use a ResourceService interface obtained from the 
> ConfigService which returns the resource data. A default ClickResourceService 
> would be provided which loads all the resources at application initialization 
> time. This service would scan all the JAR files for resources in META-INF/web 
> as is currently done in XmlConfigService and would cache them in memory. The 
> service would also scan all the resources under the WAR /click/ directory. 
> These resources would override any defined in the application JAR files.
> This could be a good feature for 2.1.0, we should possibly delay the 2.1.0 RC 
> release to include this feature.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to