From: Chad B. <cwb...@us...> - 2008-07-24 18:07:37
|
User: cwbrandon Date: 08/07/24 11:07:44 Modified: andromda-jsf2/components pom.xml Added: andromda-jsf2/components/src/main/resources/META-INF faces-config.xml andromda.taglib.xml andromda-jsf2/components/src/main/java/org/andromda/cartridges/jsf2/renderkit TransactionTokenRenderer.java andromda-jsf2/components/src/main/java/org/andromda/cartridges/jsf2/component TransactionToken.java Log: Add TransactionToken component that we an use for preventing multi submits of the same action either or refreshes or when a button is clicked twice Revision Changes Path 1.3 +7 -77 cartridges/andromda-jsf2/components/src/main/resources/META-INF/faces-config.xml 1.1 cartridges/andromda-jsf2/components/src/main/resources/META-INF/andromda.taglib.xml Index: andromda.taglib.xml =================================================================== <?xml version="1.0"?> <!DOCTYPE facelet-taglib PUBLIC "-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN" "http://java.sun.com/dtd/facelet-taglib_1_0.dtd"> <facelet-taglib> <namespace>http://www.andromda.org/cartridges/jsf2</namespace> <tag> <tag-name>transactionToken</tag-name> <component> <component-type>org.andromda.cartridges.jsf2.component.TransactionToken</component-type> <renderer-type>org.andromda.cartridges.jsf2.TransactionToken</renderer-type> </component> </tag> </facelet-taglib> 1.1 cartridges/andromda-jsf2/components/src/main/java/org/andromda/cartridges/jsf2/renderkit/TransactionTokenRenderer.java Index: TransactionTokenRenderer.java =================================================================== package org.andromda.cartridges.jsf2.renderkit; import java.io.IOException; import java.util.UUID; import javax.faces.component.UIComponent; import javax.faces.context.FacesContext; import javax.faces.render.Renderer; import org.andromda.cartridges.jsf2.component.TransactionToken; /** * The transaction token renderer (just adds the transaction token value * as an attribute of the parent component so we can skip multi-submits of the same action). * * @author Chad Brandon */ public class TransactionTokenRenderer extends Renderer { /** * @see javax.faces.render.Renderer#encodeBegin(javax.faces.context.FacesContext, javax.faces.component.UIComponent) */ @SuppressWarnings("unchecked") public void encodeBegin( FacesContext context, UIComponent component) throws IOException { if (component.getParent() != null) { component.getParent().getAttributes().put(TransactionToken.TRANSACTION_TOKEN, UUID.randomUUID().toString()); } } } 1.1 cartridges/andromda-jsf2/components/src/main/java/org/andromda/cartridges/jsf2/component/TransactionToken.java Index: TransactionToken.java =================================================================== package org.andromda.cartridges.jsf2.component; import javax.faces.component.UIComponentBase; /** * The transaction token component, basically just registers its renderer. * * @author Chad Brandon */ public class TransactionToken extends UIComponentBase { public static final String TRANSACTION_TOKEN = "AndroMDA_Transaction_Token"; private static final String RENDERER_TYPE = "org.andromda.cartridges.jsf2.TransactionToken"; public TransactionToken() { super(); this.setRendererType(RENDERER_TYPE); } /** * @see javax.faces.component.UIComponent#getFamily() */ public String getFamily() { return RENDERER_TYPE; } } 1.5 +6 -0 cartridges/andromda-jsf2/components/pom.xml Index: pom.xml =================================================================== RCS file: /cvsroot/andromdaplugins/cartridges/andromda-jsf2/components/pom.xml,v retrieving revision 1.4 retrieving revision 1.5 diff -u -w -r1.4 -r1.5 --- pom.xml 11 Apr 2008 22:57:12 -0000 1.4 +++ pom.xml 24 Jul 2008 18:07:44 -0000 1.5 @@ -25,6 +25,12 @@ <artifactId>tomahawk</artifactId> <version>1.1.7-SNAPSHOT</version> <scope>provided</scope> + <exclusions> + <exclusion> + <groupId>commons-collections</groupId> + <artifactId>commons-collections</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> <groupId>commons-lang</groupId> |