1 package com.icesoft.faces.component; 2 3 import com.icesoft.jasper.Constants; 4 import java.io.Serializable ; 5 6 import javax.faces.component.UIViewRoot; 7 import javax.faces.context.ExternalContext; 8 import javax.faces.context.FacesContext; 9 import java.util.Map ; 10 11 18 public class NamespacingViewRoot extends UIViewRoot implements Serializable { 19 20 private ExternalContext extCtxt; 21 private String namespace; 22 23 public NamespacingViewRoot(FacesContext context) { 24 extCtxt = context.getExternalContext(); 25 Map requestMap = extCtxt.getRequestMap(); 26 namespace = (String )requestMap.get(Constants.NAMESPACE_KEY); 27 } 28 29 37 public String createUniqueId() { 38 String uniqueID = super.createUniqueId(); 39 40 if (namespace == null || uniqueID.startsWith(namespace)) { 41 return uniqueID; 42 } 43 44 return extCtxt.encodeNamespace(uniqueID); 45 } 46 } 47 | Popular Tags |