Re: Tapestry5 Grid Coloumn Bolded when sorted

2009-11-15 Thread sandeepraj singh

Thanks for the pointer Thiago,
Actually i wanted the entire coloumn to be bolded not only the header.

The below css entry made it possible

th.t-sort-column-ascending, th.t-sort-column-descending, 
td.t-sort-column-ascending, td.t-sort-column-descending,{
font-weight: bold;
}


Thiago H. de Paula Figueiredo wrote:
> 
> Em Fri, 13 Nov 2009 10:09:31 -0200, sandeepraj singh  
>  escreveu:
> 
>> Hi,
> 
> Hi!
> 
>> I want to make Grid Columns bolded when they are sorted.
> 
> Take a look at the generated HTML. Grid adds the "t-sort-column-ascending"  
> CSS class to a header cell when it's used for sorting ascending and  
> "t-sort-column-descending" when sorgin descending. All you need is to add  
> this to your CSS:
> 
> th.t-sort-column-ascending, th.t-sort-column-descending {
>   font-weight: bold;
> }
> 
> -- 
> Thiago H. de Paula Figueiredo
> Independent Java, Apache Tapestry 5 and Hibernate consultant, developer,  
> and instructor
> Owner, software architect and developer, Ars Machina Tecnologia da  
> Informação Ltda.
> http://www.arsmachina.com.br
> 
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Tapestry5-Grid-Coloumn-Bolded-when-sorted-tp26335659p26367325.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



Re: Switching between Stage & Production DB with Tapestry5 & Hibernate3

2009-11-15 Thread Ville Virtanen

Hi,

we use our custom configuration file that reads everything from single file.
The application reads a system property that defines the location of the
conf file. This way, the jar and build process is the same for every
environment and the deploy procedure is just to copy the war to the server
(prod, pilot, internal test, demo etc..)

Also, this enables us to run our software in the mode we choose in every
environment: if we need to run in debug or development mode in production
that we indeed can. Also the log4j conf is read from outside the
war/exploded war, so that conf is also out of the build cycle.

The only downside is that we have to define the single configuration key to
catalina_opts or similar, but this setup has proven to be useful for us:
even the new guy can deploy to any environment, as the procedure is always
similar and there is no checklist ;)

Quick solution is to determine the wished configuration from the production
mode flag.

 - Ville


Alessandro Bottoni-4 wrote:
> 
> Hi All,
> I'm almost completely new to Tapestry and Hibernate so, please, be
> patient..
> 
> In your opinion, what's the best (simplest/most-maintainable) way to
> deal with two different databases with T5 and H3?
> 
> I have the classical stage/production environment with the same software
> (and the same RDBMS) on the two machines but two different data sets and
> I have to switch from the one to the other when deploying the T5 stuff.
> 
> Is it better to rely on the mechanisms provided by Hibernate (loading
> different configuration files, for example) or is it better to use some
> Tapestry-specific trick?
> 
> How do you do that, usually?
> 
> Thanks in advance for your attention.
> 
> -- 
> 
> Alessandro Bottoni
> Website: http://www.alessandrobottoni.it/
> 
> "In mathematics you don't understand things. You just get used to them."
>  -- John von Neumann
> 
> 
> 
> 
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
> 

-- 
View this message in context: 
http://old.nabble.com/Switching-between-Stage---Production-DB-with-Tapestry5---Hibernate3-tp26340524p26367152.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



Re: Hibernate question

2009-11-15 Thread Jonathan Barker
This also depends on your objectives.

If you have a detached entity in your session, then you have the option to
check for changes in the DB when you try to save, and then present some kind
of conflict resolution screen, rather than blindly overwriting or accepting
changes made in another session.  Having said that, "blindly accepting /
overwriting" is usually fine for my applications and I *usually* store the
id.

Jonathan


On Fri, Nov 13, 2009 at 9:18 AM, Szemere Szemere <
szemereszem...@googlemail.com> wrote:

> Afaik any Hibernate object stored in the HTTPSession will be
> Hibernate-detached between HTTP requests. It is not refreshed/merged
> automatically on a new HTTP request, so it will be outside the Hibernate
> session on the second request which is probably not what you want.
>
> It is generally a much better idea to store the object id in the session
> and
> recreate it at the beginning of each new HTTP request. Tapestry has some
> features to make this easy for you, but that's beyond my expertise (search
> the mailing list).
>
> Szemere
>



