Re: Versioning assets

2009-05-26 Thread Borut Bolčina
Back to this one...

In my AppModule I did this:

public static void
contributeClasspathAssetAliasManager(MappedConfiguration
configuration) {
configuration.add("css/1.6", "com/mycompany/myapp/components/css");
}

In my Layout template (the only place using the css to be versioned):



which is located at

src/main/resources/com/mycompany/myapp/components/Layout.tml

and then I had to move my css from

src/main/webapp/css/my.css

to

src/main/resources/com/mycompany/myapp/components/css/my.css

With this in place, it works. That means changing the version number in
AppModule and changing the css, the browser loads the new version.

What bothers me is the location of the css. Is there a way I can move it
directly to src/main/resources/css? I tried several configurations, but none
worked.

Thanks,
Borut


2009/5/25 Christian Senk 

> Sorry Borut, doesn't pay attention at the tapestry version ^.^
> Mayby this can help you, look at the end of this page:
>
> http://tapestry.apache.org/tapestry5/cookbook/lib.html
>
> there is a short chapter about versioning assets :)
> I think this way already exists in 5.0.18
>
> Borut Bolčina schrieb:
>
>  Thanks Christian but I am using T 5.0.18 and
>> SymbolConstants.APPLICATION_VERSION is not available. Upgrade to 5.1 is
>> not
>> an option as we are using tapestry-spring-security which is not yet
>> compatible with 5.1
>>
>> So, how to do it in 5.0.18?
>>
>> -Borut
>>
>> 2009/5/25 Christian Senk 
>>
>>
>>
>>> You put this line into the contribution method for the Application
>>> Defaults
>>> in your
>>> Tapestry-module. For example:
>>>
>>> public static void contributeApplicationDefaults(
>>>  MappedConfiguration configuration) {
>>>  configuration.add(SymbolConstants.SUPPORTED_LOCALES, "en,de");
>>>  configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
>>>//Application Version
>>>  configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");
>>>  }
>>>
>>> And thats all what you have to do. Tapestry automatically does everything
>>> for you.
>>> If you don't have this line until now, tapestry replaced the version in
>>> the
>>> path with
>>> a generated hex-string.
>>>
>>> An example path could look like:
>>>
>>> /app/assets/ctx/0.0.7/styles/style.css
>>>
>>> In your case, you have the following:
>>>
>>> src/main/webapp/css/my.css
>>>
>>> and with the versioning line in the browser it looks like:
>>>
>>> /app/assets/ctx/0.0.7/css/my.css
>>>
>>> you don't have to create folders for that. And don't bother
>>> about your templates "asset:context" do all this stuff automatically
>>> for you.
>>>
>>> Hope i explained it good enough ^.^
>>>
>>> Borut Bolčina schrieb:
>>>
>>>  Hello,
>>>
>>>
>>>> 2009/5/25 Christian Senk 
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>> Hi,
>>>>>
>>>>> you may increment your build number by one, and use the Application
>>>>> version
>>>>> symbol.
>>>>>
>>>>> configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");
>>>>>
>>>>>
>>>>>
>>>>>
>>>> Where do I put this line?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>> the version is part of the path to the assets.
>>>>>
>>>>>
>>>>>
>>>>>
>>>> So, if I now have
>>>>
>>>>   src/main/webapp/css/my.css
>>>>
>>>> I must create
>>>>
>>>>   src/main/webapp/css/0.0.7/my.css
>>>>
>>>> Is this correct?
>>>>
>>>> What about href in my layout component? It looks like this now:
>>>>
>>>>   >>> href="${asset:context:css/my.css}" />
>>>>
>>>> I want to avoid modifying templates and code in multiple places when css
>>>> changes. Is this possible?
>>>>
>>>> Thanks,
>>>> Borut
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>> Borut Bolčina schrieb:
>>>>>
>>>>>  Hello,
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> we have a T5.0.18 in production. Now I want to "deliver" changed CSS
>>>>>> to
>>>>>> all
>>>>>> existing users, so there must be a way of versioning CSS and other
>>>>>> assests.
>>>>>>
>>>>>> There is nothing at
>>>>>> http://tapestry.apache.org/tapestry5/guide/assets.htmlabout
>>>>>> versioning, although I think this functionality exists. Can someone
>>>>>> point me to an example of how to organize and configure my app to
>>>>>> handle
>>>>>> versioned assets? Do I have to create different directories etc?
>>>>>>
>>>>>> -Borut
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>> -
>>>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>> -
>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>
>>>
>>>
>>>
>>
>>
>>
>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


Re: Versioning assets

2009-05-25 Thread Christian Senk

