JBoss Tools SVN: r15719 - workspace/snjeza/seam-examples.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2009-06-04 16:04:11 -0400 (Thu, 04 Jun 2009)
New Revision: 15719
Modified:
workspace/snjeza/seam-examples/booking-mavenized-2.1.1.zip
Log:
https://jira.jboss.org/jira/browse/JBIDE-4413 Problem when executing TestNG tests in the mavenized booking EAR example
Modified: workspace/snjeza/seam-examples/booking-mavenized-2.1.1.zip
===================================================================
(Binary files differ)
15 years, 6 months
JBoss Tools SVN: r15718 - workspace/snjeza/seam-examples.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2009-06-04 15:02:38 -0400 (Thu, 04 Jun 2009)
New Revision: 15718
Modified:
workspace/snjeza/seam-examples/booking-mavenized-2.1.1.zip
Log:
https://jira.jboss.org/jira/browse/JBIDE-4413 Problem when executing TestNG tests in the mavenized booking EAR example
Modified: workspace/snjeza/seam-examples/booking-mavenized-2.1.1.zip
===================================================================
(Binary files differ)
15 years, 6 months
JBoss Tools SVN: r15717 - in trunk/jst/plugins/org.jboss.tools.jst.web.kb: src/org/jboss/tools/jst/web/kb/internal/taglib and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2009-06-04 14:44:52 -0400 (Thu, 04 Jun 2009)
New Revision: 15717
Added:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/CustomTagLibrary.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/taglib/CustomTagLibManager.java
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractAttribute.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractTagLib.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigAttribute.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigComponent.java
trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfCore.xml
trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfHtmlBasic.xml
Log:
https://jira.jboss.org/jira/browse/JBIDE-2808
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd 2009-06-04 18:22:36 UTC (rev 15716)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd 2009-06-04 18:44:52 UTC (rev 15717)
@@ -12,7 +12,7 @@
-->
<!ELEMENT tag-lib (component*, componentExtension?)>
-<!ATTLIST schema dafault-prefix CDATA #IMPLIED>
+<!ATTLIST tag-lib dafaultPrefix CDATA #IMPLIED>
<!--
component describes a component.
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractAttribute.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractAttribute.java 2009-06-04 18:22:36 UTC (rev 15716)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractAttribute.java 2009-06-04 18:44:52 UTC (rev 15717)
@@ -123,10 +123,20 @@
return proposals.toArray(new TextProposal[proposals.size()]);
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#clone()
+ */
+ @Override
public AbstractAttribute clone() throws CloneNotSupportedException {
return (AbstractAttribute)super.clone();
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#merge(org.jboss.tools.jst.web.kb.internal.KbObject)
+ */
+ @Override
public List<Change> merge(KbObject s) {
List<Change> changes = super.merge(s);
@@ -147,10 +157,20 @@
return changes;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#getXMLName()
+ */
+ @Override
public String getXMLName() {
return KbXMLStoreConstants.TAG_ATTRIBUTE;
}
-
+
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#toXML(org.w3c.dom.Element, java.util.Properties)
+ */
+ @Override
public Element toXML(Element parent, Properties context) {
Element element = super.toXML(parent, context);
@@ -161,6 +181,11 @@
return element;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#loadXML(org.w3c.dom.Element, java.util.Properties)
+ */
+ @Override
public void loadXML(Element element, Properties context) {
super.loadXML(element, context);
@@ -171,9 +196,12 @@
if(name == null && element.hasAttribute(XMLStoreConstants.ATTR_NAME)) {
name = element.getAttribute(XMLStoreConstants.ATTR_NAME);
}
-
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#saveAttributesInfo(org.w3c.dom.Element, java.util.Properties)
+ */
@Override
protected void saveAttributesInfo(Element element, Properties context) {
if(context.get(XMLStoreConstants.KEY_MODEL_OBJECT) == getId()) {
@@ -183,6 +211,10 @@
}
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#loadAttributesInfo(org.w3c.dom.Element, java.util.Properties)
+ */
@Override
protected void loadAttributesInfo(Element element, Properties context) {
if(context.get(XMLStoreConstants.KEY_MODEL_OBJECT) == getId() && getId() != null) {
@@ -194,5 +226,4 @@
super.loadAttributesInfo(element, context);
}
}
-
}
\ No newline at end of file
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractTagLib.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractTagLib.java 2009-06-04 18:22:36 UTC (rev 15716)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/AbstractTagLib.java 2009-06-04 18:44:52 UTC (rev 15717)
@@ -164,10 +164,20 @@
this.components = components;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#getSourcePath()
+ */
+ @Override
public IPath getSourcePath() {
return source;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#setSourcePath(org.eclipse.core.runtime.IPath)
+ */
+ @Override
public void setSourcePath(IPath source) {
this.source = source;
}
@@ -275,6 +285,11 @@
return proposals.toArray(new TextProposal[proposals.size()]);
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#clone()
+ */
+ @Override
public AbstractTagLib clone() throws CloneNotSupportedException {
AbstractTagLib t = (AbstractTagLib)super.clone();
t.components = new HashMap<String, IComponent>();
@@ -285,16 +300,31 @@
return t;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#merge(org.jboss.tools.jst.web.kb.internal.KbObject)
+ */
+ @Override
public List<Change> merge(KbObject s) {
List<Change> changes = super.merge(s);
//TODO
return changes;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#getXMLName()
+ */
+ @Override
public String getXMLName() {
return KbXMLStoreConstants.TAG_LIBRARY;
}
-
+
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#toXML(org.w3c.dom.Element, java.util.Properties)
+ */
+ @Override
public Element toXML(Element parent, Properties context) {
Element element = super.toXML(parent, context);
@@ -313,6 +343,11 @@
protected void saveAttributeValues(Element element) {
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#loadXML(org.w3c.dom.Element, java.util.Properties)
+ */
+ @Override
public void loadXML(Element element, Properties context) {
super.loadXML(element, context);
Added: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/CustomTagLibrary.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/CustomTagLibrary.java (rev 0)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/CustomTagLibrary.java 2009-06-04 18:44:52 UTC (rev 15717)
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.jst.web.kb.internal.taglib;
+
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.jboss.tools.jst.web.kb.WebKbPlugin;
+import org.jboss.tools.jst.web.kb.taglib.ICustomTagLibrary;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.xml.sax.EntityResolver;
+import org.xml.sax.InputSource;
+import org.xml.sax.SAXException;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class CustomTagLibrary extends AbstractTagLib implements ICustomTagLibrary {
+
+ private static final String DEFAULT_PREFIX = "defaultPrefix"; //$NON-NLS-1$
+ private static final String TAG_LIB = "tag-lib"; //$NON-NLS-1$
+ private static final String COMPONENT = "component"; //$NON-NLS-1$
+ private static final String CLOSE_TAG = "closeTag"; //$NON-NLS-1$
+ private static final String TRUE = "true"; //$NON-NLS-1$
+ private static final String NAME = "name"; //$NON-NLS-1$
+ private static final String ATTRIBUTE = "attribute"; //$NON-NLS-1$
+ private static final String REQUIRED = "required"; //$NON-NLS-1$
+ private static final String PROPOSAL = "proposal"; //$NON-NLS-1$
+ private static final String TYPE = "type"; //$NON-NLS-1$
+ private static final String ENUMERATION = "enumeration"; //$NON-NLS-1$
+ private static final String PARAM = "param"; //$NON-NLS-1$
+ private static final String VALUE = "value"; //$NON-NLS-1$
+ private static final String COMPONET_EXTENSION = "componentExtension"; //$NON-NLS-1$
+ private static final String DEFAULT_VALUE = "defaultValue"; //$NON-NLS-1$
+ private static final String EXTENDED = "extended"; //$NON-NLS-1$
+ private static final String DESCRIPTION = "description"; //$NON-NLS-1$
+
+ protected String defaultPrefix;
+
+ public CustomTagLibrary(File file, String uri, String version, String name) {
+ Document document = null;
+ try {
+ DocumentBuilder builder = createDocumentBuilder(false);
+ document = builder.parse(file);
+ } catch (SAXException e) {
+ WebKbPlugin.getDefault().logError(e);
+ } catch (IOException e) {
+ WebKbPlugin.getDefault().logError(e);
+ } catch (ParserConfigurationException e) {
+ WebKbPlugin.getDefault().logError(e);
+ }
+ defaultPrefix = document.getDocumentElement().getAttribute(DEFAULT_PREFIX);
+ Element tagLib = document.getDocumentElement();
+ NodeList children = tagLib.getChildNodes();
+ for (int i = 0; i < children.getLength(); i++) {
+ Node child = children.item(i);
+ if(child instanceof Element) {
+ if(child.getNodeName().equals(COMPONENT)) {
+ parseComponent((Element)child);
+ } else if (child.getNodeName().equals(COMPONET_EXTENSION)) {
+ parseComponentExtension((Element)child);
+ }
+ }
+ }
+ }
+
+ private void parseComponent(Element component) {
+ String name = component.getAttribute(NAME);
+ boolean closeTag = TRUE.equalsIgnoreCase(component.getAttribute(CLOSE_TAG));
+ NodeList children = component.getChildNodes();
+ for (int i = 0; i < children.getLength(); i++) {
+ Node child = children.item(i);
+ if(child instanceof Element) {
+ if(child.getNodeName().equals(ATTRIBUTE)) {
+ Element attribute = (Element)child;
+ String attributeName = attribute.getAttribute(NAME);
+ boolean required = TRUE.equalsIgnoreCase(attribute.getAttribute(REQUIRED));
+ }
+ }
+ }
+
+ //TODO
+ }
+
+ private void parseComponentExtension(Element extension) {
+ //TODO
+ }
+
+ private DocumentBuilder createDocumentBuilder(boolean validate) throws ParserConfigurationException {
+ DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
+ documentBuilderFactory.setValidating(validate);
+ DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
+
+ if(!validate) {
+ documentBuilder.setEntityResolver(new EntityResolver() {
+ public InputSource resolveEntity(java.lang.String publicId, java.lang.String systemId) throws SAXException, java.io.IOException {
+ if((systemId != null) && systemId.toLowerCase().endsWith(".dtd")) { // this deactivates DTD //$NON-NLS-1$
+ return new InputSource(new ByteArrayInputStream("<?xml version='1.0' encoding='UTF-8'?>".getBytes())); //$NON-NLS-1$
+ } else {
+ return null;
+ }
+ }
+ });
+ }
+ return documentBuilder;
+ }
+}
\ No newline at end of file
Property changes on: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/CustomTagLibrary.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigAttribute.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigAttribute.java 2009-06-04 18:22:36 UTC (rev 15716)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigAttribute.java 2009-06-04 18:44:52 UTC (rev 15717)
@@ -24,10 +24,19 @@
*/
public class FacesConfigAttribute extends AbstractAttribute {
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#getXMLClass()
+ */
+ @Override
public String getXMLClass() {
return KbXMLStoreConstants.CLS_FACESCONFIG_LIBRARY;
}
-
+
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractAttribute#loadAttributesInfo(org.w3c.dom.Element, java.util.Properties)
+ */
@Override
protected void loadAttributesInfo(Element element, Properties context) {
if(context.get(XMLStoreConstants.KEY_MODEL_OBJECT) == getId() && getId() != null) {
@@ -40,5 +49,4 @@
super.loadAttributesInfo(element, context);
}
}
-
-}
+}
\ No newline at end of file
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigComponent.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigComponent.java 2009-06-04 18:22:36 UTC (rev 15716)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/internal/taglib/FacesConfigComponent.java 2009-06-04 18:44:52 UTC (rev 15717)
@@ -30,12 +30,22 @@
Map<String,Facet> facets = new HashMap<String, Facet>();
Facet[] facetArray = EMPTY_FACET_SET;
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractComponent#getFacet(java.lang.String)
+ */
+ @Override
public Facet getFacet(String name) {
return facets.get(name);
}
public static final Facet[] EMPTY_FACET_SET = new Facet[0];
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractComponent#getFacets()
+ */
+ @Override
public Facet[] getFacets() {
if(facetArray == null) {
synchronized (facets) {
@@ -49,6 +59,11 @@
return facetArray;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractComponent#getFacets(java.lang.String)
+ */
+ @Override
public Facet[] getFacets(String nameTemplate) {
Facet[] fs = getFacets();
if(fs.length == 0) return EMPTY_FACET_SET;
@@ -70,6 +85,11 @@
}
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractComponent#clone()
+ */
+ @Override
public FacesConfigComponent clone() throws CloneNotSupportedException {
FacesConfigComponent copy = new FacesConfigComponent();
copy.facets = new HashMap<String, Facet>();
@@ -79,10 +99,20 @@
return copy;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.KbObject#getXMLClass()
+ */
+ @Override
public String getXMLClass() {
return KbXMLStoreConstants.CLS_FACESCONFIG_LIBRARY;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractComponent#merge(org.jboss.tools.jst.web.kb.internal.KbObject)
+ */
+ @Override
public List<Change> merge(KbObject s) {
List<Change> changes = super.merge(s);
FacesConfigComponent c = (FacesConfigComponent)s;
@@ -123,6 +153,11 @@
}
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractComponent#toXML(org.w3c.dom.Element, java.util.Properties)
+ */
+ @Override
public Element toXML(Element parent, Properties context) {
Element element = super.toXML(parent, context);
@@ -133,6 +168,11 @@
return element;
}
+ /*
+ * (non-Javadoc)
+ * @see org.jboss.tools.jst.web.kb.internal.taglib.AbstractComponent#loadXML(org.w3c.dom.Element, java.util.Properties)
+ */
+ @Override
public void loadXML(Element element, Properties context) {
super.loadXML(element, context);
@@ -143,5 +183,4 @@
addFacet(f);
}
}
-
-}
+}
\ No newline at end of file
Added: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/taglib/CustomTagLibManager.java
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/taglib/CustomTagLibManager.java (rev 0)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/taglib/CustomTagLibManager.java 2009-06-04 18:44:52 UTC (rev 15717)
@@ -0,0 +1,89 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.jst.web.kb.taglib;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.jboss.tools.jst.web.kb.WebKbPlugin;
+import org.jboss.tools.jst.web.kb.internal.taglib.CustomTagLibrary;
+import org.osgi.framework.Bundle;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class CustomTagLibManager {
+
+ private static final CustomTagLibManager INSTANCE = new CustomTagLibManager();
+
+ private ICustomTagLibrary[] libs = null;
+
+ private CustomTagLibManager() {
+ }
+
+ public static CustomTagLibManager getInstance() {
+ return INSTANCE;
+ }
+
+ /**
+ * Returns all custom tag libraries which are defined via extension point org.jboss.tools.jst.web.kb.KbTagLib.
+ * @param project
+ * @param uri
+ * @return
+ */
+ public ICustomTagLibrary[] getLibraries() {
+ if(libs==null) {
+ Set<ICustomTagLibrary> libSet = new HashSet<ICustomTagLibrary>();
+ IExtensionRegistry registry = Platform.getExtensionRegistry();
+ IExtensionPoint extensionPoint = registry.getExtensionPoint("org.jboss.tools.jst.web.kb.KbTagLib"); //$NON-NLS-1$
+ IExtension[] extensions = extensionPoint.getExtensions();
+ for (int i=0; i<extensions.length; i++) {
+ IExtension extension = extensions[i];
+ IConfigurationElement[] elements = extension.getConfigurationElements();
+ for(int j=0; j<elements.length; j++) {
+ String uri = elements[j].getAttribute("uri"); //$NON-NLS-1$
+ String location = elements[j].getAttribute("location"); //$NON-NLS-1$
+ String version = elements[j].getAttribute("version"); //$NON-NLS-1$
+ String name = elements[j].getAttribute("version"); //$NON-NLS-1$
+ Bundle sourcePlugin = Platform.getBundle(elements[j].getNamespaceIdentifier());
+ File schemaLocation = null;
+ try {
+ String pluginPath = FileLocator.resolve(sourcePlugin.getEntry("/")).getPath();
+ if(uri==null || uri.length()==0 || location==null || location.length()==0) {
+ WebKbPlugin.getDefault().logWarning("Incorrect org.jboss.tools.jst.web.kb.KbTagLib extension in " + pluginPath + " plugin. URI or location can't be empty."); //$NON-NLS-1$ $NON-NLS-2$
+ continue;
+ }
+ schemaLocation = new File(pluginPath, location);
+ } catch (IOException e) {
+ WebKbPlugin.getDefault().logError(e);
+ continue;
+ }
+ if(schemaLocation.isFile()) {
+ CustomTagLibrary lib = new CustomTagLibrary(schemaLocation, uri, version, name);
+ libSet.add(lib);
+ } else {
+ WebKbPlugin.getDefault().logWarning("Can't load KB schema: " + schemaLocation); //$NON-NLS-1$
+ }
+ }
+ }
+ libs = libSet.toArray(new ICustomTagLibrary[0]);
+ }
+ return libs;
+ }
+}
\ No newline at end of file
Property changes on: trunk/jst/plugins/org.jboss.tools.jst.web.kb/src/org/jboss/tools/jst/web/kb/taglib/CustomTagLibManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfCore.xml
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfCore.xml 2009-06-04 18:22:36 UTC (rev 15716)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfCore.xml 2009-06-04 18:44:52 UTC (rev 15717)
@@ -2,7 +2,7 @@
<!DOCTYPE tag-lib PUBLIC "-//Red Hat, Inc//DTD Knowledge Base 2.0//EN" "http://anonsvn.jboss.org/repos/jbosstools/trunk/jst/plugins/org.jboss.too...">
<tag-lib defaultPrefix="f">
<component closeTag="true" name="convertDateTime">
- <attribute name="dateStyle" required="false">
+ <attribute name="dateStyle">
<proposal type="enumeration">
<param value="default" />
<param value="short" />
@@ -11,7 +11,7 @@
<param value="full" />
</proposal>
</attribute>
- <attribute name="timeStyle" required="false">
+ <attribute name="timeStyle">
<proposal type="enumeration">
<param value="default" />
<param value="short" />
@@ -20,7 +20,7 @@
<param value="full" />
</proposal>
</attribute>
- <attribute name="type" required="false">
+ <attribute name="type">
<proposal type="enumeration">
<param value="date" />
<param value="time" />
@@ -29,19 +29,19 @@
</attribute>
</component>
<component closeTag="true" name="convertNumber">
- <attribute name="groupingUsed" required="false">
+ <attribute name="groupingUsed">
<proposal type="enumeration">
<param value="true" />
<param value="false" />
</proposal>
</attribute>
- <attribute name="integerOnly" required="false">
+ <attribute name="integerOnly">
<proposal type="enumeration">
<param value="true" />
<param value="false" />
</proposal>
</attribute>
- <attribute name="type" required="false">
+ <attribute name="type">
<proposal type="enumeration">
<param value="number" />
<param value="currency" />
@@ -51,7 +51,7 @@
</component>
<component closeTag="true" name="selectItem">
- <attribute name="itemDisabled" required="false">
+ <attribute name="itemDisabled">
<proposal type="enumeration">
<param value="true" />
<param value="false" />
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfHtmlBasic.xml
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfHtmlBasic.xml 2009-06-04 18:22:36 UTC (rev 15716)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/JsfHtmlBasic.xml 2009-06-04 18:44:52 UTC (rev 15717)
@@ -12,7 +12,7 @@
value="#{facesContext.externalContext.requestContextPath}" />
</proposal>
</attribute>
- <attribute name="type" required="false">
+ <attribute name="type">
<proposal type="enumeration">
<param value="submit" />
<param value="reset" />
15 years, 6 months
JBoss Tools SVN: r15716 - in trunk/seam: plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring and 3 other directories.
by jbosstools-commits@lists.jboss.org
Author: dazarov
Date: 2009-06-04 14:22:36 -0400 (Thu, 04 Jun 2009)
New Revision: 15716
Added:
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameSeamContextVariableProcessor.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameSeamContextVariableWizard.java
Modified:
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/SeamCoreMessages.java
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/messages.properties
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameComponentProcessor.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameComponentWizard.java
trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/refactoring/SeamComponentRefactoringTest.java
Log:
Rename Seam Context Variable https://jira.jboss.org/jira/browse/JBIDE-1077
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/SeamCoreMessages.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/SeamCoreMessages.java 2009-06-04 18:19:02 UTC (rev 15715)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/SeamCoreMessages.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -41,7 +41,7 @@
public static String SeamFacetAbstractInstallDelegate_Could_not_save_changes_to_preferences;
public static String SeamFacetAbstractInstallDelegate_Error;
public static String SeamFacetAbstractInstallDelegate_Restrict_raw_XHTML_Documents;
- public static String RENAME_SEAM_COMPONENT_PROCESSOR_RENAME_SEAM_COMPONENT;
+ public static String RENAME_SEAM_COMPONENT_PROCESSOR_TITLE;
public static String RENAME_SEAM_COMPONENT_PROCESSOR_THIS_IS_NOT_A_SEAM_COMPONENT;
-
+ public static String RENAME_SEAM_CONTEXT_VARIABLE_PROCESSOR_TITLE;
}
\ No newline at end of file
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/messages.properties
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/messages.properties 2009-06-04 18:19:02 UTC (rev 15715)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/core/messages.properties 2009-06-04 18:22:36 UTC (rev 15716)
@@ -29,6 +29,7 @@
ERROR_JBOSS_AS_TARGET_SERVER_INCOMPATIBLE=Target Server is incompatible with Target Runtime selected
ERROR_JBOSS_AS_TARGET_RUNTIME_IS_EMPTY=Target Runtime cannot be empty
ERROR_JBOSS_AS_TARGET_RUNTIME_UNKNOWN=Unknown Target Runtime
-RENAME_SEAM_COMPONENT_PROCESSOR_RENAME_SEAM_COMPONENT=Rename Seam Component
+RENAME_SEAM_COMPONENT_PROCESSOR_TITLE=Rename Seam Component
RENAME_SEAM_COMPONENT_PROCESSOR_THIS_IS_NOT_A_SEAM_COMPONENT=This is not a Seam Component.
+RENAME_SEAM_CONTEXT_VARIABLE_PROCESSOR_TITLE=Rename Seam Context Variable
SEAM_INSTALL_WIZARD_PROJECT_NAME_WITH_UPPERCASE=Project names which start with a capital letter may break Seam/JSF applications; use lower case.
\ No newline at end of file
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameComponentProcessor.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameComponentProcessor.java 2009-06-04 18:19:02 UTC (rev 15715)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameComponentProcessor.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -10,95 +10,31 @@
******************************************************************************/
package org.jboss.tools.seam.internal.core.refactoring;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.jdt.internal.ui.text.FastJavaPartitionScanner;
-import org.eclipse.jdt.ui.text.IJavaPartitions;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.rules.IToken;
-import org.eclipse.jface.text.rules.Token;
import org.eclipse.ltk.core.refactoring.Change;
import org.eclipse.ltk.core.refactoring.CompositeChange;
import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.TextFileChange;
import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
import org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant;
-import org.eclipse.ltk.core.refactoring.participants.RenameProcessor;
import org.eclipse.ltk.core.refactoring.participants.SharableParticipants;
-import org.eclipse.text.edits.MultiTextEdit;
-import org.eclipse.text.edits.ReplaceEdit;
-import org.eclipse.text.edits.TextEdit;
-import org.eclipse.wst.sse.core.StructuredModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
-import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
-import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
-import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
-import org.jboss.tools.common.el.core.model.ELInstance;
-import org.jboss.tools.common.el.core.model.ELInvocationExpression;
-import org.jboss.tools.common.el.core.model.ELModel;
-import org.jboss.tools.common.el.core.model.ELPropertyInvocation;
-import org.jboss.tools.common.el.core.parser.ELParser;
-import org.jboss.tools.common.el.core.parser.ELParserUtil;
-import org.jboss.tools.common.model.project.ext.ITextSourceReference;
-import org.jboss.tools.common.util.FileUtil;
-import org.jboss.tools.seam.core.BijectedAttributeType;
-import org.jboss.tools.seam.core.IBijectedAttribute;
import org.jboss.tools.seam.core.ISeamComponent;
-import org.jboss.tools.seam.core.ISeamFactory;
-import org.jboss.tools.seam.core.ISeamJavaComponentDeclaration;
-import org.jboss.tools.seam.core.ISeamProject;
-import org.jboss.tools.seam.core.ISeamXmlComponentDeclaration;
import org.jboss.tools.seam.core.SeamCoreMessages;
-import org.jboss.tools.seam.core.SeamCorePlugin;
-import org.jboss.tools.seam.core.SeamProjectsSet;
-import org.jboss.tools.seam.internal.core.SeamComponentDeclaration;
-import org.jboss.tools.seam.internal.core.scanner.java.SeamAnnotations;
-import org.jboss.tools.seam.internal.core.validation.SeamContextValidationHelper;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
/**
* @author Alexey Kazakov, Daniel Azarov
*/
-public class RenameComponentProcessor extends RenameProcessor {
- private static final String JAVA_EXT = "java"; //$NON-NLS-1$
- private static final String XML_EXT = "xml"; //$NON-NLS-1$
- private static final String XHTML_EXT = "xhtml"; //$NON-NLS-1$
- private static final String JSP_EXT = "jsp"; //$NON-NLS-1$
- private static final String PROPERTIES_EXT = "properties"; //$NON-NLS-1$
+public class RenameComponentProcessor extends SeamRenameProcessor {
+ private ISeamComponent component;
- private static final String SEAM_PROPERTIES_FILE = "seam.properties"; //$NON-NLS-1$
- private IFile declarationFile=null;
- private ISeamComponent component;
- private String newName;
- SeamContextValidationHelper coreHelper = new SeamContextValidationHelper();
- SeamProjectsSet projectsSet;
-
/**
* @param component Renamed component
*/
public RenameComponentProcessor(ISeamComponent component) {
super();
- this.component = component;
+ setComponent(component);
}
public ISeamComponent getComponent() {
@@ -107,292 +43,11 @@
public void setComponent(ISeamComponent component) {
this.component = component;
+ setOldName(component.getName());
}
- public void setNewComponentName(String componentName){
- this.newName = componentName;
- }
- // we need to find references in .java .xml .xhtml .jsp .properties files
- private void findELReferences(){
- if(declarationFile == null)
- return;
-
- IProject[] projects = projectsSet.getAllProjects();
- for (IProject project : projects) {
- scan(project);
- }
- }
- private void scan(IContainer container){
- try{
- for(IResource resource : container.members()){
- if(resource instanceof IFolder)
- scan((IFolder) resource);
- else if(resource instanceof IFile)
- scan((IFile) resource);
- }
- }catch(CoreException ex){
- SeamCorePlugin.getDefault().logError(ex);
- }
- }
-
- private void scan(IFile file){
- String ext = file.getFileExtension();
- String content = null;
- try {
- content = FileUtil.readStream(file.getContents());
- } catch (CoreException e) {
- SeamCorePlugin.getPluginLog().logError(e);
- return;
- }
- if(JAVA_EXT.equalsIgnoreCase(ext)){
- scanJava(file, content);
- } else if(XML_EXT.equalsIgnoreCase(ext) || XHTML_EXT.equalsIgnoreCase(ext) || JSP_EXT.equalsIgnoreCase(ext))
- scanDOM(file, content);
- else if(PROPERTIES_EXT.equalsIgnoreCase(ext))
- scanProperties(file, content);
- }
-
- ArrayList<IPath> files = new ArrayList<IPath>();
-
- private void findDeclarations() throws CoreException{
- files.clear();
- findDeclarations(component, true);
-
- if(declarationFile == null)
- return;
-
- projectsSet = new SeamProjectsSet(declarationFile.getProject());
-
- IProject[] projects = projectsSet.getAllProjects();
- for (IProject project : projects) {
- ISeamProject seamProject = SeamCorePlugin.getSeamProject(project, true);
- if(seamProject != null){
- ISeamComponent comp = seamProject.getComponent(component.getName());
- if(comp != null)
- findDeclarations(comp, false);
- }
- }
- }
-
- private void findDeclarations(ISeamComponent component, boolean force) throws CoreException{
- if(component.getJavaDeclaration() != null){
- if(!files.contains(component.getJavaDeclaration().getResource().getFullPath())){
- files.add(component.getJavaDeclaration().getResource().getFullPath());
- renameJavaDeclaration(component.getJavaDeclaration());
- }else if(force)
- renameJavaDeclaration(component.getJavaDeclaration());
- }
-
- Set<ISeamXmlComponentDeclaration> xmlDecls = component.getXmlDeclarations();
-
- for(ISeamXmlComponentDeclaration xmlDecl : xmlDecls){
- if(!files.contains(xmlDecl.getResource().getFullPath())){
- files.add(xmlDecl.getResource().getFullPath());
- renameXMLDeclaration(xmlDecl);
- }else if(force)
- renameXMLDeclaration(xmlDecl);
- }
- }
-
- private void renameJavaDeclaration(ISeamJavaComponentDeclaration javaDecl) throws CoreException{
- IFile file = (IFile)javaDecl.getResource();
- if(file != null && !coreHelper.isJar(javaDecl)){
- ITextSourceReference location = ((SeamComponentDeclaration)javaDecl).getLocationFor(ISeamXmlComponentDeclaration.NAME);
- if(location != null && !isBadLocation(location)){
- TextFileChange change = getChange(file);
- TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), "\""+newName+"\""); //$NON-NLS-1$ //$NON-NLS-2$
- change.addEdit(edit);
- }
- }
- declarationFile = file;
- }
-
- private void renameXMLDeclaration(ISeamXmlComponentDeclaration xmlDecl){
- IFile file = (IFile)xmlDecl.getResource();
- if(file != null && !coreHelper.isJar(xmlDecl)){
- ITextSourceReference location = ((SeamComponentDeclaration)xmlDecl).getLocationFor(ISeamXmlComponentDeclaration.NAME);
- if(location != null && !isBadLocation(location))
- changeXMLNode(location, file);
- }
- if(declarationFile == null)
- declarationFile = file;
- }
-
- private void scanJava(IFile file, String content){
- try {
- FastJavaPartitionScanner scaner = new FastJavaPartitionScanner();
- Document document = new Document(content);
- scaner.setRange(document, 0, document.getLength());
- IToken token = scaner.nextToken();
- while(token!=null && token!=Token.EOF) {
- if(IJavaPartitions.JAVA_STRING.equals(token.getData())) {
- int length = scaner.getTokenLength();
- int offset = scaner.getTokenOffset();
- String value = document.get(offset, length);
- if(value.indexOf('{')>-1) {
- scanString(file, value, offset);
- }
- }
- token = scaner.nextToken();
- }
- } catch (BadLocationException e) {
- SeamCorePlugin.getDefault().logError(e);
- }
- }
-
- private void scanDOM(IFile file, String content){
- IModelManager manager = StructuredModelManager.getModelManager();
- if(manager == null) {
- return;
- }
- IStructuredModel model = null;
- try {
- model = manager.getModelForRead(file);
- if (model instanceof IDOMModel) {
- IDOMModel domModel = (IDOMModel) model;
- IDOMDocument document = domModel.getDocument();
- scanChildNodes(file, document);
- }
- } catch (CoreException e) {
- SeamCorePlugin.getDefault().logError(e);
- } catch (IOException e) {
- SeamCorePlugin.getDefault().logError(e);
- } finally {
- if (model != null) {
- model.releaseFromRead();
- }
- }
- }
-
- private void scanChildNodes(IFile file, Node parent) {
- NodeList children = parent.getChildNodes();
- for(int i=0; i<children.getLength(); i++) {
- Node curentValidatedNode = children.item(i);
- if(Node.ELEMENT_NODE == curentValidatedNode.getNodeType()) {
- scanNodeContent(file, ((IDOMNode)curentValidatedNode).getFirstStructuredDocumentRegion(), DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE);
- } else if(Node.TEXT_NODE == curentValidatedNode.getNodeType()) {
- scanNodeContent(file, ((IDOMNode)curentValidatedNode).getFirstStructuredDocumentRegion(), DOMRegionContext.XML_CONTENT);
- }
- scanChildNodes(file, curentValidatedNode);
- }
- }
-
- private void scanNodeContent(IFile file, IStructuredDocumentRegion node, String regionType) {
- ITextRegionList regions = node.getRegions();
- for(int i=0; i<regions.size(); i++) {
- ITextRegion region = regions.get(i);
- if(region.getType() == regionType) {
- String text = node.getFullText(region);
- if(text.indexOf("{")>-1) { //$NON-NLS-1$
- int offset = node.getStartOffset() + region.getStart();
- scanString(file, text, offset);
- }
- }
- }
- }
-
- private CompositeChange rootChange;
- private TextFileChange lastChange;
-
- // lets collect all changes for the same files in one MultiTextEdit
- private TextFileChange getChange(IFile file){
- if(lastChange != null && lastChange.getFile().equals(file))
- return lastChange;
-
- for(int i=0; i < rootChange.getChildren().length; i++){
- TextFileChange change = (TextFileChange)rootChange.getChildren()[i];
- if(change.getFile().equals(file)){
- lastChange = change;
- return lastChange;
- }
- }
- lastChange = new TextFileChange(file.getName(), file);
- MultiTextEdit root = new MultiTextEdit();
- lastChange.setEdit(root);
- rootChange.add(lastChange);
-
- return lastChange;
- }
-
- // looking for component references in EL
- private void scanString(IFile file, String string, int offset) {
- int startEl = string.indexOf("#{"); //$NON-NLS-1$
- if(startEl>-1) {
- ELParser parser = ELParserUtil.getJbossFactory().createParser();
- ELModel model = parser.parse(string);
- for (ELInstance instance : model.getInstances()) {
- for(ELInvocationExpression ie : instance.getExpression().getInvocations()){
- ELPropertyInvocation pi = findComponentReference(ie);
- if(pi != null){
- TextFileChange change = getChange(file);
- TextEdit edit = new ReplaceEdit(offset+pi.getStartPosition(), pi.getName().getStart()+pi.getName().getLength()-pi.getStartPosition(), newName);
- change.addEdit(edit);
- }
- }
- }
- }
- }
-
- private ELPropertyInvocation findComponentReference(ELInvocationExpression invocationExpression){
- ELInvocationExpression invExp = invocationExpression;
- while(invExp != null){
- if(invExp instanceof ELPropertyInvocation){
- if(((ELPropertyInvocation)invExp).getQualifiedName() != null && ((ELPropertyInvocation)invExp).getQualifiedName().equals(component.getName()))
- return (ELPropertyInvocation)invExp;
- else
- invExp = invExp.getLeft();
-
- }else{
- invExp = invExp.getLeft();
- }
- }
- return null;
- }
-
- private void scanProperties(IFile file, String content){
- scanString(file, content, 0);
-
- if(!file.getName().equals(SEAM_PROPERTIES_FILE))
- return;
-
- StringTokenizer tokenizer = new StringTokenizer(content, "#= \t\r\n\f", true); //$NON-NLS-1$
-
- String lastToken = "\n"; //$NON-NLS-1$
- int offset = 0;
- boolean comment = false;
- boolean key = true;
-
- while(tokenizer.hasMoreTokens()){
- String token = tokenizer.nextToken("#= \t\r\n\f"); //$NON-NLS-1$
- if(token.equals("\r")) //$NON-NLS-1$
- token = "\n"; //$NON-NLS-1$
-
- if(token.equals("#") && lastToken.equals("\n")) //$NON-NLS-1$ //$NON-NLS-2$
- comment = true;
- else if(token.equals("\n") && comment) //$NON-NLS-1$
- comment = false;
-
- if(!comment){
- if(!token.equals("\n") && lastToken.equals("\n")) //$NON-NLS-1$ //$NON-NLS-2$
- key = true;
- else if(key && (token.equals("=") || token.equals(" "))) //$NON-NLS-1$ //$NON-NLS-2$
- key = false;
-
- if(key && token.startsWith(component.getName())){
- String changeText = token.replaceFirst(component.getName(), newName);
- TextFileChange change = getChange(file);
- TextEdit edit = new ReplaceEdit(offset, token.length(), changeText);
- change.addEdit(edit);
- }
- }
-
- lastToken = token;
- offset += token.length();
- }
- }
-
/*
* (non-Javadoc)
* @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#checkFinalConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
@@ -425,156 +80,14 @@
@Override
public Change createChange(IProgressMonitor pm) throws CoreException,
OperationCanceledException {
- rootChange = new CompositeChange(SeamCoreMessages.RENAME_SEAM_COMPONENT_PROCESSOR_RENAME_SEAM_COMPONENT);
+ rootChange = new CompositeChange(SeamCoreMessages.RENAME_SEAM_COMPONENT_PROCESSOR_TITLE);
- findDeclarations();
+ renameComponent(component);
- findAnnotations();
-
- findELReferences();
-
return rootChange;
}
- private void findAnnotations(){
- if(declarationFile == null)
- return;
-
- ISeamProject seamProject = SeamCorePlugin.getSeamProject(declarationFile.getProject(), true);
- files.clear();
- findAnnotations(seamProject, true);
-
- IProject[] projects = projectsSet.getAllProjects();
- for (IProject project : projects) {
- ISeamProject sProject = SeamCorePlugin.getSeamProject(project, true);
- if(sProject != null){
- findAnnotations(sProject, false);
- }
- }
-
- }
-
- private void findAnnotations(ISeamProject seamProject, boolean force){
- // find @In annotations
- Set<IBijectedAttribute> inSet = seamProject.getBijectedAttributesByName(component.getName(), BijectedAttributeType.IN);
-
- for(IBijectedAttribute inAtt : inSet){
- ITextSourceReference location = inAtt.getLocationFor(SeamAnnotations.IN_ANNOTATION_TYPE);
- if(location != null){
- if(!files.contains(inAtt.getResource().getFullPath())){
- files.add(inAtt.getResource().getFullPath());
- changeAnnotation(location, (IFile)inAtt.getResource());
- }else if(force)
- changeAnnotation(location, (IFile)inAtt.getResource());
- }
- }
-
- // find @Factory annotations
- Set<ISeamFactory> factorySet = seamProject.getFactoriesByName(component.getName());
-
- for(ISeamFactory factory : factorySet){
- IFile file = (IFile)factory.getResource();
- if(file.getFileExtension().equalsIgnoreCase(JAVA_EXT)){
- ITextSourceReference location = factory.getLocationFor(SeamAnnotations.FACTORY_ANNOTATION_TYPE);
- if(location != null){
- if(!files.contains(file.getFullPath())){
- files.add(file.getFullPath());
- changeAnnotation(location, file);
- }else if(force)
- changeAnnotation(location, file);
- }
- }else{
- ITextSourceReference location = factory.getLocationFor(ISeamXmlComponentDeclaration.NAME);
- if(location != null){
- if(!files.contains(file.getFullPath())){
- files.add(file.getFullPath());
- changeXMLNode(location, file);
- }else if(force)
- changeXMLNode(location, file);
- }
- }
- }
- }
-
- private boolean isBadLocation(ITextSourceReference location){
- return location.getStartPosition() == 0 && location.getLength() == 0;
- }
-
- private void changeXMLNode(ITextSourceReference location, IFile file){
- if(isBadLocation(location))
- return;
-
- String content = null;
- try {
- content = FileUtil.readStream(file.getContents());
- } catch (CoreException e) {
- SeamCorePlugin.getPluginLog().logError(e);
- return;
- }
-
- TextFileChange change = getChange(file);
-
- String text = content.substring(location.getStartPosition(), location.getStartPosition()+location.getLength());
- if(text.startsWith("<")){ //$NON-NLS-1$
- int position = text.lastIndexOf("/>"); //$NON-NLS-1$
- if(position < 0){
- position = text.lastIndexOf(">"); //$NON-NLS-1$
- }
-
- TextEdit edit = new ReplaceEdit(location.getStartPosition()+position, 0, " name=\""+newName+"\""); //$NON-NLS-1$ //$NON-NLS-2$
- change.addEdit(edit);
- }else{
- TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), newName);
- change.addEdit(edit);
- }
- }
-
- private void changeAnnotation(ITextSourceReference location, IFile file){
- if(isBadLocation(location))
- return;
- String content = null;
- try {
- content = FileUtil.readStream(file.getContents());
- } catch (CoreException e) {
- SeamCorePlugin.getPluginLog().logError(e);
- return;
- }
-
- TextFileChange change = getChange(file);
-
- String text = content.substring(location.getStartPosition(), location.getStartPosition()+location.getLength());
- int openBracket = text.indexOf("("); //$NON-NLS-1$
- if(openBracket > 0){
- int closeBracket = text.indexOf(")", openBracket); //$NON-NLS-1$
- int openQuote = text.indexOf("\"", openBracket); //$NON-NLS-1$
- int equals = text.indexOf("=", openBracket); //$NON-NLS-1$
- int value = text.indexOf("value", openBracket); //$NON-NLS-1$
-
- if(closeBracket == openBracket+1){ // empty brackets
- String newText = "\""+newName+"\""; //$NON-NLS-1$ //$NON-NLS-2$
- TextEdit edit = new ReplaceEdit(location.getStartPosition()+openBracket+1, 0, newText);
- change.addEdit(edit);
- }else if(value > 0){ // construction value="name" found so change name
- String newText = text.replace(component.getName(), newName);
- TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), newText);
- change.addEdit(edit);
- }else if(equals > 0){ // other parameters are found
- String newText = "value=\""+newName+"\","; //$NON-NLS-1$ //$NON-NLS-2$
- TextEdit edit = new ReplaceEdit(location.getStartPosition()+openBracket+1, 0, newText);
- change.addEdit(edit);
- }else{ // other cases
- String newText = text.replace(component.getName(), newName);
- TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), newText);
- change.addEdit(edit);
- }
- }else{
- String newText = "(\""+newName+"\")"; //$NON-NLS-1$ //$NON-NLS-2$
- TextEdit edit = new ReplaceEdit(location.getStartPosition()+location.getLength(), 0, newText);
- change.addEdit(edit);
- }
- }
-
/*
* (non-Javadoc)
* @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getElements()
@@ -599,7 +112,7 @@
*/
@Override
public String getProcessorName() {
- return SeamCoreMessages.RENAME_SEAM_COMPONENT_PROCESSOR_RENAME_SEAM_COMPONENT;
+ return SeamCoreMessages.RENAME_SEAM_COMPONENT_PROCESSOR_TITLE;
}
/*
Added: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameSeamContextVariableProcessor.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameSeamContextVariableProcessor.java (rev 0)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameSeamContextVariableProcessor.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -0,0 +1,153 @@
+ /*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.seam.internal.core.refactoring;
+
+import java.util.Set;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.OperationCanceledException;
+import org.eclipse.ltk.core.refactoring.Change;
+import org.eclipse.ltk.core.refactoring.CompositeChange;
+import org.eclipse.ltk.core.refactoring.RefactoringStatus;
+import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
+import org.eclipse.ltk.core.refactoring.participants.RefactoringParticipant;
+import org.eclipse.ltk.core.refactoring.participants.SharableParticipants;
+import org.jboss.tools.seam.core.ISeamComponent;
+import org.jboss.tools.seam.core.ISeamJavaComponentDeclaration;
+import org.jboss.tools.seam.core.ISeamProject;
+import org.jboss.tools.seam.core.SeamCoreMessages;
+import org.jboss.tools.seam.core.SeamCorePlugin;
+
+/**
+ * @author Daniel Azarov
+ */
+public class RenameSeamContextVariableProcessor extends SeamRenameProcessor {
+
+ /**
+ * @param component Renamed component
+ */
+ public RenameSeamContextVariableProcessor(IFile file, String oldName) {
+ super();
+ declarationFile = file;
+ setOldName(oldName);
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#checkFinalConditions(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext)
+ */
+ @Override
+ public RefactoringStatus checkFinalConditions(IProgressMonitor pm,
+ CheckConditionsContext context) throws CoreException,
+ OperationCanceledException {
+ return new RefactoringStatus();
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#checkInitialConditions(org.eclipse.core.runtime.IProgressMonitor)
+ */
+ @Override
+ public RefactoringStatus checkInitialConditions(IProgressMonitor pm)
+ throws CoreException, OperationCanceledException {
+ RefactoringStatus result = new RefactoringStatus();
+// if(getNewName()==null) {
+// result.addFatalError(SeamCoreMessages.RENAME_SEAM_COMPONENT_PROCESSOR_THIS_IS_NOT_A_SEAM_COMPONENT);
+// }
+ return result;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#createChange(org.eclipse.core.runtime.IProgressMonitor)
+ */
+ @Override
+ public Change createChange(IProgressMonitor pm) throws CoreException,
+ OperationCanceledException {
+ rootChange = new CompositeChange(SeamCoreMessages.RENAME_SEAM_CONTEXT_VARIABLE_PROCESSOR_TITLE);
+
+ ISeamComponent component = checkComponent();
+ if(component != null)
+ renameComponent(component);
+
+ return rootChange;
+ }
+
+ private ISeamComponent checkComponent(){
+ IProject project = declarationFile.getProject();
+ ISeamProject seamProject = SeamCorePlugin.getSeamProject(project, true);
+ if (seamProject != null) {
+ Set<ISeamComponent> components = seamProject.getComponentsByPath(declarationFile.getFullPath());
+ for(ISeamComponent component : components){
+ ISeamJavaComponentDeclaration declaration = component.getJavaDeclaration();
+ if(declaration != null){
+ IResource resource = declaration.getResource();
+ if(resource != null && resource.getFullPath().equals(declarationFile.getFullPath())){
+ if(declaration.getName().equals(component.getName())){
+ return component;
+ }
+ }
+ }
+ }
+ }
+ return null;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getElements()
+ */
+ @Override
+ public Object[] getElements() {
+ return new String[]{getNewName()};
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getIdentifier()
+ */
+ @Override
+ public String getIdentifier() {
+ return getClass().getName();
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#getProcessorName()
+ */
+ @Override
+ public String getProcessorName() {
+ return SeamCoreMessages.RENAME_SEAM_CONTEXT_VARIABLE_PROCESSOR_TITLE;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#isApplicable()
+ */
+ @Override
+ public boolean isApplicable() throws CoreException {
+ return getNewName()!=null;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ltk.core.refactoring.participants.RefactoringProcessor#loadParticipants(org.eclipse.ltk.core.refactoring.RefactoringStatus, org.eclipse.ltk.core.refactoring.participants.SharableParticipants)
+ */
+ @Override
+ public RefactoringParticipant[] loadParticipants(RefactoringStatus status,
+ SharableParticipants sharedParticipants) throws CoreException {
+ return null;
+ }
+}
\ No newline at end of file
Property changes on: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/RenameSeamContextVariableProcessor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java (rev 0)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -0,0 +1,520 @@
+package org.jboss.tools.seam.internal.core.refactoring;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Set;
+import java.util.StringTokenizer;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.jdt.internal.ui.text.FastJavaPartitionScanner;
+import org.eclipse.jdt.ui.text.IJavaPartitions;
+import org.eclipse.jface.text.BadLocationException;
+import org.eclipse.jface.text.Document;
+import org.eclipse.jface.text.rules.IToken;
+import org.eclipse.jface.text.rules.Token;
+import org.eclipse.ltk.core.refactoring.CompositeChange;
+import org.eclipse.ltk.core.refactoring.TextFileChange;
+import org.eclipse.ltk.core.refactoring.participants.RenameProcessor;
+import org.eclipse.text.edits.MultiTextEdit;
+import org.eclipse.text.edits.ReplaceEdit;
+import org.eclipse.text.edits.TextEdit;
+import org.eclipse.wst.sse.core.StructuredModelManager;
+import org.eclipse.wst.sse.core.internal.provisional.IModelManager;
+import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
+import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredDocumentRegion;
+import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegion;
+import org.eclipse.wst.sse.core.internal.provisional.text.ITextRegionList;
+import org.eclipse.wst.xml.core.internal.provisional.document.IDOMDocument;
+import org.eclipse.wst.xml.core.internal.provisional.document.IDOMModel;
+import org.eclipse.wst.xml.core.internal.provisional.document.IDOMNode;
+import org.eclipse.wst.xml.core.internal.regions.DOMRegionContext;
+import org.jboss.tools.common.el.core.model.ELInstance;
+import org.jboss.tools.common.el.core.model.ELInvocationExpression;
+import org.jboss.tools.common.el.core.model.ELModel;
+import org.jboss.tools.common.el.core.model.ELPropertyInvocation;
+import org.jboss.tools.common.el.core.parser.ELParser;
+import org.jboss.tools.common.el.core.parser.ELParserUtil;
+import org.jboss.tools.common.model.project.ext.ITextSourceReference;
+import org.jboss.tools.common.util.FileUtil;
+import org.jboss.tools.seam.core.BijectedAttributeType;
+import org.jboss.tools.seam.core.IBijectedAttribute;
+import org.jboss.tools.seam.core.ISeamComponent;
+import org.jboss.tools.seam.core.ISeamFactory;
+import org.jboss.tools.seam.core.ISeamJavaComponentDeclaration;
+import org.jboss.tools.seam.core.ISeamProject;
+import org.jboss.tools.seam.core.ISeamXmlComponentDeclaration;
+import org.jboss.tools.seam.core.SeamCorePlugin;
+import org.jboss.tools.seam.core.SeamProjectsSet;
+import org.jboss.tools.seam.internal.core.SeamComponentDeclaration;
+import org.jboss.tools.seam.internal.core.scanner.java.SeamAnnotations;
+import org.jboss.tools.seam.internal.core.validation.SeamContextValidationHelper;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+public abstract class SeamRenameProcessor extends RenameProcessor {
+ protected static final String JAVA_EXT = "java"; //$NON-NLS-1$
+ protected static final String XML_EXT = "xml"; //$NON-NLS-1$
+ protected static final String XHTML_EXT = "xhtml"; //$NON-NLS-1$
+ protected static final String JSP_EXT = "jsp"; //$NON-NLS-1$
+ protected static final String PROPERTIES_EXT = "properties"; //$NON-NLS-1$
+
+ protected static final String SEAM_PROPERTIES_FILE = "seam.properties"; //$NON-NLS-1$
+
+ private SeamContextValidationHelper coreHelper = new SeamContextValidationHelper();
+
+ protected CompositeChange rootChange;
+ protected TextFileChange lastChange;
+ protected IFile declarationFile=null;
+ protected SeamProjectsSet projectsSet;
+
+ private String newName;
+ private String oldName;
+
+ public void setNewName(String newName){
+ this.newName = newName;
+ }
+
+ protected String getNewName(){
+ return newName;
+ }
+
+ protected void setOldName(String oldName){
+ this.oldName = oldName;
+ }
+
+ public String getOldName(){
+ return oldName;
+ }
+
+ // lets collect all changes for the same files in one MultiTextEdit
+ protected TextFileChange getChange(IFile file){
+ if(lastChange != null && lastChange.getFile().equals(file))
+ return lastChange;
+
+ for(int i=0; i < rootChange.getChildren().length; i++){
+ TextFileChange change = (TextFileChange)rootChange.getChildren()[i];
+ if(change.getFile().equals(file)){
+ lastChange = change;
+ return lastChange;
+ }
+ }
+ lastChange = new TextFileChange(file.getName(), file);
+ MultiTextEdit root = new MultiTextEdit();
+ lastChange.setEdit(root);
+ rootChange.add(lastChange);
+
+ return lastChange;
+ }
+
+ ArrayList<IPath> files = new ArrayList<IPath>();
+
+ protected void findDeclarations(ISeamComponent component) throws CoreException{
+ files.clear();
+ findDeclarations(component, true);
+
+ if(declarationFile == null)
+ return;
+
+ projectsSet = new SeamProjectsSet(declarationFile.getProject());
+
+ IProject[] projects = projectsSet.getAllProjects();
+ for (IProject project : projects) {
+ ISeamProject seamProject = SeamCorePlugin.getSeamProject(project, true);
+ if(seamProject != null){
+ ISeamComponent comp = seamProject.getComponent(getOldName());
+ if(comp != null)
+ findDeclarations(comp, false);
+ }
+ }
+ }
+
+ protected void findAnnotations(){
+ if(declarationFile == null)
+ return;
+
+ ISeamProject seamProject = SeamCorePlugin.getSeamProject(declarationFile.getProject(), true);
+ files.clear();
+ findAnnotations(seamProject, true);
+
+ IProject[] projects = projectsSet.getAllProjects();
+ for (IProject project : projects) {
+ ISeamProject sProject = SeamCorePlugin.getSeamProject(project, true);
+ if(sProject != null){
+ findAnnotations(sProject, false);
+ }
+ }
+
+ }
+
+ private void findAnnotations(ISeamProject seamProject, boolean force){
+ // find @In annotations
+ Set<IBijectedAttribute> inSet = seamProject.getBijectedAttributesByName(getOldName(), BijectedAttributeType.IN);
+
+ for(IBijectedAttribute inAtt : inSet){
+ ITextSourceReference location = inAtt.getLocationFor(SeamAnnotations.IN_ANNOTATION_TYPE);
+ if(location != null){
+ if(!files.contains(inAtt.getResource().getFullPath())){
+ files.add(inAtt.getResource().getFullPath());
+ changeAnnotation(location, (IFile)inAtt.getResource());
+ }else if(force)
+ changeAnnotation(location, (IFile)inAtt.getResource());
+ }
+ }
+
+ // find @Factory annotations
+ Set<ISeamFactory> factorySet = seamProject.getFactoriesByName(getOldName());
+
+ for(ISeamFactory factory : factorySet){
+ IFile file = (IFile)factory.getResource();
+ if(file.getFileExtension().equalsIgnoreCase(JAVA_EXT)){
+ ITextSourceReference location = factory.getLocationFor(SeamAnnotations.FACTORY_ANNOTATION_TYPE);
+ if(location != null){
+ if(!files.contains(file.getFullPath())){
+ files.add(file.getFullPath());
+ changeAnnotation(location, file);
+ }else if(force)
+ changeAnnotation(location, file);
+ }
+ }else{
+ ITextSourceReference location = factory.getLocationFor(ISeamXmlComponentDeclaration.NAME);
+ if(location != null){
+ if(!files.contains(file.getFullPath())){
+ files.add(file.getFullPath());
+ changeXMLNode(location, file);
+ }else if(force)
+ changeXMLNode(location, file);
+ }
+ }
+ }
+ }
+
+ private boolean isBadLocation(ITextSourceReference location){
+ return location.getStartPosition() == 0 && location.getLength() == 0;
+ }
+
+ private void changeXMLNode(ITextSourceReference location, IFile file){
+ if(isBadLocation(location))
+ return;
+
+ String content = null;
+ try {
+ content = FileUtil.readStream(file.getContents());
+ } catch (CoreException e) {
+ SeamCorePlugin.getPluginLog().logError(e);
+ return;
+ }
+
+ TextFileChange change = getChange(file);
+
+ String text = content.substring(location.getStartPosition(), location.getStartPosition()+location.getLength());
+ if(text.startsWith("<")){ //$NON-NLS-1$
+ int position = text.lastIndexOf("/>"); //$NON-NLS-1$
+ if(position < 0){
+ position = text.lastIndexOf(">"); //$NON-NLS-1$
+ }
+
+ TextEdit edit = new ReplaceEdit(location.getStartPosition()+position, 0, " name=\""+getNewName()+"\""); //$NON-NLS-1$ //$NON-NLS-2$
+ change.addEdit(edit);
+ }else{
+ TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), getNewName());
+ change.addEdit(edit);
+ }
+ }
+
+ private void changeAnnotation(ITextSourceReference location, IFile file){
+ if(isBadLocation(location))
+ return;
+
+ String content = null;
+ try {
+ content = FileUtil.readStream(file.getContents());
+ } catch (CoreException e) {
+ SeamCorePlugin.getPluginLog().logError(e);
+ return;
+ }
+
+ TextFileChange change = getChange(file);
+
+ String text = content.substring(location.getStartPosition(), location.getStartPosition()+location.getLength());
+ int openBracket = text.indexOf("("); //$NON-NLS-1$
+ if(openBracket > 0){
+ int closeBracket = text.indexOf(")", openBracket); //$NON-NLS-1$
+ int openQuote = text.indexOf("\"", openBracket); //$NON-NLS-1$
+ int equals = text.indexOf("=", openBracket); //$NON-NLS-1$
+ int value = text.indexOf("value", openBracket); //$NON-NLS-1$
+
+ if(closeBracket == openBracket+1){ // empty brackets
+ String newText = "\""+getNewName()+"\""; //$NON-NLS-1$ //$NON-NLS-2$
+ TextEdit edit = new ReplaceEdit(location.getStartPosition()+openBracket+1, 0, newText);
+ change.addEdit(edit);
+ }else if(value > 0){ // construction value="name" found so change name
+ String newText = text.replace(getOldName(), getNewName());
+ TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), newText);
+ change.addEdit(edit);
+ }else if(equals > 0){ // other parameters are found
+ String newText = "value=\""+getNewName()+"\","; //$NON-NLS-1$ //$NON-NLS-2$
+ TextEdit edit = new ReplaceEdit(location.getStartPosition()+openBracket+1, 0, newText);
+ change.addEdit(edit);
+ }else{ // other cases
+ String newText = text.replace(getOldName(), getNewName());
+ TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), newText);
+ change.addEdit(edit);
+ }
+ }else{
+ String newText = "(\""+getNewName()+"\")"; //$NON-NLS-1$ //$NON-NLS-2$
+ TextEdit edit = new ReplaceEdit(location.getStartPosition()+location.getLength(), 0, newText);
+ change.addEdit(edit);
+ }
+ }
+
+
+ private void findDeclarations(ISeamComponent component, boolean force) throws CoreException{
+ if(component.getJavaDeclaration() != null){
+ if(!files.contains(component.getJavaDeclaration().getResource().getFullPath())){
+ files.add(component.getJavaDeclaration().getResource().getFullPath());
+ renameJavaDeclaration(component.getJavaDeclaration());
+ }else if(force)
+ renameJavaDeclaration(component.getJavaDeclaration());
+ }
+
+ Set<ISeamXmlComponentDeclaration> xmlDecls = component.getXmlDeclarations();
+
+ for(ISeamXmlComponentDeclaration xmlDecl : xmlDecls){
+ if(!files.contains(xmlDecl.getResource().getFullPath())){
+ files.add(xmlDecl.getResource().getFullPath());
+ renameXMLDeclaration(xmlDecl);
+ }else if(force)
+ renameXMLDeclaration(xmlDecl);
+ }
+ }
+
+ private void renameJavaDeclaration(ISeamJavaComponentDeclaration javaDecl) throws CoreException{
+ IFile file = (IFile)javaDecl.getResource();
+ if(file != null && !coreHelper.isJar(javaDecl)){
+ ITextSourceReference location = ((SeamComponentDeclaration)javaDecl).getLocationFor(ISeamXmlComponentDeclaration.NAME);
+ if(location != null && !isBadLocation(location)){
+ TextFileChange change = getChange(file);
+ TextEdit edit = new ReplaceEdit(location.getStartPosition(), location.getLength(), "\""+getNewName()+"\""); //$NON-NLS-1$ //$NON-NLS-2$
+ change.addEdit(edit);
+ }
+ }
+ declarationFile = file;
+ }
+
+ private void renameXMLDeclaration(ISeamXmlComponentDeclaration xmlDecl){
+ IFile file = (IFile)xmlDecl.getResource();
+ if(file != null && !coreHelper.isJar(xmlDecl)){
+ ITextSourceReference location = ((SeamComponentDeclaration)xmlDecl).getLocationFor(ISeamXmlComponentDeclaration.NAME);
+ if(location != null && !isBadLocation(location))
+ changeXMLNode(location, file);
+ }
+ if(declarationFile == null)
+ declarationFile = file;
+ }
+
+
+ // we need to find references in .java .xml .xhtml .jsp .properties files
+ protected void findELReferences(){
+ if(declarationFile == null)
+ return;
+
+ IProject[] projects = projectsSet.getAllProjects();
+ for (IProject project : projects) {
+ scan(project);
+ }
+ }
+
+ private void scan(IContainer container){
+ try{
+ for(IResource resource : container.members()){
+ if(resource instanceof IFolder)
+ scan((IFolder) resource);
+ else if(resource instanceof IFile)
+ scan((IFile) resource);
+ }
+ }catch(CoreException ex){
+ SeamCorePlugin.getDefault().logError(ex);
+ }
+ }
+
+ private void scan(IFile file){
+ String ext = file.getFileExtension();
+ String content = null;
+ try {
+ content = FileUtil.readStream(file.getContents());
+ } catch (CoreException e) {
+ SeamCorePlugin.getPluginLog().logError(e);
+ return;
+ }
+ if(JAVA_EXT.equalsIgnoreCase(ext)){
+ scanJava(file, content);
+ } else if(XML_EXT.equalsIgnoreCase(ext) || XHTML_EXT.equalsIgnoreCase(ext) || JSP_EXT.equalsIgnoreCase(ext))
+ scanDOM(file, content);
+ else if(PROPERTIES_EXT.equalsIgnoreCase(ext))
+ scanProperties(file, content);
+ }
+
+ private void scanJava(IFile file, String content){
+ try {
+ FastJavaPartitionScanner scaner = new FastJavaPartitionScanner();
+ Document document = new Document(content);
+ scaner.setRange(document, 0, document.getLength());
+ IToken token = scaner.nextToken();
+ while(token!=null && token!=Token.EOF) {
+ if(IJavaPartitions.JAVA_STRING.equals(token.getData())) {
+ int length = scaner.getTokenLength();
+ int offset = scaner.getTokenOffset();
+ String value = document.get(offset, length);
+ if(value.indexOf('{')>-1) {
+ scanString(file, value, offset);
+ }
+ }
+ token = scaner.nextToken();
+ }
+ } catch (BadLocationException e) {
+ SeamCorePlugin.getDefault().logError(e);
+ }
+ }
+
+ private void scanDOM(IFile file, String content){
+ IModelManager manager = StructuredModelManager.getModelManager();
+ if(manager == null) {
+ return;
+ }
+ IStructuredModel model = null;
+ try {
+ model = manager.getModelForRead(file);
+ if (model instanceof IDOMModel) {
+ IDOMModel domModel = (IDOMModel) model;
+ IDOMDocument document = domModel.getDocument();
+ scanChildNodes(file, document);
+ }
+ } catch (CoreException e) {
+ SeamCorePlugin.getDefault().logError(e);
+ } catch (IOException e) {
+ SeamCorePlugin.getDefault().logError(e);
+ } finally {
+ if (model != null) {
+ model.releaseFromRead();
+ }
+ }
+ }
+
+ private void scanChildNodes(IFile file, Node parent) {
+ NodeList children = parent.getChildNodes();
+ for(int i=0; i<children.getLength(); i++) {
+ Node curentValidatedNode = children.item(i);
+ if(Node.ELEMENT_NODE == curentValidatedNode.getNodeType()) {
+ scanNodeContent(file, ((IDOMNode)curentValidatedNode).getFirstStructuredDocumentRegion(), DOMRegionContext.XML_TAG_ATTRIBUTE_VALUE);
+ } else if(Node.TEXT_NODE == curentValidatedNode.getNodeType()) {
+ scanNodeContent(file, ((IDOMNode)curentValidatedNode).getFirstStructuredDocumentRegion(), DOMRegionContext.XML_CONTENT);
+ }
+ scanChildNodes(file, curentValidatedNode);
+ }
+ }
+
+ private void scanNodeContent(IFile file, IStructuredDocumentRegion node, String regionType) {
+ ITextRegionList regions = node.getRegions();
+ for(int i=0; i<regions.size(); i++) {
+ ITextRegion region = regions.get(i);
+ if(region.getType() == regionType) {
+ String text = node.getFullText(region);
+ if(text.indexOf("{")>-1) { //$NON-NLS-1$
+ int offset = node.getStartOffset() + region.getStart();
+ scanString(file, text, offset);
+ }
+ }
+ }
+ }
+
+ // looking for component references in EL
+ private void scanString(IFile file, String string, int offset) {
+ int startEl = string.indexOf("#{"); //$NON-NLS-1$
+ if(startEl>-1) {
+ ELParser parser = ELParserUtil.getJbossFactory().createParser();
+ ELModel model = parser.parse(string);
+ for (ELInstance instance : model.getInstances()) {
+ for(ELInvocationExpression ie : instance.getExpression().getInvocations()){
+ ELPropertyInvocation pi = findComponentReference(ie);
+ if(pi != null){
+ TextFileChange change = getChange(file);
+ TextEdit edit = new ReplaceEdit(offset+pi.getStartPosition(), pi.getName().getStart()+pi.getName().getLength()-pi.getStartPosition(), newName);
+ change.addEdit(edit);
+ }
+ }
+ }
+ }
+ }
+
+ private ELPropertyInvocation findComponentReference(ELInvocationExpression invocationExpression){
+ ELInvocationExpression invExp = invocationExpression;
+ while(invExp != null){
+ if(invExp instanceof ELPropertyInvocation){
+ if(((ELPropertyInvocation)invExp).getQualifiedName() != null && ((ELPropertyInvocation)invExp).getQualifiedName().equals(getOldName()))
+ return (ELPropertyInvocation)invExp;
+ else
+ invExp = invExp.getLeft();
+
+ }else{
+ invExp = invExp.getLeft();
+ }
+ }
+ return null;
+ }
+
+ private void scanProperties(IFile file, String content){
+ scanString(file, content, 0);
+
+ if(!file.getName().equals(SEAM_PROPERTIES_FILE))
+ return;
+
+ StringTokenizer tokenizer = new StringTokenizer(content, "#= \t\r\n\f", true); //$NON-NLS-1$
+
+ String lastToken = "\n"; //$NON-NLS-1$
+ int offset = 0;
+ boolean comment = false;
+ boolean key = true;
+
+ while(tokenizer.hasMoreTokens()){
+ String token = tokenizer.nextToken("#= \t\r\n\f"); //$NON-NLS-1$
+ if(token.equals("\r")) //$NON-NLS-1$
+ token = "\n"; //$NON-NLS-1$
+
+ if(token.equals("#") && lastToken.equals("\n")) //$NON-NLS-1$ //$NON-NLS-2$
+ comment = true;
+ else if(token.equals("\n") && comment) //$NON-NLS-1$
+ comment = false;
+
+ if(!comment){
+ if(!token.equals("\n") && lastToken.equals("\n")) //$NON-NLS-1$ //$NON-NLS-2$
+ key = true;
+ else if(key && (token.equals("=") || token.equals(" "))) //$NON-NLS-1$ //$NON-NLS-2$
+ key = false;
+
+ if(key && token.startsWith(getOldName())){
+ String changeText = token.replaceFirst(getOldName(), getNewName());
+ TextFileChange change = getChange(file);
+ TextEdit edit = new ReplaceEdit(offset, token.length(), changeText);
+ change.addEdit(edit);
+ }
+ }
+
+ lastToken = token;
+ offset += token.length();
+ }
+ }
+
+ protected void renameComponent(ISeamComponent component)throws CoreException{
+ findDeclarations(component);
+
+ findAnnotations();
+
+ findELReferences();
+ }
+}
Property changes on: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamRenameProcessor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java 2009-06-04 18:19:02 UTC (rev 15715)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/refactoring/SeamRefactorContributionFactory.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -68,9 +68,11 @@
import org.jboss.tools.seam.core.SeamCorePlugin;
import org.jboss.tools.seam.internal.core.refactoring.RenameComponentProcessor;
import org.jboss.tools.seam.internal.core.refactoring.RenameComponentRefactoring;
+import org.jboss.tools.seam.internal.core.refactoring.RenameSeamContextVariableProcessor;
import org.jboss.tools.seam.ui.SeamGuiPlugin;
import org.jboss.tools.seam.ui.SeamUIMessages;
import org.jboss.tools.seam.ui.wizard.RenameComponentWizard;
+import org.jboss.tools.seam.ui.wizard.RenameSeamContextVariableWizard;
/**
* @author Daniel Azarov
@@ -83,8 +85,8 @@
private static final String JSP_EXT = "jsp"; //$NON-NLS-1$
private static final String PROPERTIES_EXT = "properties"; //$NON-NLS-1$
- private String selectedText;
- private IFile editorFile;
+ static private String selectedText;
+ static private IFile editorFile;
private String fileContent;
private IEditorPart editor;
private Shell shell;
@@ -101,6 +103,8 @@
public void createContributionItems(IServiceLocator serviceLocator,
IContributionRoot additions) {
+ //System.out.println("createContributionItems");
+
if(serviceLocator.hasService(IWorkbenchLocationService.class)){
IWorkbenchLocationService service = (IWorkbenchLocationService)serviceLocator.getService(IWorkbenchLocationService.class);
editor = service.getWorkbenchWindow().getActivePage().getActiveEditor();
@@ -120,7 +124,6 @@
editorFile = input.getFile();
-
fileContent = null;
try {
fileContent = FileUtil.readStream(editorFile.getContents());
@@ -314,6 +317,21 @@
}
}
+ public static void invokeRenameSeamContextVariableWizard(String oldName, Shell activeShell) {
+ saveAndBuild();
+
+ RenameSeamContextVariableProcessor processor = new RenameSeamContextVariableProcessor(editorFile, selectedText);
+ RenameComponentRefactoring refactoring = new RenameComponentRefactoring(processor);
+ RenameSeamContextVariableWizard wizard = new RenameSeamContextVariableWizard(refactoring, editorFile);
+ RefactoringWizardOpenOperation op = new RefactoringWizardOpenOperation(wizard);
+ try {
+ String titleForFailedChecks = SeamUIMessages.SEAM_COMPONENT_RENAME_HANDLER_ERROR;
+ op.run(activeShell, titleForFailedChecks);
+ } catch (final InterruptedException irex) {
+ // operation was canceled
+ }
+ }
+
class RenameSeamComponentAction extends Action{
public RenameSeamComponentAction(){
super(SeamUIMessages.RENAME_SEAM_COMPONENT);
@@ -351,7 +369,9 @@
super(SeamUIMessages.RENAME_SEAM_CONTEXT_VARIABLE);
}
public void run(){
+ saveAndBuild();
+ invokeRenameSeamContextVariableWizard(selectedText, shell);
}
}
}
Modified: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameComponentWizard.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameComponentWizard.java 2009-06-04 18:19:02 UTC (rev 15715)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameComponentWizard.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -122,7 +122,7 @@
}
private void initializeRefactoring() {
- processor.setNewComponentName(editor.getValueAsString());
+ processor.setNewName(editor.getValueAsString());
}
}
Added: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameSeamContextVariableWizard.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameSeamContextVariableWizard.java (rev 0)
+++ trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameSeamContextVariableWizard.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -0,0 +1,130 @@
+ /*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.seam.ui.wizard;
+
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.util.Map;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.ltk.core.refactoring.Refactoring;
+import org.eclipse.ltk.core.refactoring.RefactoringStatus;
+import org.eclipse.ltk.ui.refactoring.RefactoringWizard;
+import org.eclipse.ltk.ui.refactoring.UserInputWizardPage;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.jboss.tools.seam.core.ISeamComponent;
+import org.jboss.tools.seam.core.ISeamProject;
+import org.jboss.tools.seam.core.SeamCorePlugin;
+import org.jboss.tools.seam.internal.core.refactoring.RenameComponentProcessor;
+import org.jboss.tools.seam.internal.core.refactoring.RenameSeamContextVariableProcessor;
+import org.jboss.tools.seam.internal.core.refactoring.SeamRenameProcessor;
+import org.jboss.tools.seam.ui.SeamUIMessages;
+import org.jboss.tools.seam.ui.internal.project.facet.IValidator;
+import org.jboss.tools.seam.ui.internal.project.facet.ValidatorFactory;
+import org.jboss.tools.seam.ui.widget.editor.CompositeEditor;
+import org.jboss.tools.seam.ui.widget.editor.IFieldEditor;
+import org.jboss.tools.seam.ui.widget.editor.IFieldEditorFactory;
+
+/**
+ * @author Alexey Kazakov
+ */
+public class RenameSeamContextVariableWizard extends RefactoringWizard {
+
+ //private ISeamComponent component;
+ private String componentName;
+ private IFieldEditor editor;
+ private ISeamProject seamProject;
+
+ public RenameSeamContextVariableWizard(Refactoring refactoring, IFile file) {
+ super(refactoring, WIZARD_BASED_USER_INTERFACE);
+ seamProject = SeamCorePlugin.getSeamProject(file.getProject(), true);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ltk.ui.refactoring.RefactoringWizard#addUserInputPages()
+ */
+ @Override
+ protected void addUserInputPages() {
+ setDefaultPageTitle(getRefactoring().getName());
+ RenameSeamContextVariableProcessor processor= (RenameSeamContextVariableProcessor) getRefactoring().getAdapter(RenameSeamContextVariableProcessor.class);
+ addPage(new RenameComponentWizardPage(processor));
+ }
+
+ class RenameComponentWizardPage extends UserInputWizardPage{
+ private SeamRenameProcessor processor;
+
+ public RenameComponentWizardPage(SeamRenameProcessor processor){
+ super("");
+ this.processor = processor;
+ }
+
+ public void createControl(Composite parent) {
+ Composite container = new Composite(parent, SWT.NULL);
+ container.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ GridLayout layout = new GridLayout();
+ container.setLayout(layout);
+ layout.numColumns = 2;
+
+ String defaultName = processor.getOldName();
+ editor = IFieldEditorFactory.INSTANCE.createTextEditor(componentName, SeamUIMessages.SEAM_WIZARD_FACTORY_SEAM_COMPONENT_NAME, defaultName);
+ editor.doFillIntoGrid(container);
+
+ ((CompositeEditor)editor).addPropertyChangeListener(new PropertyChangeListener(){
+ public void propertyChange(PropertyChangeEvent evt){
+ validatePage();
+ }
+ });
+ setControl(container);
+ setPageComplete(false);
+ }
+
+ protected final void validatePage() {
+ Map<String, IStatus> errors = ValidatorFactory.SEAM_COMPONENT_NAME_VALIDATOR.validate(editor.getValueAsString(), seamProject);
+ if(!errors.isEmpty()) {
+ setErrorMessage(NLS.bind(errors.get(IValidator.DEFAULT_ERROR).getMessage(),SeamUIMessages.SEAM_BASE_WIZARD_PAGE_SEAM_COMPONENTS));
+ setPageComplete(false);
+ return;
+ }
+ RefactoringStatus status= new RefactoringStatus();
+ setPageComplete(status);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ltk.ui.refactoring.UserInputWizardPage#performFinish()
+ */
+ protected boolean performFinish() {
+
+ initializeRefactoring();
+ return super.performFinish();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.ltk.ui.refactoring.UserInputWizardPage#getNextPage()
+ */
+ public IWizardPage getNextPage() {
+ initializeRefactoring();
+ return super.getNextPage();
+ }
+
+ private void initializeRefactoring() {
+ processor.setNewName(editor.getValueAsString());
+ }
+
+ }
+}
\ No newline at end of file
Property changes on: trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/RenameSeamContextVariableWizard.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/refactoring/SeamComponentRefactoringTest.java
===================================================================
--- trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/refactoring/SeamComponentRefactoringTest.java 2009-06-04 18:19:02 UTC (rev 15715)
+++ trunk/seam/tests/org.jboss.tools.seam.core.test/src/org/jboss/tools/seam/core/test/refactoring/SeamComponentRefactoringTest.java 2009-06-04 18:22:36 UTC (rev 15716)
@@ -138,7 +138,7 @@
// Rename Seam Component
RenameComponentProcessor processor = new RenameComponentProcessor(component);
- processor.setNewComponentName(newName);
+ processor.setNewName(newName);
CompositeChange rootChange = (CompositeChange)processor.createChange(new NullProgressMonitor());
for(int i = 0; i < rootChange.getChildren().length;i++){
15 years, 6 months
JBoss Tools SVN: r15715 - in trunk/smooks/docs/reference/en: images/config_page and 4 other directories.
by jbosstools-commits@lists.jboss.org
Author: chukhutsina
Date: 2009-06-04 14:19:02 -0400 (Thu, 04 Jun 2009)
New Revision: 15715
Modified:
trunk/smooks/docs/reference/en/images/config_page/config_page5.png
trunk/smooks/docs/reference/en/images/introduction/introduction2.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start10.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start11.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start12.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start3.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start6.png
trunk/smooks/docs/reference/en/images/quick_start/quick_start9.png
trunk/smooks/docs/reference/en/images/source_editor/source_editor1.png
trunk/smooks/docs/reference/en/images/source_editor/source_editor2.png
trunk/smooks/docs/reference/en/master.xml
trunk/smooks/docs/reference/en/modules/quick_start.xml
Log:
<html><head><meta name="qrichtext" content="1" /></head><body style="font-size:9pt;font-family:Sans Serif">
<p>https://jira.jboss.org/jira/browse/JBDS-755 -Quick Start Section was updated. Screens were updated according to the new Smooks Configuration Editor</p>
</body></html>
Modified: trunk/smooks/docs/reference/en/images/config_page/config_page5.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/introduction/introduction2.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/quick_start/quick_start10.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/quick_start/quick_start11.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/quick_start/quick_start12.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/quick_start/quick_start3.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/quick_start/quick_start6.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/quick_start/quick_start9.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/source_editor/source_editor1.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/images/source_editor/source_editor2.png
===================================================================
(Binary files differ)
Modified: trunk/smooks/docs/reference/en/master.xml
===================================================================
--- trunk/smooks/docs/reference/en/master.xml 2009-06-04 17:42:43 UTC (rev 15714)
+++ trunk/smooks/docs/reference/en/master.xml 2009-06-04 18:19:02 UTC (rev 15715)
@@ -51,7 +51,7 @@
<toc/>
&introduction;
&quickstart;
- &smooksformeditor_graphicaltab;
+ <!--&smooksformeditor_graphicaltab;-->
&smooksformeditor_configurationtab;
&smooksformeditor_sourcetab;
</book>
Modified: trunk/smooks/docs/reference/en/modules/quick_start.xml
===================================================================
--- trunk/smooks/docs/reference/en/modules/quick_start.xml 2009-06-04 17:42:43 UTC (rev 15714)
+++ trunk/smooks/docs/reference/en/modules/quick_start.xml 2009-06-04 18:19:02 UTC (rev 15715)
@@ -55,8 +55,8 @@
</imageobject>
</mediaobject>
</figure>
- <para>The second wizard page is a transform data type choose page.</para>
- <para> As the quick start introduces how to create/edit the Java-to-Java Smooks
+ <para>The second wizard page is a Smooks configuration file version choose page.Select appropriate one and click finish.</para>
+ <!--<para> As the quick start introduces how to create/edit the Java-to-Java Smooks
configuration file, let's select the<emphasis>
<property>Java-to-Java</property>
</emphasis> type as the source/target transform data type. </para>
@@ -103,13 +103,13 @@
Smooks Configuration file. It's possible to <link
linkend="graphicaleditor_datalink">select source/target data</link> afterwards
in the Smooks Graph editor.</para>
- </tip>
+ </tip>-->
</section>
<section id="quickstart_formeditor">
<title>Smooks Editor</title>
<para>When all the wizard steps are passed, a new Smooks Configuration file is created and
- the <property>Smooks Editor</property> will be opened automatically:</para>
+ the <property>Smooks Configuration Editor</property> will be opened automatically:</para>
<figure>
<title>Smooks Editor</title>
<mediaobject>
@@ -119,7 +119,7 @@
</mediaobject>
</figure>
- <para> This editor contains several parts: <table>
+ <!--<para> This editor contains several parts: <table>
<title>The Smooks Editor Parts</title>
<tgroup cols="2">
@@ -187,29 +187,14 @@
</tbody>
</tgroup>
</table>
- </para>
+ </para>-->
</section>
<section id="graphicaleditor_datalink">
- <title>Choosing the Source/Target Data</title>
+ <title>Choosing the transform data</title>
- <para>To choose the transform data you should make use of the data selection links:</para>
-
- <itemizedlist>
- <listitem>
- <para><emphasis>
- <property>Source Select</property>
- </emphasis> for selecting source data</para>
- </listitem>
-
- <listitem>
- <para><emphasis>
- <property>Target Select</property>
- </emphasis> for selecting target data</para>
- </listitem>
- </itemizedlist>
-
- <para>After clicking the link the <property>Data Type Selection wizard</property> is
+ <para>To choose the transform data you should click add button in the Input Data section.</para>
+ <para>After clicking the button the <property>Data Type Selection wizard</property> is
opened, and there are two data types on the list: Java and XML.</para>
<note>
<title>Note</title>
@@ -240,10 +225,10 @@
</mediaobject>
</figure>
- <para>When you select all the necessary java classes, click <emphasis>
+ <para> Let's select the Order class from the example project as the source JavaBean class and the ListOrder class as the target JavaBean class.When you selected the necessary java classes, click <emphasis>
<property>Finish</property>
- </emphasis> and the structure of the java class is displayed on the source/target
- data tree.</para>
+ </emphasis> and you should see all added java classes displayed in the Input Data Section
+ .</para>
<figure>
<title>Displaying the Structure of the Transformed Data</title>
<mediaobject>
@@ -257,8 +242,8 @@
<section id="quickstart_mapping">
<title>Mapping</title>
- <para> As you see, the source/target data tree displays the structure of the java class. </para>
- <para>How to map it?</para>
+
+ <para>How to map the java class just added?</para>
<para>First, you should know what to transform:</para>
@@ -300,49 +285,52 @@
</listitem>
</orderedlist>
- <para> Make sense?</para>
- <para> OK, let's select the <emphasis>
- <property>"customerName"</property>
- </emphasis> item of the <emphasis>
- <property>"header"</property>
- </emphasis> item on the source data tree and start to drag it. When the drag item
- crosses the Mapping graphical area, you will see a connection line. Drop the item onto
- the <emphasis>
- <property>"customerName"</property>
- </emphasis> of the <property>LineOrder</property> on the target data
- view.</para>
- <para> Now a dialog is opened asking you to connect the root node:</para>
-
+ <para> Make sense?
+You should right click Resource List , select Add Smooks Resource>Java Binding>Bindings
+ </para>
+ <para>First of all, you should bind Order to LineOrder. To do this one Bindings Item should be added to the Resource List.</para>
+ <figure>
+ <title>Mapping</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/quick_start/quick_start10.png" scale="90"/>
+ </imageobject>
+ </mediaobject>
+ </figure><para>Click on it and you should see Bindings Section to the right of Message Filtering Resources.Write <emphasis> <property>lineOrder</property></emphasis> in the Bean id field.</para>
+ <para>Select example.trgmodel.LineOrder in the Class field and example.srcmodel.Order in the Name field.Your >Smooks Configuration Editor should look like this: </para>
<figure>
- <title>Dialog Asking You to Connect to the Root Nodes</title>
+ <title>Mapping</title>
<mediaobject>
<imageobject>
- <imagedata fileref="images/quick_start/quick_start10.png" scale="90"/>
+ <imagedata fileref="images/quick_start/quick_start11.png" scale="90"/>
</imageobject>
</mediaobject>
</figure>
- <para> Please, click <emphasis>
- <property>Yes</property>
- </emphasis> to connect the root node. If you don't do that, this dialog is
- opened again when you connect other nodes.</para>
- <note>
+
+ <para>Now you should bind two values <emphasis> <property>"customerNumber"</property>
+ </emphasis> property of the <property>Order#header</property> to the <emphasis>
+ <property>"customerId"</property>
+ </emphasis> property of <property>LineOrder</property>.To do this right click your just created <emphasis>
+ <property>Bindings Item >Add Smooks Resource>Value</property></emphasis>
+ .</para>
+
+ <figure>
+ <title> Mapping Editor</title>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/quick_start/quick_start12.png" scale="90"/>
+ </imageobject>
+ </mediaobject>
+ </figure><note>
<title>Note:</title>
<para>Please, remember that the root nodes of the source data and target data *MUST* be
connected.</para>
<para>This rule is not only for Java-to-Java, but also is relevant for
XML-to-Java </para>
</note>
- <para> Now let's do the same operation with the <emphasis>
- <property>"customerNumber"</property>,</emphasis> that is what you
- should see:</para>
- <figure>
- <title>Correctly Mapping Editor</title>
- <mediaobject>
- <imageobject>
- <imagedata fileref="images/quick_start/quick_start11.png" scale="90"/>
- </imageobject>
- </mediaobject>
- </figure>
+ <para> Do the same operation with the
+ other properties in this and other classes.</para>
+<!--
<para>Next, you are going to bind the properties of the <property>OrderItem</property> to
the properties of the <property>LineItem</property>.</para>
<para>Select the <emphasis>
@@ -416,7 +404,7 @@
<imagedata fileref="images/quick_start/quick_start15.png" scale="90"/>
</imageobject>
</mediaobject>
- </figure>
+ </figure>-->
<para>Now, you should save the file and the <property>Smooks tools</property> generate the correct
configuration file content.</para>
<para>OK, let run the test class: <property>example.Main</property>. (Please, make sure that the Smooks engine
15 years, 6 months
JBoss Tools SVN: r15714 - trunk/jmx/docs/reference/en/modules.
by jbosstools-commits@lists.jboss.org
Author: abogachuk
Date: 2009-06-04 13:42:43 -0400 (Thu, 04 Jun 2009)
New Revision: 15714
Modified:
trunk/jmx/docs/reference/en/modules/introduction.xml
Log:
https://jira.jboss.org/jira/browse/JBDS-153 - Key features chapter created
Modified: trunk/jmx/docs/reference/en/modules/introduction.xml
===================================================================
--- trunk/jmx/docs/reference/en/modules/introduction.xml 2009-06-04 16:40:47 UTC (rev 15713)
+++ trunk/jmx/docs/reference/en/modules/introduction.xml 2009-06-04 17:42:43 UTC (rev 15714)
@@ -41,6 +41,56 @@
It was forked with permission. </para>
</section>
+ <section><title>Key Features of JMX Tools</title>
+ <para>For a start, we propose you to look through the table of main features of JMX Tools:</para>
+ <table>
+
+ <title>Key Functionality for JMX Tools</title>
+ <tgroup cols="3">
+
+ <colspec colnum="1" align="left" colwidth="2*"/>
+ <colspec colnum="2" colwidth="4*"/>
+ <colspec colnum="3" align="left" colwidth="2*"/>
+
+ <thead>
+ <row>
+ <entry>Feature</entry>
+ <entry>Benefit</entry>
+ <entry>Chapter</entry>
+ </row>
+ </thead>
+
+ <tbody>
+
+ <row>
+ <entry><para>MBean Explorer</para></entry>
+ <entry><para>MBean Explorer is a useful view with a text filter that displays domains, mbeans, attributes, and operations inside a connection.</para></entry>
+ <entry>
+ <link linkend="mbean_explorer">MBean Explorer</link>
+ </entry>
+ </row>
+
+ <row>
+ <entry><para>MBean Editor</para></entry>
+ <entry><para>MBean Editor is a multi-page editor to manage MBeans.</para></entry>
+ <entry>
+ <link linkend="mbean_editor">MBean Editor</link>
+ </entry>
+ </row>
+
+
+ </tbody>
+
+ </tgroup>
+ </table>
+
+
+
+
+ </section>
+
+
+
<section>
<title>Installation</title>
<para>Here, we are going to explain how to install the <property>JMX plugin</property> into
15 years, 6 months
JBoss Tools SVN: r15713 - trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components.
by jbosstools-commits@lists.jboss.org
Author: mareshkau
Date: 2009-06-04 12:40:47 -0400 (Thu, 04 Jun 2009)
New Revision: 15713
Modified:
trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml
Log:
https://jira.jboss.org/jira/browse/JBIDE-4419. path expression corrected
Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml 2009-06-04 16:26:36 UTC (rev 15712)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml 2009-06-04 16:40:47 UTC (rev 15713)
@@ -35,11 +35,11 @@
<DIV CLASS="rich-picklist-controls">
<DIV CLASS="rich-picklist-control-button-class">
<DIV
- STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ STYLE="/.*/resources/pickList/button.gif\);/"
CLASS="rich-list-picklist-button">
<DIV CLASS="rich-list-picklist-button-content">
<IMG WIDTH="15" HEIGHT="15"
- SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_copy_all.gif" />
+ SRC="/.*/pickList/arrow_copy_all.gif/" />
Copy all
</DIV>
@@ -47,11 +47,11 @@
</DIV>
<DIV CLASS="rich-picklist-control-button-class">
<DIV
- STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ STYLE="/.*/resources/pickList/button.gif\);/"
CLASS="rich-list-picklist-button">
<DIV CLASS="rich-list-picklist-button-content">
<IMG WIDTH="15" HEIGHT="15"
- SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_copy.gif" />
+ SRC="/.*/resources/pickList/arrow_copy.gif/" />
Copy
</DIV>
@@ -59,11 +59,11 @@
</DIV>
<DIV CLASS="rich-picklist-control-button-class">
<DIV
- STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ STYLE="/.*/resources/pickList/button.gif\);/"
CLASS="rich-list-picklist-button">
<DIV CLASS="rich-list-picklist-button-content">
<IMG WIDTH="15" HEIGHT="15"
- SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_remove.gif" />
+ SRC="/.*/resources/pickList/arrow_remove.gif/" />
Remove
</DIV>
@@ -71,11 +71,11 @@
</DIV>
<DIV CLASS="rich-picklist-control-button-class">
<DIV
- STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ STYLE="/.*/resources/pickList/button.gif\);/"
CLASS="rich-list-picklist-button">
<DIV CLASS="rich-list-picklist-button-content">
<IMG WIDTH="15" HEIGHT="15"
- SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_remove_all.gif" />
+ SRC="/.*/resources/pickList/arrow_remove_all.gif/" />
Remove All
</DIV>
15 years, 6 months
JBoss Tools SVN: r15712 - in trunk/jst/plugins/org.jboss.tools.jst.web.kb: taglibs and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: akazakov
Date: 2009-06-04 12:26:36 -0400 (Thu, 04 Jun 2009)
New Revision: 15712
Added:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/FaceletsHtml.xml
Modified:
trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd
Log:
https://jira.jboss.org/jira/browse/JBIDE-2808
Modified: trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd 2009-06-04 16:19:29 UTC (rev 15711)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/resources/kbCustomTagLibSchema-1.0.dtd 2009-06-04 16:26:36 UTC (rev 15712)
@@ -1,7 +1,5 @@
<!--
- <!DOCTYPE kb-custom-tag-lib PUBLIC
- "-//Red Hat, Inc//DTD Knowledge Base 2.0//EN"
- "http://www.redhat.com/dtds/kbCustomTagLibSchema-1.0.dtd">
+<!DOCTYPE tag-lib PUBLIC "-//Red Hat, Inc//DTD Knowledge Base 2.0//EN" "http://anonsvn.jboss.org/repos/jbosstools/trunk/jst/plugins/org.jboss.too...">
-->
<!ENTITY % Boolean "(true|false)">
@@ -26,7 +24,7 @@
extended - "true" - Component is relevant only if this component exists in other tag-libs (tld, faclets, ...). Set to "true" by default.
description
-->
-<!ELEMENT component (attribute*)>
+<!ELEMENT component (component*, attribute*)>
<!ATTLIST component name CDATA #REQUIRED>
<!ATTLIST component closeTag %Boolean; #IMPLIED>
Added: trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/FaceletsHtml.xml
===================================================================
--- trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/FaceletsHtml.xml (rev 0)
+++ trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/FaceletsHtml.xml 2009-06-04 16:26:36 UTC (rev 15712)
@@ -0,0 +1,5499 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE tag-lib PUBLIC "-//Red Hat, Inc//DTD Knowledge Base 2.0//EN" "http://anonsvn.jboss.org/repos/jbosstools/trunk/jst/plugins/org.jboss.too...">
+<tag-lib defaultPrefix="faceletsHtml">
+ <component name="ACRONYM">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="ABBR">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="CITE">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="VAR">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="KBD">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="SAMP">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="I" />
+ <component name="SAMP" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="CODE">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="DFN">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="STRONG">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="EM">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TT">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="I">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="B">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="U">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="S">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="STRIKE">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="BIG">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="SMALL">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="SUP">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="SUB">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="SPAN">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SUB" />
+ <component name="SPAN" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="BDO">
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="style" />
+ <attribute name="class" />
+ <attribute name="lang" />
+ <attribute name="title" />
+ <attribute name="id" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="BASEFONT">
+ <attribute name="color" />
+ <attribute name="size" required="true" />
+ <attribute name="face" />
+ <attribute name="id" />
+ <component name="BASEFONT" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="FONT">
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="color" />
+ <attribute name="face" />
+ <attribute name="title" />
+ <attribute name="size" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="BR">
+ <attribute default="none" name="clear" type="enumeration"
+ values="left,all,right,none" />
+ <attribute name="style" />
+ <attribute name="class" />
+ <attribute name="title" />
+ <attribute name="id" />
+ <component name="BR" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="BODY">
+ <attribute name="bgcolor" />
+ <attribute name="vlink" />
+ <attribute name="alink" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="link" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onunload" />
+ <attribute name="text" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="background">
+ <proposal type="file">
+ <param name="extensions" value="%image%" />
+ </proposal>
+ </attribute>
+ <attribute name="style" />
+ <attribute name="onload" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="BODY" />
+ <component name="ACRONYM" />
+ <component name="DEL" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="INS" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="ADDRESS">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="P" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <component name="ADDRESS" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="DIV">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="CENTER">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="A">
+ <attribute name="shape">
+ <proposal type="enumeration">
+ <param value="rect" />
+ <param value="circle" />
+ <param value="poly" />
+ <param value="default" />
+ </proposal>
+ </attribute>
+ <attribute name="accesskey" />
+ <attribute name="rel" />
+ <attribute name="type" />
+ <attribute name="onmousemove" />
+ <attribute name="charset" />
+ <attribute name="onmouseout" />
+ <attribute name="onblur" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="hreflang" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="coords" />
+ <attribute name="href" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onfocus" />
+ <attribute name="rev" />
+ <attribute name="tabindex" />
+ <attribute name="target" />
+ <attribute name="name" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="MAP">
+ <attribute name="name" required="true" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="PRE" />
+ <component name="MAP" />
+ <component name="P" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="NOSCRIPT" />
+ <component name="H5" />
+ <component name="H6" />
+ <component name="AREA" />
+ <component name="CENTER" />
+ <component name="DL" />
+ <component name="ISINDEX" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="UL" />
+ <component name="OL" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="H1" />
+ <component name="NOFRAMES" />
+ <component name="MENU" />
+ <component name="H2" />
+ <component name="ADDRESS" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="AREA">
+ <attribute name="shape">
+ <proposal type="enumeration">
+ <param value="rect" />
+ <param value="circle" />
+ <param value="poly" />
+ <param value="default" />
+ </proposal>
+ </attribute>
+ <attribute name="accesskey" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onblur" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="nohref">
+ <proposal type="enumeration">
+ <param value="nohref" />
+ </proposal>
+ </attribute>
+ <attribute name="href" />
+ <attribute name="coords" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onfocus" />
+ <attribute name="tabindex" />
+ <attribute name="alt" required="true" />
+ <attribute name="target" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="AREA" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="LINK">
+ <attribute name="rel" />
+ <attribute name="type" />
+ <attribute name="onmousemove" />
+ <attribute name="charset" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="media" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="hreflang" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="href" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="rev" />
+ <attribute name="target" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="LINK" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="IMG">
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="usemap" />
+ <attribute name="src" required="true">
+ <proposal type="file">
+ <param name="extensions" value="%image%" />
+ </proposal>
+ </attribute>
+ <attribute name="ondblclick" />
+ <attribute name="vspace" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="hspace" />
+ <attribute name="height" />
+ <attribute name="longdesc" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="width" />
+ <attribute name="border" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="left" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="ismap">
+ <proposal type="enumeration">
+ <param value="ismap" />
+ </proposal>
+ </attribute>
+ <!--attribute name="alt" required="true"/-->
+ <attribute name="alt" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="IMG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="OBJECT">
+ <attribute name="standby" />
+ <attribute name="type" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="usemap" />
+ <attribute name="ondblclick" />
+ <attribute name="vspace" />
+ <attribute name="onkeydown" />
+ <attribute name="archive" />
+ <attribute name="codetype" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="classid" />
+ <attribute name="hspace" />
+ <attribute name="codebase" />
+ <attribute name="height" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="width" />
+ <attribute name="border" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="left" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="declare">
+ <proposal type="enumeration">
+ <param value="declare" />
+ </proposal>
+ </attribute>
+ <attribute name="tabindex" />
+ <attribute name="data" />
+ <attribute name="name" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="PARAM" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="PARAM">
+ <attribute name="valuetype">
+ <proposal type="enumeration">
+ <param value="data" />
+ <param value="ref" />
+ <param value="object" />
+ </proposal>
+ </attribute>
+ <attribute name="name" required="true" />
+ <attribute name="type" />
+ <attribute name="value" />
+ <attribute name="id" />
+ <component name="PARAM" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="APPLET">
+ <attribute name="name" />
+ <attribute name="style" />
+ <attribute name="width" required="true" />
+ <attribute name="id" />
+ <attribute name="code" />
+ <attribute name="vspace" />
+ <attribute name="archive" />
+ <attribute name="class" />
+ <attribute name="object" />
+ <attribute name="codebase" />
+ <attribute name="alt" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="left" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="title" />
+ <attribute name="height" required="true" />
+ <attribute name="hspace" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="PARAM" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="HR">
+ <attribute name="noshade" type="enumeration" values="noshade" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="size" />
+ <attribute name="id" />
+ <attribute name="width" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <component name="HR" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="P">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="P" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="H1">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="H2">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="H3">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="H3" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="H4">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="H4" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="H5">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="H5" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="H6">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="PRE">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="width" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="Q">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="cite" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="BLOCKQUOTE">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="cite" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="INS">
+ <attribute name="datetime" />
+ <attribute name="cite" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="INS" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="DEL">
+ <attribute name="datetime" />
+ <attribute name="cite" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="DEL" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="DL">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="compact" type="enumeration" values="compact" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="DD" />
+ <component name="DT" />
+ <component name="DL" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="DT">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="DT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="DD">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="DD" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="OL">
+ <attribute name="type" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="start" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="compact" type="enumeration" values="compact" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="LI" />
+ <component name="OL" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="UL">
+ <attribute name="type">
+ <proposal type="enumeration">
+ <param value="disc" />
+ <param value="square" />
+ <param value="false" />
+ </proposal>
+ </attribute>
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="compact" type="enumeration" values="compact" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="UL" />
+ <component name="LI" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="DIR">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="compact" type="enumeration" values="compact" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="LI" />
+ <component name="DIR" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="MENU">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="compact" type="enumeration" values="compact" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="LI" />
+ <component name="MENU" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="LI">
+ <attribute name="type" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="value" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="LI" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="FORM">
+ <attribute default="get" name="method">
+ <proposal type="enumeration">
+ <param value="get" />
+ <param value="post" />
+ </proposal>
+ </attribute>
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onreset" />
+ <attribute default="application/x-www-form-urlencoded" name="enctype" />
+ <attribute name="onkeypress" />
+ <attribute name="onsubmit" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="accept-charset" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="action" required="true" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="target" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="LABEL">
+ <attribute name="accesskey" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onblur" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="for" />
+ <attribute name="style" />
+ <attribute name="onfocus" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="INPUT">
+ <attribute name="accesskey" />
+ <attribute name="accept" />
+ <attribute name="type">
+ <proposal type="enumeration">
+ <param value="text" />
+ <param value="password" />
+ <param value="checkbox" />
+ <param value="radio" />
+ <param value="submit" />
+ <param value="reset" />
+ <param value="file" />
+ <param value="hidden" />
+ <param value="image" />
+ <param value="button" />
+ </proposal>
+ </attribute>
+ <attribute name="onmousemove" />
+ <attribute name="disabled">
+ <proposal type="enumeration">
+ <param value="disabled" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseout" />
+ <attribute name="onblur" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="usemap" />
+ <attribute name="src">
+ <proposal type="file">
+ <param name="extensions" value="%image%" />
+ </proposal>
+ </attribute>
+ <attribute name="checked">
+ <proposal type="enumeration">
+ <param value="checked" />
+ </proposal>
+ </attribute>
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onselect" />
+ <attribute name="readonly">
+ <proposal type="enumeration">
+ <param value="readonly" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="size" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="value" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="left" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="maxlength" />
+ <attribute name="style" />
+ <attribute name="onchange" />
+ <attribute name="onfocus" />
+ <attribute name="tabindex" />
+ <attribute name="alt" />
+ <attribute name="name" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="INPUT" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="SELECT">
+ <attribute name="onmousemove" />
+ <attribute name="disabled">
+ <proposal type="enumeration">
+ <param value="disabled" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseout" />
+ <attribute name="onblur" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="size" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onchange" />
+ <attribute name="multiple">
+ <proposal type="enumeration">
+ <param value="multiple" />
+ </proposal>
+ </attribute>
+ <attribute name="onfocus" />
+ <attribute name="tabindex" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <attribute name="name" />
+ <component name="OPTGROUP" />
+ <component name="OPTION" />
+ <component name="SELECT" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="OPTGROUP">
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="disabled">
+ <proposal type="enumeration">
+ <param value="disabled" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="label" required="true" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="OPTGROUP" />
+ <component name="OPTION" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="OPTION">
+ <attribute name="onmousemove" />
+ <attribute name="disabled">
+ <proposal type="enumeration">
+ <param value="disabled" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="label" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="selected">
+ <proposal type="enumeration">
+ <param value="selected" />
+ </proposal>
+ </attribute>
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="value" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="OPTION" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TEXTAREA">
+ <attribute name="accesskey" />
+ <attribute name="onmousemove" />
+ <attribute name="disabled">
+ <proposal type="enumeration">
+ <param value="disabled" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseout" />
+ <attribute name="onblur" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onselect" />
+ <attribute name="rows" required="true" />
+ <attribute name="cols" required="true" />
+ <attribute name="readonly">
+ <proposal type="enumeration">
+ <param value="readonly" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onchange" />
+ <attribute name="onfocus" />
+ <attribute name="tabindex" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <attribute name="name" />
+ <component name="TEXTAREA" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="FIELDSET">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="LEGEND" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="LEGEND">
+ <attribute name="accesskey" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="bottom" />
+ <param value="left" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="LEGEND" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="BUTTON">
+ <attribute name="accesskey" />
+ <attribute name="type">
+ <proposal type="enumeration">
+ <param value="button" />
+ <param value="submit" />
+ <param value="reset" />
+ </proposal>
+ </attribute>
+ <attribute name="onmousemove" />
+ <attribute name="disabled">
+ <proposal type="enumeration">
+ <param value="disabled" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseout" />
+ <attribute name="onblur" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="value" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="onfocus" />
+ <attribute name="tabindex" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <attribute name="name" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TABLE">
+ <attribute name="bgcolor" />
+ <attribute name="cellspacing" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="datapagesize" />
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="summary" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="rules">
+ <proposal type="enumeration">
+ <param value="none" />
+ <param value="groups" />
+ <param value="rows" />
+ <param value="cols" />
+ <param value="all" />
+ </proposal>
+ </attribute>
+ <attribute name="frame">
+ <proposal type="enumeration">
+ <param value="void" />
+ <param value="above" />
+ <param value="below" />
+ <param value="hsides" />
+ <param value="lhs" />
+ <param value="rhs" />
+ <param value="vsides" />
+ <param value="box" />
+ <param value="border" />
+ </proposal>
+ </attribute>
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="width" />
+ <attribute name="border" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="cellpadding" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="CAPTION" />
+ <component name="TABLE" />
+ <component name="TBODY" />
+ <component name="THEAD" />
+ <component name="TFOOT" />
+ <component name="COLGROUP" />
+ <component name="TR" />
+ <component name="COL" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="CAPTION">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="bottom" />
+ <param value="left" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="FONT" />
+ <component name="MAP" />
+ <component name="BDO" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="INPUT" />
+ <component name="IFRAME" />
+ <component name="SAMP" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="U" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="VAR" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="APPLET" />
+ <component name="CITE" />
+ <component name="SMALL" />
+ <component name="STRIKE" />
+ <component name="CAPTION" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="CODE" />
+ <component name="IMG" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="ACRONYM" />
+ <component name="EM" />
+ <component name="TEXTAREA" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="THEAD">
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="THEAD" />
+ <component name="TR" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TFOOT">
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="TFOOT" />
+ <component name="TR" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TBODY">
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="TBODY" />
+ <component name="TR" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="COLGROUP">
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="width" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute default="1" name="span" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="COLGROUP" />
+ <component name="COL" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="COL">
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="width" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute default="1" name="span" />
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="COL" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TR">
+ <attribute name="bgcolor" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="TD" />
+ <component name="TR" />
+ <component name="TH" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TD">
+ <attribute name="background" />
+ <attribute name="bordercolor" />
+ <attribute name="bgcolor" />
+ <attribute name="scope" type="enumeration" values="row,col,rowgroup,colgroup" />
+ <attribute name="headers" />
+ <attribute default="1" name="colspan" />
+ <attribute name="axis" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="nowrap" type="enumeration" values="nowrap" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="height" />
+ <attribute name="abbr" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="width" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute default="1" name="rowspan" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="TD" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TH">
+ <attribute name="bgcolor" />
+ <attribute name="scope" type="enumeration" values="row,col,rowgroup,colgroup" />
+ <attribute name="headers" />
+ <attribute default="1" name="colspan" />
+ <attribute name="axis" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseout" />
+ <attribute name="valign">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="baseline" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeypress" />
+ <attribute name="onmouseover" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="nowrap" type="enumeration" values="nowrap" />
+ <attribute name="onmouseup" />
+ <attribute name="class" />
+ <attribute name="height" />
+ <attribute name="abbr" />
+ <attribute name="charoff" />
+ <attribute name="id" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="width" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="left" />
+ <param value="center" />
+ <param value="right" />
+ <param value="justify" />
+ <param value="char" />
+ </proposal>
+ </attribute>
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="char" />
+ <attribute default="1" name="rowspan" />
+ <attribute name="onclick" />
+ <attribute name="title" />
+ <attribute name="onmousedown" />
+ <attribute name="lang" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="TH" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="IFRAME">
+ <attribute name="src" />
+ <attribute name="style" />
+ <attribute name="name" />
+ <attribute name="width" />
+ <attribute name="id" />
+ <attribute name="marginheight" />
+ <attribute name="class" />
+ <attribute name="longdesc" />
+ <attribute default="auto" name="scrolling" type="enumeration"
+ values="yes,no,auto" />
+ <attribute name="align">
+ <proposal type="enumeration">
+ <param value="top" />
+ <param value="middle" />
+ <param value="bottom" />
+ <param value="left" />
+ <param value="right" />
+ </proposal>
+ </attribute>
+ <attribute default="1" name="frameborder" type="enumeration"
+ values="1,0" />
+ <attribute name="title" />
+ <attribute name="height" />
+ <attribute name="marginwidth" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="NOFRAMES">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="HEAD">
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="profile" />
+ <attribute name="lang" />
+ <component name="TITLE" />
+ <component name="HEAD" />
+ <component name="BASE" />
+ <component name="ISINDEX" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="TITLE">
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="lang" />
+ <component name="TITLE" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="ISINDEX">
+ <attribute name="prompt" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="style" />
+ <attribute name="class" />
+ <attribute name="lang" />
+ <attribute name="title" />
+ <attribute name="id" />
+ <component name="ISINDEX" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="BASE">
+ <attribute name="href" />
+ <attribute name="target" />
+ <component name="BASE" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component closeTag="true" name="META">
+ <attribute name="scheme" />
+ <attribute name="http-equiv" />
+ <attribute name="name" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="content" required="true" />
+ <attribute name="lang" />
+ <component name="META" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="STYLE">
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="type" required="true" />
+ <attribute name="media">
+ <proposal type="enumeration">
+ <param value="all" />
+ <param value="screen" />
+ <param value="print" />
+ <param value="projection" />
+ <param value="braille" />
+ <param value="speech" />
+ </proposal>
+ </attribute>
+ <attribute name="title" />
+ <attribute name="lang" />
+ <component name="STYLE" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="SCRIPT">
+ <attribute name="type" required="true" />
+ <attribute name="event" />
+ <attribute name="for" />
+ <attribute name="defer">
+ <proposal type="enumeration">
+ <param value="defer" />
+ </proposal>
+ </attribute>
+ <attribute name="src" />
+ <attribute name="language" />
+ <attribute name="charset" />
+ <component name="SCRIPT" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="NOSCRIPT">
+ <attribute name="onkeyup" />
+ <attribute name="style" />
+ <attribute name="id" />
+ <attribute name="lang" />
+ <attribute name="onmousedown" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="class" />
+ <attribute name="onkeypress" />
+ <attribute name="ondblclick" />
+ <attribute name="onkeydown" />
+ <attribute name="onmousemove" />
+ <attribute name="onmouseup" />
+ <attribute name="title" />
+ <attribute name="onmouseout" />
+ <attribute name="onclick" />
+ <attribute name="onmouseover" />
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="ACRONYM" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="TT" />
+ <component name="BR" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+ <component name="HTML">
+ <attribute default="%HTML.Version;" name="version" />
+ <attribute name="dir">
+ <proposal type="enumeration">
+ <param value="ltr" />
+ <param value="rtl" />
+ </proposal>
+ </attribute>
+ <attribute name="lang" />
+ <attribute name="xmlns">
+ <proposal type="taglib" />
+ </attribute>
+ <attribute name="xmlns:*">
+ <proposal type="taglib" />
+ </attribute>
+ <component name="MAP" />
+ <component name="PRE" />
+ <component name="BDO" />
+ <component name="INPUT" />
+ <component name="P" />
+ <component name="NOSCRIPT" />
+ <component name="I" />
+ <component name="BUTTON" />
+ <component name="HEAD" />
+ <component name="LABEL" />
+ <component name="U" />
+ <component name="H6" />
+ <component name="CENTER" />
+ <component name="BASEFONT" />
+ <component name="S" />
+ <component name="BLOCKQUOTE" />
+ <component name="HTML" />
+ <component name="H3" />
+ <component name="UL" />
+ <component name="B" />
+ <component name="SELECT" />
+ <component name="Q" />
+ <component name="STRIKE" />
+ <component name="SCRIPT" />
+ <component name="ABBR" />
+ <component name="BIG" />
+ <component name="H1" />
+ <component name="IMG" />
+ <component name="BODY" />
+ <component name="ACRONYM" />
+ <component name="DEL" />
+ <component name="NOFRAMES" />
+ <component name="TEXTAREA" />
+ <component name="H2" />
+ <component name="FONT" />
+ <component name="OBJECT" />
+ <component name="KBD" />
+ <component name="IFRAME" />
+ <component name="HR" />
+ <component name="H4" />
+ <component name="DIR" />
+ <component name="SAMP" />
+ <component name="INS" />
+ <component name="H5" />
+ <component name="SUP" />
+ <component name="A" />
+ <component name="DFN" />
+ <component name="ISINDEX" />
+ <component name="DL" />
+ <component name="VAR" />
+ <component name="FIELDSET" />
+ <component name="TABLE" />
+ <component name="BR" />
+ <component name="TT" />
+ <component name="APPLET" />
+ <component name="OL" />
+ <component name="SMALL" />
+ <component name="CITE" />
+ <component name="FORM" />
+ <component name="DIV" />
+ <component name="CODE" />
+ <component name="SPAN" />
+ <component name="SUB" />
+ <component name="EM" />
+ <component name="MENU" />
+ <component name="ADDRESS" />
+ <component name="STRONG" />
+ <attribute name="jsfc">
+ <proposal type="faceletsJsfCTags" />
+ </attribute>
+ </component>
+</tag-lib>
\ No newline at end of file
Property changes on: trunk/jst/plugins/org.jboss.tools.jst.web.kb/taglibs/FaceletsHtml.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
15 years, 6 months
JBoss Tools SVN: r15711 - trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components.
by jbosstools-commits@lists.jboss.org
Author: mareshkau
Date: 2009-06-04 12:19:29 -0400 (Thu, 04 Jun 2009)
New Revision: 15711
Modified:
trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml
Log:
https://jira.jboss.org/jira/browse/JBIDE-4419
Modified: trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml 2009-06-04 16:18:48 UTC (rev 15710)
+++ trunk/jsf/tests/org.jboss.tools.jsf.vpe.richfaces.test/resources/richFacesTest/WebContent/pages/components/pickList.xhtml.xml 2009-06-04 16:19:29 UTC (rev 15711)
@@ -1,93 +1,105 @@
<tests>
<test id="pickList">
<TABLE CLASS="rich-list-picklist" STYLE="">
- <TBODY>
- <TR>
- <TD>
- <DIV CLASS="rich-picklist-source-items" STYLE="width: 140px; height: 140px;">
- <TABLE WIDTH="100%" CELLSPACING="0" CELLPADDING="0"
- CLASS="rich-picklist-body">
- <TR>
- <TD STYLE="border: 0px none ; padding: 0px;">
- <DIV CLASS="rich-picklist-list">
- <DIV CLASS="rich-picklist-list-content" STYLE="width: 140px; height: 140px;">
- <TABLE CELLPADDING="0" CLASS="rich-picklist-internal-tab">
- <TBODY>
- <OPTION> Option 1</OPTION>
- <OPTION> Option 2</OPTION>
- <OPTION> Option 3</OPTION>
- </TBODY>
- </TABLE>
- </DIV>
- </DIV>
- </TD>
- </TR>
- </TABLE>
- </DIV>
- </TD>
- <TD STYLE="vertical-align: middle;">
- <DIV CLASS="rich-picklist-controls">
- <DIV CLASS="rich-picklist-control-button-class">
- <DIV
- STYLE="/background-image: url\(.*resources/pickList/button.gif\);/"
- CLASS="rich-list-picklist-button">
- <DIV CLASS="rich-list-picklist-button-content">
- <IMG WIDTH="15" HEIGHT="15"
- SRC="/.*resources/pickList/arrow_remove.gif/" />
- Remove
- </DIV>
+<TBODY>
+ <TR>
+ <TD>
+ <DIV CLASS="rich-picklist-source-items" STYLE="width: 140px; height: 140px;">
+ <TABLE WIDTH="100%" CELLSPACING="0" CELLPADDING="0"
+ CLASS="rich-picklist-body">
+ <TR>
+ <TD STYLE="border: 0px none ; padding: 0px;">
+ <DIV CLASS="rich-picklist-list">
+ <DIV CLASS="rich-picklist-list-content" STYLE="width: 140px; height: 140px;">
+ <TABLE CELLPADDING="0" CLASS="rich-picklist-internal-tab">
+ <TBODY>
+ <OPTION >
+ Option 1
+</OPTION>
+ <OPTION>
+ Option 2
+</OPTION>
+ <OPTION>
+ Option 3
+</OPTION>
+ </TBODY>
+ </TABLE>
</DIV>
</DIV>
- <DIV CLASS="rich-picklist-control-button-class">
- <DIV
- STYLE="/background-image: url\(.*resources/pickList/button.gif\);/"
- CLASS="rich-list-picklist-button">
- <DIV CLASS="rich-list-picklist-button-content">
- <IMG WIDTH="15" HEIGHT="15"
- SRC="/.*resources/pickList/arrow_copy_all.gif/" />
- Copy all
- </DIV>
- </DIV>
- </DIV>
- <DIV CLASS="rich-picklist-control-button-class">
- <DIV
- STYLE="/background-image: url\(.*resources/pickList/button.gif\);/"
- CLASS="rich-list-picklist-button">
- <DIV CLASS="rich-list-picklist-button-content">
- <IMG WIDTH="15" HEIGHT="15"
- SRC="/.*resources/pickList/arrow_copy.gif/" />
- Copy
- </DIV>
- </DIV>
- </DIV>
- <DIV CLASS="rich-picklist-control-button-class">
- <DIV
- STYLE="/background-image: url\(.*resources/pickList/button.gif\);/"
- CLASS="rich-list-picklist-button">
- <DIV CLASS="rich-list-picklist-button-content">
- <IMG WIDTH="15" HEIGHT="15"
- SRC="/.*resources/pickList/arrow_remove_all.gif/" />
- Remove All
- </DIV>
- </DIV>
- </DIV>
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+ </TD>
+ <TD STYLE="vertical-align: middle;">
+ <DIV CLASS="rich-picklist-controls">
+ <DIV CLASS="rich-picklist-control-button-class">
+ <DIV
+ STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ CLASS="rich-list-picklist-button">
+ <DIV CLASS="rich-list-picklist-button-content">
+ <IMG WIDTH="15" HEIGHT="15"
+ SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_copy_all.gif" />
+
+ Copy all
</DIV>
- </TD>
- <TD>
- <DIV CLASS="rich-picklist-target-items" STYLE="width: 140px; height: 140px;">
- <TABLE WIDTH="100%" CELLSPACING="0" CELLPADDING="0"
- CLASS="rich-picklist-body">
- <TR>
- <TD STYLE="border: 0px none ; padding: 0px;">
- <BR _MOZ_DIRTY="" TYPE="_moz" />
- </TD>
- </TR>
- </TABLE>
+ </DIV>
+ </DIV>
+ <DIV CLASS="rich-picklist-control-button-class">
+ <DIV
+ STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ CLASS="rich-list-picklist-button">
+ <DIV CLASS="rich-list-picklist-button-content">
+ <IMG WIDTH="15" HEIGHT="15"
+ SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_copy.gif" />
+
+ Copy
</DIV>
- <BR _MOZ_DIRTY="" TYPE="_moz" />
- </TD>
- </TR>
- </TBODY>
- </TABLE>
+ </DIV>
+ </DIV>
+ <DIV CLASS="rich-picklist-control-button-class">
+ <DIV
+ STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ CLASS="rich-list-picklist-button">
+ <DIV CLASS="rich-list-picklist-button-content">
+ <IMG WIDTH="15" HEIGHT="15"
+ SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_remove.gif" />
+
+ Remove
+ </DIV>
+ </DIV>
+ </DIV>
+ <DIV CLASS="rich-picklist-control-button-class">
+ <DIV
+ STYLE="background-image: url(file:////media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/button.gif);"
+ CLASS="rich-list-picklist-button">
+ <DIV CLASS="rich-list-picklist-button-content">
+ <IMG WIDTH="15" HEIGHT="15"
+ SRC="file:///media/sda3/head/trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/resources/pickList/arrow_remove_all.gif" />
+
+ Remove All
+ </DIV>
+ </DIV>
+ </DIV>
+ </DIV>
+ </TD>
+ <TD>
+ <DIV CLASS="rich-picklist-target-items" STYLE="width: 140px; height: 140px;">
+ <TABLE WIDTH="100%" CELLSPACING="0" CELLPADDING="0"
+ CLASS="rich-picklist-body">
+ <TR>
+ <TD STYLE="border: 0px none ; padding: 0px;">
+ <BR _MOZ_DIRTY="" TYPE="_moz" />
+
+ </TD>
+ </TR>
+ </TABLE>
+ </DIV>
+ <BR _MOZ_DIRTY="" TYPE="_moz" />
+
+ </TD>
+ </TR>
+</TBODY>
+</TABLE>
</test>
</tests>
\ No newline at end of file
15 years, 6 months
JBoss Tools SVN: r15710 - trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template.
by jbosstools-commits@lists.jboss.org
Author: mareshkau
Date: 2009-06-04 12:18:48 -0400 (Thu, 04 Jun 2009)
New Revision: 15710
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPickListTemplate.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-4419
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPickListTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPickListTemplate.java 2009-06-04 13:38:57 UTC (rev 15709)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPickListTemplate.java 2009-06-04 16:18:48 UTC (rev 15710)
@@ -15,7 +15,6 @@
import java.text.MessageFormat;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -51,7 +50,7 @@
private static final String ATTR_MOVE_CONTROLS_VERTICAL_ALIGN = "moveControlsVerticalAlign"; //$NON-NLS-1$
/** The Constant ATTR_SHOW_BUTTON_LABELS. */
- private static final String ATTR_SHOW_BUTTON_LABELS = "showButtonsLabel";
+ private static final String ATTR_SHOW_BUTTON_LABELS = "showButtonsLabel"; //$NON-NLS-1$
/** attribute name of width of source list. */
private static final String ATTR_SOURCE_LIST_WIDTH = "sourceListWidth"; //$NON-NLS-1$
@@ -63,13 +62,13 @@
private static final String BUTTON_IMG_PATH = "pickList/button.gif"; //$NON-NLS-1$
/** The Constant CLASS_SUFFIX. */
- private static final String CLASS_SUFFIX = "Class";
+ private static final String CLASS_SUFFIX = "Class"; //$NON-NLS-1$
/** The Constant CONTROL_MAP_KEY. */
- private static final String CONTROL_MAP_KEY = "control";
+ private static final String CONTROL_MAP_KEY = "control"; //$NON-NLS-1$
/** The Constant CSS_EXTENSION. */
- private static final String CSS_EXTENSION = "pickList";
+ private static final String CSS_EXTENSION = "pickList"; //$NON-NLS-1$
/** default button align. */
private static final String DEFAULT_BUTTON_ALIGN = HTML.VALUE_ALIGN_MIDDLE;
@@ -81,55 +80,55 @@
private static final String DEFAULT_LIST_WIDTH = "140px"; //$NON-NLS-1$
/** The Constant LABEL_SUFFIX. */
- private static final String LABEL_SUFFIX = "Label";
+ private static final String LABEL_SUFFIX = "Label"; //$NON-NLS-1$
/** The Constant LIST_MAP_KEY. */
- private static final String LIST_MAP_KEY = "list";
+ private static final String LIST_MAP_KEY = "list"; //$NON-NLS-1$
/** The Constant RICH_LIST_PICKLIST_BUTTON_CONTENT_CSS_CLASS. */
- private static final String RICH_LIST_PICKLIST_BUTTON_CONTENT_CSS_CLASS = "rich-list-picklist-button-content";
+ private static final String RICH_LIST_PICKLIST_BUTTON_CONTENT_CSS_CLASS = "rich-list-picklist-button-content"; //$NON-NLS-1$
/** The Constant RICH_LIST_PICKLIST_BUTTON_CSS_CLASS. */
- private static final String RICH_LIST_PICKLIST_BUTTON_CSS_CLASS = "rich-list-picklist-button";
+ private static final String RICH_LIST_PICKLIST_BUTTON_CSS_CLASS = "rich-list-picklist-button"; //$NON-NLS-1$
/** The Constant RICH_PICKLIST_CONTROL_BUTTON_CSS_CLASS. */
- private static final String RICH_PICKLIST_CONTROL_BUTTON_CSS_CLASS = "rich-picklist-control-button-class";
+ private static final String RICH_PICKLIST_CONTROL_BUTTON_CSS_CLASS = "rich-picklist-control-button-class"; //$NON-NLS-1$
/** The Constant RICH_PICKLIST_INTERNAL_TAB_CSS_CLASS. */
- private static final String RICH_PICKLIST_INTERNAL_TAB_CSS_CLASS = "rich-picklist-internal-tab";
+ private static final String RICH_PICKLIST_INTERNAL_TAB_CSS_CLASS = "rich-picklist-internal-tab"; //$NON-NLS-1$
/** The Constant RICH_PICKLIST_LIST_CONTENT_CSS_CLASS. */
- private static final String RICH_PICKLIST_LIST_CONTENT_CSS_CLASS = "rich-picklist-list-content";
+ private static final String RICH_PICKLIST_LIST_CONTENT_CSS_CLASS = "rich-picklist-list-content"; //$NON-NLS-1$
/** The Constant RICH_PICKLIST_LIST_CSS_CLASS. */
- private static final String RICH_PICKLIST_LIST_CSS_CLASS = "rich-picklist-list";
+ private static final String RICH_PICKLIST_LIST_CSS_CLASS = "rich-picklist-list"; //$NON-NLS-1$
/** The Constant RICH_PICKLIST_SOURCE_CELL_CSS_CLASS. */
- private static final String RICH_PICKLIST_SOURCE_CELL_CSS_CLASS = "rich-picklist-source-cell";
+ private static final String RICH_PICKLIST_SOURCE_CELL_CSS_CLASS = "rich-picklist-source-cell"; //$NON-NLS-1$
/** The Constant SELECT_ITEM. */
- private static final String SELECT_ITEM = "selectItem";
+ private static final String SELECT_ITEM = "selectItem"; //$NON-NLS-1$
/** The Constant SOURCE_LIST. */
private static final String SOURCE_LIST = "source"; //$NON-NLS-1$
/** The Constant SPACER_GIF. */
- private static final String SPACER_GIF = "/spacer.gif";
+ private static final String SPACER_GIF = "/spacer.gif"; //$NON-NLS-1$
/** path to css. */
- private static final String STYLE_PATH = CSS_EXTENSION + "/pickList.css";
+ private static final String STYLE_PATH = CSS_EXTENSION + "/pickList.css"; //$NON-NLS-1$
/** The Constant styleClasses. */
private static final Map<String, String> styleClasses = new HashMap<String, String>();
/** The Constant TARGET_LIST. */
- private static final String TARGET_LIST = "target";
+ private static final String TARGET_LIST = "target"; //$NON-NLS-1$
/** The Constant TD_STYLE_1. */
- private static final String TD_STYLE_1 = "border: 0px none ; padding: 0px;";
+ private static final String TD_STYLE_1 = "border: 0px none ; padding: 0px;"; //$NON-NLS-1$
/** The Constant WIDTH_15. */
- private static final String WIDTH_15 = "15";
+ private static final String WIDTH_15 = "15"; //$NON-NLS-1$
/**
* Gets the children.
@@ -151,10 +150,10 @@
}
/** button images. */
- private final Map<String, String> buttonImages = new HashMap<String, String>();
+ private final Map<LabelKey, String> buttonImages = new HashMap<LabelKey, String>();
/** default labels. */
- private final Map<String, String> defaultLabels = new HashMap<String, String>();
+ private final Map<LabelKey, String> defaultLabels = new HashMap<LabelKey, String>();
/** style classes. */
private final Map<String, String> defaultStyleClasses = new HashMap<String, String>();
@@ -183,12 +182,23 @@
/** target buttons. */
private final List<String> targetButtons = new ArrayList<String>();
- /** value of vertical-align attribute for source (up/down/top/bottom) buttons. */
- private String targetButtonsAlign;
-
/** value of width attribute of target list. */
private String targetListsWidth;
+ private enum LabelKey {
+ COPY_ALL_CONTROL("copyAllControl"), //$NON-NLS-1$
+ COPY_CONTROL("copyControl"), //$NON-NLS-1$
+ REMOVE_CONTROL("removeControl"), //$NON-NLS-1$
+ REMOVE_ALL_CONTROL("removeAllControl"); //$NON-NLS-1$
+
+ private String value;
+ LabelKey(String val) {
+ this.value = val;
+ }
+ public String getValue() {
+ return this.value;
+ }
+ }
/**
* The Constructor.
*/
@@ -280,7 +290,7 @@
// prepare data
prepareData(sourceElement);
- ComponentUtil.setCSSLink(pageContext, STYLE_PATH, CSS_EXTENSION); //$NON-NLS-1$
+ ComponentUtil.setCSSLink(pageContext, STYLE_PATH, CSS_EXTENSION);
// create table element
final nsIDOMElement rootTable = visualDocument.createElement(HTML.TAG_TABLE);
final nsIDOMElement rootTBody = visualDocument.createElement(HTML.TAG_TBODY);
@@ -288,12 +298,12 @@
final VpeCreationData creationData = new VpeCreationData(rootTable);
creationData.addChildrenInfo(new VpeChildrenInfo(null));
- rootTable.setAttribute(HTML.ATTR_CLASS, styleClasses.get(RichFaces.ATTR_STYLE)); //$NON-NLS-1$
+ rootTable.setAttribute(HTML.ATTR_CLASS, styleClasses.get(RichFaces.ATTR_STYLE));
rootTable.setAttribute(HTML.ATTR_STYLE, sourceElement.getAttribute(RichFaces.ATTR_STYLE));
// create source box
final nsIDOMElement sourceBoxTd = visualDocument.createElement(HTML.TAG_TD);
- final nsIDOMElement sourceBox = createBox(visualDocument, creationData, getChildren(sourceNode), SOURCE_LIST); //$NON-NLS-1$
+ final nsIDOMElement sourceBox = createBox(visualDocument, creationData, getChildren(sourceNode), SOURCE_LIST);
sourceBox.setAttribute(HTML.ATTR_STYLE, VpeStyleUtil.PARAMETER_WIDTH + VpeStyleUtil.COLON_STRING + sourceListsWidth
+ VpeStyleUtil.SEMICOLON_STRING + VpeStyleUtil.PARAMETER_HEIGHT + VpeStyleUtil.COLON_STRING + listsHeight
+ VpeStyleUtil.SEMICOLON_STRING);
@@ -301,8 +311,7 @@
sourceBoxTd.appendChild(sourceBox);
// create source buttons
nsIDOMElement controlsButtonsTd = visualDocument.createElement(HTML.TAG_TD);
- Map<String, String> cloneDefaultLabels = (Map<String, String>) ((HashMap<String, String>) defaultLabels).clone();
- nsIDOMElement sourceButtonsBlock = createButtonsBlock(visualDocument, creationData, cloneDefaultLabels.keySet());
+ nsIDOMElement sourceButtonsBlock = createButtonsBlock(visualDocument, creationData);
controlsButtonsTd.appendChild(sourceButtonsBlock);
// set vertical-align attribute for source buttons
@@ -311,7 +320,7 @@
// create target box
final nsIDOMElement targetBoxTd = visualDocument.createElement(HTML.TAG_TD);
- final nsIDOMElement targetBox = createBox(visualDocument, creationData, getChildren(sourceNode), TARGET_LIST); //$NON-NLS-1$
+ final nsIDOMElement targetBox = createBox(visualDocument, creationData, getChildren(sourceNode), TARGET_LIST);
targetBox.setAttribute(HTML.ATTR_STYLE, VpeStyleUtil.PARAMETER_WIDTH + VpeStyleUtil.COLON_STRING + targetListsWidth
+ VpeStyleUtil.SEMICOLON_STRING + VpeStyleUtil.PARAMETER_HEIGHT + VpeStyleUtil.COLON_STRING + listsHeight
+ VpeStyleUtil.SEMICOLON_STRING);
@@ -345,13 +354,13 @@
private nsIDOMElement createBox(nsIDOMDocument visualDocument, VpeCreationData creationData, List<Node> children, String boxId) {
nsIDOMElement div = visualDocument.createElement(HTML.TAG_DIV);
- div.setAttribute(HTML.ATTR_CLASS, MessageFormat.format(styleClasses.get(LIST_MAP_KEY), boxId)); //$NON-NLS-1$
+ div.setAttribute(HTML.ATTR_CLASS, MessageFormat.format(styleClasses.get(LIST_MAP_KEY), boxId));
// create table element
nsIDOMElement box = visualDocument.createElement(HTML.TAG_TABLE);
box.setAttribute(HTML.ATTR_CELLSPACING, "0"); //$NON-NLS-1$
box.setAttribute(HTML.ATTR_CELLPADDING, "0"); //$NON-NLS-1$
box.setAttribute(HTML.ATTR_WIDTH, "100%"); //$NON-NLS-1$
- box.setAttribute(HTML.ATTR_CLASS, "rich-picklist-body");
+ box.setAttribute(HTML.ATTR_CLASS, "rich-picklist-body"); //$NON-NLS-1$
final nsIDOMElement td = visualDocument.createElement(HTML.TAG_TD);
final nsIDOMElement tr = visualDocument.createElement(HTML.TAG_TR);
@@ -376,29 +385,29 @@
*
* @return the ns IDOM element
*/
- private nsIDOMElement createButton(nsIDOMDocument visualDocument, VpeCreationData creationData, String buttonId) {
+ private nsIDOMElement createButton(nsIDOMDocument visualDocument, VpeCreationData creationData, LabelKey buttonId) {
nsIDOMElement buttonSpace = visualDocument.createElement(HTML.TAG_DIV);
- buttonSpace.setAttribute(HTML.ATTR_CLASS, RICH_PICKLIST_CONTROL_BUTTON_CSS_CLASS); //$NON-NLS-1$
+ buttonSpace.setAttribute(HTML.ATTR_CLASS, RICH_PICKLIST_CONTROL_BUTTON_CSS_CLASS);
// button represent "div" element
nsIDOMElement metaButton = visualDocument.createElement(HTML.TAG_DIV);
metaButton.setAttribute(HTML.ATTR_STYLE, ComponentUtil.getBackgoundImgStyle(BUTTON_IMG_PATH));
- metaButton.setAttribute(HTML.ATTR_CLASS, RICH_LIST_PICKLIST_BUTTON_CSS_CLASS); //$NON-NLS-1$
+ metaButton.setAttribute(HTML.ATTR_CLASS, RICH_LIST_PICKLIST_BUTTON_CSS_CLASS);
nsIDOMElement buttonContent = visualDocument.createElement(HTML.TAG_DIV);
- buttonContent.setAttribute(HTML.ATTR_CLASS, RICH_LIST_PICKLIST_BUTTON_CONTENT_CSS_CLASS); //$NON-NLS-1$
+ buttonContent.setAttribute(HTML.ATTR_CLASS, RICH_LIST_PICKLIST_BUTTON_CONTENT_CSS_CLASS);
nsIDOMElement buttonImage = visualDocument.createElement(HTML.TAG_IMG);
- buttonImage.setAttribute(HTML.ATTR_WIDTH, WIDTH_15); //$NON-NLS-1$
- buttonImage.setAttribute(HTML.ATTR_HEIGHT, WIDTH_15); //$NON-NLS-1$
+ buttonImage.setAttribute(HTML.ATTR_WIDTH, WIDTH_15);
+ buttonImage.setAttribute(HTML.ATTR_HEIGHT, WIDTH_15);
ComponentUtil.setImg(buttonImage, buttonImages.get(buttonId));
buttonContent.appendChild(buttonImage);
if (isShowButtonLabels) {
- nsIDOMText buttonText = visualDocument.createTextNode(labels.get(buttonId));
+ nsIDOMText buttonText = visualDocument.createTextNode(labels.get(buttonId.getValue()));
buttonContent.appendChild(buttonText);
}
@@ -418,13 +427,13 @@
*
* @return the ns IDOM element
*/
- private nsIDOMElement createButtonsBlock(nsIDOMDocument visualDocument, VpeCreationData creationData, Collection<String> buttonNames) {
+ private nsIDOMElement createButtonsBlock(nsIDOMDocument visualDocument, VpeCreationData creationData) {
// create "div"
nsIDOMElement buttonsBlock = visualDocument.createElement(HTML.TAG_DIV);
- buttonsBlock.setAttribute(HTML.ATTR_CLASS, styleClasses.get(CONTROL_MAP_KEY)); //$NON-NLS-1$
+ buttonsBlock.setAttribute(HTML.ATTR_CLASS, styleClasses.get(CONTROL_MAP_KEY));
- for (String buttonId : buttonNames) {
+ for (LabelKey buttonId : LabelKey.values()) {
buttonsBlock.appendChild(createButton(visualDocument, creationData, buttonId));
@@ -478,12 +487,12 @@
* @return the text for select item
*/
private String getTextForSelectItem(Element child) {
- String result = "";
+ String result = ""; //$NON-NLS-1$
String attrName = RichFaces.ATTR_SELECT_ITEM_LABEL;
- String defaultValue = "<h:selectItem/>";
- if (child.getNodeName().endsWith("selectItems")) {
+ String defaultValue = "<h:selectItem/>"; //$NON-NLS-1$
+ if (child.getNodeName().endsWith("selectItems")) { //$NON-NLS-1$
attrName = RichFaces.ATTR_VALUE;
- defaultValue = "<h:selectItems/>";
+ defaultValue = "<h:selectItems/>"; //$NON-NLS-1$
}
result = ComponentUtil.getAttribute(child, attrName);
@@ -507,10 +516,10 @@
*/
private void initButtonImagesMap() {
// images of the first set of buttons
- buttonImages.put("copyAllControl", getCssExtension() + "/arrow_copy_all.gif"); //$NON-NLS-1$ //$NON-NLS-2$
- buttonImages.put("copyControl", getCssExtension() + "/arrow_copy.gif"); //$NON-NLS-1$ //$NON-NLS-2$
- buttonImages.put("removeControl", getCssExtension() + "/arrow_remove.gif"); //$NON-NLS-1$ //$NON-NLS-2$
- buttonImages.put("removeAllControl", getCssExtension() + "/arrow_remove_all.gif"); //$NON-NLS-1$ //$NON-NLS-2$
+ buttonImages.put(LabelKey.COPY_ALL_CONTROL, getCssExtension() + "/arrow_copy_all.gif"); //$NON-NLS-1$
+ buttonImages.put(LabelKey.COPY_CONTROL, getCssExtension() + "/arrow_copy.gif"); //$NON-NLS-1$
+ buttonImages.put(LabelKey.REMOVE_CONTROL, getCssExtension() + "/arrow_remove.gif"); //$NON-NLS-1$
+ buttonImages.put(LabelKey.REMOVE_ALL_CONTROL, getCssExtension() + "/arrow_remove_all.gif"); //$NON-NLS-1$
}
@@ -519,10 +528,10 @@
*/
private void initDefaultLabelsMap() {
// values of the first set of buttons
- defaultLabels.put("copyAllControl", "Copy all"); //$NON-NLS-1$ //$NON-NLS-2$
- defaultLabels.put("copyControl", "Copy"); //$NON-NLS-1$ //$NON-NLS-2$
- defaultLabels.put("removeControl", "Remove"); //$NON-NLS-1$ //$NON-NLS-2$
- defaultLabels.put("removeAllControl", "Remove All"); //$NON-NLS-1$ //$NON-NLS-2$
+ defaultLabels.put(LabelKey.COPY_ALL_CONTROL, "Copy all"); //$NON-NLS-1$
+ defaultLabels.put(LabelKey.COPY_CONTROL, "Copy"); //$NON-NLS-1$
+ defaultLabels.put(LabelKey.REMOVE_CONTROL, "Remove"); //$NON-NLS-1$
+ defaultLabels.put(LabelKey.REMOVE_ALL_CONTROL, "Remove All"); //$NON-NLS-1$
}
/**
@@ -532,10 +541,10 @@
// general style
defaultStyleClasses.put("style", "rich-list-picklist"); //$NON-NLS-1$ //$NON-NLS-2$
- defaultStyleClasses.put(LIST_MAP_KEY, "rich-picklist-{0}-items"); //$NON-NLS-1$ //$NON-NLS-2$
+ defaultStyleClasses.put(LIST_MAP_KEY, "rich-picklist-{0}-items"); //$NON-NLS-1$
// styles of button's block
- defaultStyleClasses.put(CONTROL_MAP_KEY, "rich-picklist-controls"); //$NON-NLS-1$ //$NON-NLS-2$
+ defaultStyleClasses.put(CONTROL_MAP_KEY, "rich-picklist-controls"); //$NON-NLS-1$
}
@@ -577,15 +586,15 @@
*/
private void prepareLabels(Element sourceElement) {
// prepare labels
- final Set<String> labelsKeys = defaultLabels.keySet();
- for (String key : labelsKeys) {
- String label = sourceElement.getAttribute(key + LABEL_SUFFIX); //$NON-NLS-1$
+ for (LabelKey key : LabelKey.values()) {
+ String label = sourceElement.getAttribute(key.getValue() + LABEL_SUFFIX);
+
if (label != null) {
- labels.put(key, label);
+ labels.put(key.getValue(), label);
} else {
- labels.put(key, defaultLabels.get(key));
+ labels.put(key.getValue(), defaultLabels.get(key));
}
}
}
@@ -597,7 +606,7 @@
*/
private void prepareOtherParameters(Element sourceElement) {
- isShowButtonLabels = !Boolean.FALSE.toString().equalsIgnoreCase(sourceElement //$NON-NLS-1$
+ isShowButtonLabels = !Boolean.FALSE.toString().equalsIgnoreCase(sourceElement
.getAttribute(ATTR_SHOW_BUTTON_LABELS));
// prepare buttons attributes
moveControlsAlign = sourceElement.getAttribute(ATTR_MOVE_CONTROLS_VERTICAL_ALIGN) != null ? sourceElement
@@ -637,7 +646,7 @@
Set<String> styleClassesKeys = defaultStyleClasses.keySet();
for (String key : styleClassesKeys) {
- String styleClass = sourceElement.getAttribute(key + CLASS_SUFFIX); //$NON-NLS-1$
+ String styleClass = sourceElement.getAttribute(key + CLASS_SUFFIX);
if (styleClass != null) {
styleClasses.put(key, defaultStyleClasses.get(key) + " " //$NON-NLS-1$
+ styleClass);
15 years, 6 months