-- 
Jonathan Barker
ITStrategic


Re: Tapestry Resources and Velocity Templates

2009-11-15 Thread Kalle Korhonen
On Sun, Nov 15, 2009 at 2:22 PM, Jonhy Pear  wrote:
> I have configured Spring Email to send emails to users.

Spring email buys almost nothing, if that's the only thing you use
Spring for, you could just as well use Velocity and plain javamail
directly (or alternatively chenillekit-mail).

>     class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
>        
>            
>                class
>                
>
> org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
>            
>    
> 
> Do you  have any hint on how to tell velocity to lookup in
> src/main/resources/... ?

Reading from src/main/resources is not what you want. Maven copies
files in src/main/resources to classes/, so you want read the
templates from your classpath. Here's my corresponding direct Velocity
configuration (which works):
Velocity.setProperty(Velocity.RESOURCE_LOADER, "classpath");
Velocity.addProperty("classpath.resource.loader.class",
ClasspathResourceLoader.class.getName());
Velocity.init();

So I assume the problem is simply that the value of resource.loader
should be "classpath", not "class".

Kalle

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



Tapestry Resources and Velocity Templates

2009-11-15 Thread Jonhy Pear
Hi!

I have configured Spring Email to send emails to users.

I want to use Velocity (not a requirement though, the only requirement is to
have templating) to help me generate the body of the mail.

I have a Tapestry service where I inject both VelocityEngine and MailSender
services.

Then, in the method sendRegistrationConfirmationEmail(User user)  {

...

String body =
VelocityEngineUtils.mergeTemplateIntoString(this.velocityEngine,
"UserRegistrationConfirm.vm", model);

}

I have my template UserRegistrationConfirm.vm in
src/main/resources/ under the same package as my service from where I use
velocity.

However the template could not be found.

I have in my applicationContext.xml the following configuration for
Velocity:






class


org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader




Do you  have any hint on how to tell velocity to lookup in
src/main/resources/... ?

thank you,


What service will help me to wrap the rendering of every component on a page

2009-11-15 Thread Joost Schouten (ml)
For my testing enviroment I am looking for a way to wrap each component 
in two comments listing the type of the component and the full component 
id. This way I will be able to properly assert that the markup of each 
page contains the correct components. Digging in the api I can't 
directly find what service would be a good starting point.


I would highly appreciate a pointer as to what service to use.

Regards,
Joost



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



Re: Tapestry-Spring in standalone mode

2009-11-15 Thread Juan E. Maya
Joost! Thanks for ur help!

I  understand ur point of not missing Tapestry IoC and Spring, we
wanted to take advantage of some of the existent code.  We just didn't
want to recreate the infrastructure to create the chains in Spring but
well, i think it's worthy and safer :)