Sorry Borut, doesn't pay attention at the tapestry version ^.^
Mayby this can help you, look at the end of this page:

http://tapestry.apache.org/tapestry5/cookbook/lib.html

there is a short chapter about versioning assets :)
I think this way already exists in 5.0.18

Borut Bolčina schrieb:

Thanks Christian but I am using T 5.0.18 and
SymbolConstants.APPLICATION_VERSION is not available. Upgrade to 5.1 is not
an option as we are using tapestry-spring-security which is not yet
compatible with 5.1

So, how to do it in 5.0.18?

-Borut

2009/5/25 Christian Senk 

  

You put this line into the contribution method for the Application Defaults
in your
Tapestry-module. For example:

public static void contributeApplicationDefaults(
  MappedConfiguration configuration) {
  configuration.add(SymbolConstants.SUPPORTED_LOCALES, "en,de");
  configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
//Application Version
  configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");
  }

And thats all what you have to do. Tapestry automatically does everything
for you.
If you don't have this line until now, tapestry replaced the version in the
path with
a generated hex-string.

An example path could look like:

/app/assets/ctx/0.0.7/styles/style.css

In your case, you have the following:

src/main/webapp/css/my.css

and with the versioning line in the browser it looks like:

/app/assets/ctx/0.0.7/css/my.css

you don't have to create folders for that. And don't bother
about your templates "asset:context" do all this stuff automatically
for you.

Hope i explained it good enough ^.^

Borut Bolčina schrieb:

 Hello,


2009/5/25 Christian Senk 



  

Hi,

you may increment your build number by one, and use the Application
version
symbol.

configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");




Where do I put this line?




  

the version is part of the path to the assets.




So, if I now have

   src/main/webapp/css/my.css

I must create

   src/main/webapp/css/0.0.7/my.css

Is this correct?

What about href in my layout component? It looks like this now:

   

I want to avoid modifying templates and code in multiple places when css
changes. Is this possible?

Thanks,
Borut




  

Borut Bolčina schrieb:

 Hello,




we have a T5.0.18 in production. Now I want to "deliver" changed CSS to
all
existing users, so there must be a way of versioning CSS and other
assests.

There is nothing at
http://tapestry.apache.org/tapestry5/guide/assets.htmlabout
versioning, although I think this functionality exists. Can someone
point me to an example of how to organize and configure my app to handle
versioned assets? Do I have to create different directories etc?

-Borut





  

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







  

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





  



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



Re: Versioning assets

2009-05-25 Thread Borut Bolčina
Thanks Christian but I am using T 5.0.18 and
SymbolConstants.APPLICATION_VERSION is not available. Upgrade to 5.1 is not
an option as we are using tapestry-spring-security which is not yet
compatible with 5.1

So, how to do it in 5.0.18?

-Borut

2009/5/25 Christian Senk 

> You put this line into the contribution method for the Application Defaults
> in your
> Tapestry-module. For example:
>
> public static void contributeApplicationDefaults(
>   MappedConfiguration configuration) {
>   configuration.add(SymbolConstants.SUPPORTED_LOCALES, "en,de");
>   configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
> //Application Version
>   configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");
>   }
>
> And thats all what you have to do. Tapestry automatically does everything
> for you.
> If you don't have this line until now, tapestry replaced the version in the
> path with
> a generated hex-string.
>
> An example path could look like:
>
> /app/assets/ctx/0.0.7/styles/style.css
>
> In your case, you have the following:
>
> src/main/webapp/css/my.css
>
> and with the versioning line in the browser it looks like:
>
> /app/assets/ctx/0.0.7/css/my.css
>
> you don't have to create folders for that. And don't bother
> about your templates "asset:context" do all this stuff automatically
> for you.
>
> Hope i explained it good enough ^.^
>
> Borut Bolčina schrieb:
>
>  Hello,
>>
>>
>> 2009/5/25 Christian Senk 
>>
>>
>>
>>> Hi,
>>>
>>> you may increment your build number by one, and use the Application
>>> version
>>> symbol.
>>>
>>> configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");
>>>
>>>
>>
>>
>> Where do I put this line?
>>
>>
>>
>>
>>> the version is part of the path to the assets.
>>>
>>>
>>
>>
>> So, if I now have
>>
>>src/main/webapp/css/my.css
>>
>> I must create
>>
>>src/main/webapp/css/0.0.7/my.css
>>
>> Is this correct?
>>
>> What about href in my layout component? It looks like this now:
>>
>>> href="${asset:context:css/my.css}" />
>>
>> I want to avoid modifying templates and code in multiple places when css
>> changes. Is this possible?
>>
>> Thanks,
>> Borut
>>
>>
>>
>>
>>> Borut Bolčina schrieb:
>>>
>>>  Hello,
>>>
>>>
 we have a T5.0.18 in production. Now I want to "deliver" changed CSS to
 all
 existing users, so there must be a way of versioning CSS and other
 assests.

 There is nothing at
 http://tapestry.apache.org/tapestry5/guide/assets.htmlabout
 versioning, although I think this functionality exists. Can someone
 point me to an example of how to organize and configure my app to handle
 versioned assets? Do I have to create different directories etc?

 -Borut





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