On 11/15/09, Joost Schouten (ml)  wrote:
> I am not sure how to best expose such a chain to spring, maybe it is
> possible but I don't know how. You can however quite easily port this to
> spring though. Just have a ChainInterface
>
> void doSomeWork();
>
> an implementation:
>
> public class FirstChainedImplementation implements ChainInterface{
>
> private ChainInterface nextInChain;
>
> public FirstChanedImplementation(ChainInterface nextInChain) {
>this.nextInChain = nextInChain;
> }
>
> public void doSomeWork() {
>
>if(nextInChain != null) {
>   nextInChain.doSomeWork();
> }
>
> }
>
> Have a bunch of implementing serviceses and define them in your spring
> as such:
>
>  class="com.domain.yourFirstImplementingService">
> 
> 
>
>  class="com.domain.yourSecondImplementingService">
> 
> 
>
> ... add as many as you need. Obviously you can clean this up making a
> nice abstract class that does the chaining logic and leave the
> implementations to just care about the work they should perform.
>
> I prefer doing it this way and use Tapetsry for all web tier related
> issues. This allows me to port all my low level code to any application
> which might not know anything about the web or tapestry.
>
> Hope it helps,
> Joost
>
> Juan E. Maya wrote:
>> Some chains defined by our self created using Tapestry IoC using
>> http://tapestry.apache.org/tapestry5/tapestry-ioc/command.html
>>
>> This allows to have chains that can be contributed in any module
>> making the application truly modular. Spring (as far as i know)
>> doesn't have anything similar to this, am i wrong?
>>
>> The point is that we require to inject services defined by ourselves
>> using tapestry IoC to Spring Beans. Tapestry-Spring allows this kind
>> of integration in a web application, we want to have the same behavior
>> a standalone application.
>>
>> On 11/14/09, Joost Schouten (ml)  wrote:
>>
>>> What "Chains of Responsibilities" are you refering to?
>>>
>>> Juan E. Maya wrote:
>>>
 Joost i am aware of Spring Integration with Quartz and we are using
 it. The problem is that we are using some Chains of Responsibilities
 defined in tapestry in our Spring beans (using the filter integration
 this is not a problem at all) however if we want to have the same
 functionality in a standalone mode we would not be able anything at
 all from tapestry ioc.

 I know it's a bit weird to mix IoC, sadly the decision was to use
 spring instead of Tapestry IoC and in a few cases make use of tapestry
 IoC (specially to make use of the distributed configuration). That's
 why we need to have Tapestry Services inside our Spring beans in stand
 alone mode.

 Thanks a lot for ur help

 On 11/14/09, Fernando Padilla  wrote:


> what do your "jobs" do?  Why do they need anything from Tapestry?
>
> On 11/13/09 2:54 PM, Joost Schouten (ml) wrote:
>
>
>> Do you mean timed java jobs (java equivalent of cron jobs)? If so,
>> since you are already working with Spring, have a look at:
>> http://static.springsource.org/spring/docs/2.5.x/reference/scheduling.html
>>
>>
>>
>> Not tapestry, but very simple too ;-)
>>
>> Good luck,
>> Joost
>>
>> Juan E. Maya wrote:
>>
>>
>>> Hi, We are using Tapestry-Spring integration in our web tear without
>>> problems but we require to have a standalone application that will
>>> take care of the job executions. Has anybody successfully created
>>> such
>>>  integration ? I was checking the code of the Spring SpringModuleDef
>>> and it's highly tied to the ServletContext.
>>>
>>> Any tips would be highly appreciated, right now i am thinking about
>>> implementing my own  SpringModuleDef but there might be a easier that
>>> i am not aware of.
>>>
>>> Thanks a lot for your help
>>>
>>> -
>>> 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: Netbeans 6.7 tapestry 5 plugin support

2009-11-15 Thread Ville Virtanen

Ok, 

I'll try to do that as soon as I have the required time in my hands.

 - Ville


Andreas Andreou-4 wrote:
> 
> When was that? i think the T5related project used to be hosted at
> google-code
> but then was moved into https://nbtapestrysupport.dev.java.net/
> (where the t4project was)
> 
> Just request for the developer role if you have a java.net account - or
> add the
> patches to an issue at
> https://nbtapestrysupport.dev.java.net/servlets/ProjectIssues
> 
> On Thu, Nov 12, 2009 at 10:00 PM, Ville Virtanen
>  wrote:
>>
>> We use it, but we have inhouse modified version of it due to problems in
>> tml
>> / java class change functionality. (The original version does not know
>> how
>> to resolve all possible template locations.)
>>
>> I contacted the author if he would like to get / review the changes, but
>> I
>> never got any reply back.
>>
>> Anyhow, it really is usefull, atleast the tml / java class switch
>> functionality.
>>
>>  - Ville
>>
>>
>> Sergey Didenko wrote:
>>>
>>> Hi,
>>>
>>> does anybody uses this T5 plugin for Netbeans? ("nbtapestrysupport",
>>> see below). Does it work all right?
>>>
>>> On Mon, Jun 15, 2009 at 9:07 AM, iberck  wrote:

 Hi I'm developing a netbeans plugin for tapestry 5 tested on windows xp
 The supported features are:

>>> 

 Feel free to download from:
 https://nbtapestrysupport.dev.java.net/servlets/ProjectDocumentList

 View this message in context:
 http://www.nabble.com/Netbeans-6.7-tapestry-5-plugin-support-tp24029691p24029691.html
 Sent from the Tapestry - User mailing list archive at Nabble.com.

>>>
>>> -
>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://old.nabble.com/Netbeans-6.7-tapestry-5-plugin-support-tp24029691p26325187.html
>> Sent from the Tapestry - User mailing list archive at Nabble.com.
>>
>>
>> -
>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>
>>
> 
> 
> 
> -- 
> Andreas Andreou - andy...@apache.org - http://blog.andyhot.gr
> Tapestry / Tacos developer
> Open Source / JEE Consulting
> 
> -
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Netbeans-6.7-tapestry-5-plugin-support-tp24029691p26360217.html
Sent from the Tapestry - User mailing list archive at Nabble.com.


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



Re: javascript locale for numbers

2009-11-15 Thread Joachim Van der Auwera
Answering my own question, it seems "Tapestry.decimalFormatSymbols" 
should be usable for this, and I see this being used in tapestry.js
However, I don't know where this comes from, as it does not seem to be 
included in my page (I cannot find the declaration).


Joachim

Joachim Van der Auwera wrote:
I have component which does some javascript manipulation on a form 
field value which contains a double.
Depending on the locale, this may use either a dot or a comma as 
decimal separator.
Is there a way in which I can know client side (in the javascript 
code) what the current decimal separator is?


Thanks for the help,
Joachim




--
Joachim Van der Auwera
PROGS bvba, progs.be


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



Re: Tapestry-Spring in standalone mode

2009-11-15 Thread Joost Schouten (ml)
I am not sure how to best expose such a chain to spring, maybe it is 
possible but I don't know how. You can however quite easily port this to 
spring though. Just have a ChainInterface


void doSomeWork();

an implementation:

public class FirstChainedImplementation implements ChainInterface{

   private ChainInterface nextInChain;

   public FirstChanedImplementation(ChainInterface nextInChain) {
  this.nextInChain = nextInChain;
   }
  
   public void doSomeWork() {

  
  if(nextInChain != null) {
 nextInChain.doSomeWork();
   }

   }

Have a bunch of implementing serviceses and define them in your spring 
as such:


class="com.domain.yourFirstImplementingService">

   


class="com.domain.yourSecondImplementingService">

   


... add as many as you need. Obviously you can clean this up making a 
nice abstract class that does the chaining logic and leave the 
implementations to just care about the work they should perform.


I prefer doing it this way and use Tapetsry for all web tier related 
issues. This allows me to port all my low level code to any application 
which might not know anything about the web or tapestry.


Hope it helps,
Joost

Juan E. Maya wrote:

Some chains defined by our self created using Tapestry IoC using
http://tapestry.apache.org/tapestry5/tapestry-ioc/command.html

This allows to have chains that can be contributed in any module
making the application truly modular. Spring (as far as i know)
doesn't have anything similar to this, am i wrong?

The point is that we require to inject services defined by ourselves
using tapestry IoC to Spring Beans. Tapestry-Spring allows this kind
of integration in a web application, we want to have the same behavior
a standalone application.

On 11/14/09, Joost Schouten (ml)  wrote:
  

What "Chains of Responsibilities" are you refering to?

Juan E. Maya wrote:


Joost i am aware of Spring Integration with Quartz and we are using
it. The problem is that we are using some Chains of Responsibilities
defined in tapestry in our Spring beans (using the filter integration
this is not a problem at all) however if we want to have the same
functionality in a standalone mode we would not be able anything at
all from tapestry ioc.

I know it's a bit weird to mix IoC, sadly the decision was to use
spring instead of Tapestry IoC and in a few cases make use of tapestry
IoC (specially to make use of the distributed configuration). That's
why we need to have Tapestry Services inside our Spring beans in stand
alone mode.

Thanks a lot for ur help

On 11/14/09, Fernando Padilla  wrote:

  

what do your "jobs" do?  Why do they need anything from Tapestry?

On 11/13/09 2:54 PM, Joost Schouten (ml) wrote:



Do you mean timed java jobs (java equivalent of cron jobs)? If so,
since you are already working with Spring, have a look at:
http://static.springsource.org/spring/docs/2.5.x/reference/scheduling.html



Not tapestry, but very simple too ;-)

Good luck,
Joost

Juan E. Maya wrote:

  

Hi, We are using Tapestry-Spring integration in our web tear without
problems but we require to have a standalone application that will
take care of the job executions. Has anybody successfully created such
 integration ? I was checking the code of the Spring SpringModuleDef
and it's highly tied to the ServletContext.

Any tips would be highly appreciated, right now i am thinking about
implementing my own  SpringModuleDef but there might be a easier that
i am not aware of.

Thanks a lot for your help

-
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





-
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

  



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



Re: ActionLink context help

2009-11-15 Thread Inge Solvoll
Looks good!

It would be even safer to generate a link with placeholders, but your
approach is probably safe enough. The thing we're really missing here is a
hook in Tapestry.js that does something similar to the example code below.

Tapestry.prototype.appendLinkContext =  function(linkId, value) {
  var oldHref = $(linkId).href;
  return oldHref + '/' + encode(value);
}