Re: Versioning assets

2009-05-25 Thread Christian Senk
You put this line into the contribution method for the Application 
Defaults in your

Tapestry-module. For example:

public static void contributeApplicationDefaults(
   MappedConfiguration configuration) {
   configuration.add(SymbolConstants.SUPPORTED_LOCALES, "en,de");
   configuration.add(SymbolConstants.PRODUCTION_MODE, "false");
  
   //Application Version

   configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");
   }

And thats all what you have to do. Tapestry automatically does 
everything for you.
If you don't have this line until now, tapestry replaced the version in 
the path with

a generated hex-string.

An example path could look like:

/app/assets/ctx/0.0.7/styles/style.css

In your case, you have the following:

src/main/webapp/css/my.css

and with the versioning line in the browser it looks like:

/app/assets/ctx/0.0.7/css/my.css

you don't have to create folders for that. And don't bother
about your templates "asset:context" do all this stuff automatically
for you.

Hope i explained it good enough ^.^

Borut Bolčina schrieb:

Hello,


2009/5/25 Christian Senk 

  

Hi,

you may increment your build number by one, and use the Application version
symbol.

configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");




Where do I put this line?


  

the version is part of the path to the assets.




So, if I now have

src/main/webapp/css/my.css

I must create

src/main/webapp/css/0.0.7/my.css

Is this correct?

What about href in my layout component? It looks like this now:



I want to avoid modifying templates and code in multiple places when css
changes. Is this possible?

Thanks,
Borut


  

Borut Bolčina schrieb:

 Hello,


we have a T5.0.18 in production. Now I want to "deliver" changed CSS to
all
existing users, so there must be a way of versioning CSS and other
assests.

There is nothing at
http://tapestry.apache.org/tapestry5/guide/assets.htmlabout
versioning, although I think this functionality exists. Can someone
point me to an example of how to organize and configure my app to handle
versioned assets? Do I have to create different directories etc?

-Borut



  

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





  



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



Re: Versioning assets

2009-05-25 Thread Borut Bolčina
Hello,


2009/5/25 Christian Senk 

> Hi,
>
> you may increment your build number by one, and use the Application version
> symbol.
>
> configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");


Where do I put this line?


>
> the version is part of the path to the assets.


So, if I now have

src/main/webapp/css/my.css

I must create

src/main/webapp/css/0.0.7/my.css

Is this correct?

What about href in my layout component? It looks like this now:



I want to avoid modifying templates and code in multiple places when css
changes. Is this possible?

Thanks,
Borut


>
> Borut Bolčina schrieb:
>
>  Hello,
>>
>> we have a T5.0.18 in production. Now I want to "deliver" changed CSS to
>> all
>> existing users, so there must be a way of versioning CSS and other
>> assests.
>>
>> There is nothing at
>> http://tapestry.apache.org/tapestry5/guide/assets.htmlabout
>> versioning, although I think this functionality exists. Can someone
>> point me to an example of how to organize and configure my app to handle
>> versioned assets? Do I have to create different directories etc?
>>
>> -Borut
>>
>>
>>
>
>
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


Re: Versioning assets

2009-05-25 Thread Christian Senk

Hi,

you may increment your build number by one, and use the Application 
version symbol.


configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.7");

the version is part of the path to the assets.

Borut Bolčina schrieb:

Hello,

we have a T5.0.18 in production. Now I want to "deliver" changed CSS to all
existing users, so there must be a way of versioning CSS and other assests.

There is nothing at
http://tapestry.apache.org/tapestry5/guide/assets.htmlabout
versioning, although I think this functionality exists. Can someone
point me to an example of how to organize and configure my app to handle
versioned assets? Do I have to create different directories etc?

-Borut

  



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



Versioning assets

2009-05-25 Thread Borut Bolčina
Hello,

we have a T5.0.18 in production. Now I want to "deliver" changed CSS to all
existing users, so there must be a way of versioning CSS and other assests.

There is nothing at
http://tapestry.apache.org/tapestry5/guide/assets.htmlabout
versioning, although I think this functionality exists. Can someone
point me to an example of how to organize and configure my app to handle
versioned assets? Do I have to create different directories etc?

-Borut