On Sun, Nov 15, 2009 at 1:44 AM, Jonhy Pear  wrote:

> Thanks Magnus and Inge,
>
> Your really helped me to find a possible solution.
> I created a mixin called InjectClientValue and used it like this:
>
> t:mixins="injectClientValue"
> t:sourceElementId="login"
>
>
> t:updateElementId="loginDuplicatedNotice">${message:verify-login-duplicated-link}
>
> sourceElementId is the id of the input from where I want to read the value
> to send to the server.
>
>
> In my tml I have a div:
>
> 
>
> My InjectClientValue.js is as follows:
>
> InjectClientValue.prototype = {
>initialize : function(sourceElement, eventElement, updateElement) {
>this.sourceElement = $(sourceElement);
>this.element = $(eventElement);
>this.updateElement = $(updateElement)
>this.element.observe('click',
> this.onClick.bindAsEventListener(this));
>},
>
>onClick : function(event) {
>var currentInstance = this;
>Tapestry.debug(this.sourceElement.value);
>Tapestry.debug(this.element.href);
>
>if (this.sourceElement == null) {
>Tapestry.error("Error: sourceElement is null");
>event.stop();
>return;
>}
>if (this.element == null) {
>Tapestry.error("Error: element is null");
>event.stop();
>return;
>}
>if (this.updateElement == null) {
>Tapestry.error("Error: updateElement is null");
>event.stop();
>return;
>}
>if (this.sourceElement.value == "") {
>
>Tapestry.warn("Error: sourceElement is empty");
>event.stop();
>return;
>}
>
>new Ajax.Request(this.element.href + "/" + this.sourceElement.value,
> {
>method : 'get',
>onSuccess : function(transport) {
> currentInstance.updateElement
>.update(transport.responseJSON.content);
>}
>});
>event.stop();
>
>}
>
> }
>
> //End
>
> This is working now, but I would like you to comment.
>
> Thank you
>
>
> On Thu, Nov 12, 2009 at 11:15 AM, Inge Solvoll  >wrote:
>
> > See my blog for a relevant implementation that has (among other things) a
> > possible pattern to solve your problem. The pattern is to generating the
> > action link with placeholders on page setup, pass it to javascript, and
> > create a javascript function that replaces the placeholders runtime on
> > client. Then wrap it in a component or a mixin.
> >
> >
> >
> http://tinybits.blogspot.com/2009/05/update-zone-on-any-client-side-event.html
> >
> > You could vote for this JIRA-issue, which also is a suggestion for making
> > these things easier to do:
> >
> > https://issues.apache.org/jira/browse/TAP5-521
> >
> > Inge
> >
> > On Thu, Nov 12, 2009 at 9:41 AM, Magnus Rundberget 
> wrote:
> >
> > > Hi,
> > >
> > >
> > > Others will surely correct me if I'm wrong...
> > > - Ideally you should be able to create a mixin for the onclick event on
> > the
> > > actionlink that picks up the value of the textfield and sets the
> context
> > > before the tapestry actionlink event triggers. However since the
> > actionlink
> > > is tied to a zone this is not so trivial. Something to do with
> > > indeterministic ordering of events in javascript i believe
> > >
> > >
> > > I can see a couple of other alternatives;
> > > 1. Event and a little javascript using prototype and its inbuildt
> support
> > > for ajax requests. Haven't tested the below so a big disclaimer here
> :-)
> > >
> > > A) Sample Javascript - checkusername.js;
> > > CheckUserNameLink.prototype = {
> > >initialize: function(elementId, requestUrl)
> > >{
> > >this.elementId = elementId;
> > >this.requestUrl = requestUrl;
> > >
> > >Event.observe($(this.elementId), 'click',
> > > this._click.bindAsEventListener(this));
> > >},
> > >_click: function(theEvent)
> > >{
> > >var url = this.requestUrl + "/" +
> > encodeURIComponent($('userName'));
> > > // adding the username as a context param to event
> > >new Ajax.Request(this.requestUrl, {
> > >method: 'get',
> > >onSuccess: function(transport) {
> > > var isTaken = transport.responseJSON.isTaken;
> > >if (isTaken === 'true') {
> > > // javascript to tell user the username is take...
> update
> > a
> > > div/span or whatever
> > >}
> > >}
> > >});
> > >}
> > > };
> > >
> > > B) In your TML
> > > remove the zone/rep