[eclipse-webtools] Initial import from src rpm

Gerard Ryan galileo at fedoraproject.org
Thu Jul 3 19:41:39 UTC 2014


commit 2029099cc09621bd57927347fe62774f4ed4dc03
Author: Gerard Ryan <gerard at ryan.lt>
Date:   Thu Jul 3 20:30:19 2014 +0100

    Initial import from src rpm

 .gitignore                                         |    2 +
 ...35105-Fix-for-compilation-error-in-Fedora.patch |   58 ++
 ...t-missing-methods-needed-for-WSDL4J-1.6.2.patch |  423 +++++++++
 0001-Update-submodules-for-release-R3_6_0.patch    |   83 ++
 eclipse-webtools-hashtable-api-change.patch        |   20 +
 eclipse-webtools-javax.persistence-version.patch   |   49 ++
 eclipse-webtools-jetty-logger-api-change.patch     |   15 +
 eclipse-webtools-jst.ws.jaxws.feature.patch        |   57 ++
 ....jpt.common.utility-reflection-api-change.patch |   11 +
 ...eclipse.jpt.common.utility-sql-api-change.patch |   19 +
 eclipse-webtools-rhino-debugger-update.patch       |   46 +
 ...ax.wsdl-version-check-from-wsdl15-feature.patch |   11 +
 ...bapp-and-xml-from-server_adapters-feature.patch |   18 +
 eclipse-webtools-rm-moz-js-from-jsdt-feature.patch |   17 +
 ...tools-rm-moz-js-src-from-jsdt-src-feature.patch |   17 +
 ...ble-plugins-from-jaxb-eclipselink-feature.patch |   36 +
 ...-obstacle-bundles-from-jst.ws.cxf-feature.patch |   47 +
 ...s-rm-version-checks-from-xml_core-feature.patch |   35 +
 eclipse-webtools-wst.server.preview-manifest.patch |   16 +
 eclipse-webtools-wst.ws_core.feature.patch         |   45 +
 eclipse-webtools-wst.xsl.feature.patch             |   55 ++
 eclipse-webtools-xerces-api-change.patch           |   19 +
 eclipse-webtools-xerces-j2-api-change.patch        |   74 ++
 eclipse-webtools.spec                              |  895 ++++++++++++++++++++
 sources                                            |    2 +
 25 files changed, 2070 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..38aac32 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1,2 @@
+/eclipse-webtools-3.6.0.tar.xz
+/eclipselink.runtime-7816e2b523adf5e65ad0c245f13ca4b59ff329f2.tar.bz2
diff --git a/0001-435105-Fix-for-compilation-error-in-Fedora.patch b/0001-435105-Fix-for-compilation-error-in-Fedora.patch
new file mode 100644
index 0000000..08a7e57
--- /dev/null
+++ b/0001-435105-Fix-for-compilation-error-in-Fedora.patch
@@ -0,0 +1,58 @@
+From 059d25ac45ed25333151462b587c608ad31b43ad Mon Sep 17 00:00:00 2001
+From: Gerard Ryan <gerard at ryan.lt>
+Date: Fri, 16 May 2014 22:01:42 +0100
+Subject: [PATCH] [435105] Fix for compilation error in Fedora
+
+Trying to build this for Fedora RPM results in a compilation failure
+without this patch. The error states that, e.g.
+
+Incompatible operand types Class<capture#2-of ? extends
+IDEBeanTypeProxy> and Class<Boolean>
+
+Signed-off-by: Gerard Ryan <gerard at ryan.lt>
+---
+ .../proxy/ide/IDEStandardBeanProxyFactory.java        | 19 ++++++++++---------
+ 1 file changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/plugins/org.eclipse.jem.proxy/proxyide/org/eclipse/jem/internal/proxy/ide/IDEStandardBeanProxyFactory.java b/plugins/org.eclipse.jem.proxy/proxyide/org/eclipse/jem/internal/proxy/ide/IDEStandardBeanProxyFactory.java
+index 85a852b..188da8a 100644
+--- webtools.javaee/plugins/org.eclipse.jem.proxy/proxyide/org/eclipse/jem/internal/proxy/ide/IDEStandardBeanProxyFactory.java
++++ webtools.javaee/plugins/org.eclipse.jem.proxy/proxyide/org/eclipse/jem/internal/proxy/ide/IDEStandardBeanProxyFactory.java
+@@ -106,24 +106,25 @@ public class IDEStandardBeanProxyFactory implements IStandardBeanProxyFactory {
+ 		if (!nonPrimitiveProxy.isValid())
+ 			return nonPrimitiveProxy;
+ 		IDEBeanTypeProxy type = (IDEBeanTypeProxy) nonPrimitiveProxy.getTypeProxy();
+-		if (type.getClass() == Boolean.class)
++		if (Boolean.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((IBooleanBeanProxy) nonPrimitiveProxy).booleanValue());
+-		else if (type.getClass() == Byte.class)
++		} else if (Byte.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((INumberBeanProxy) nonPrimitiveProxy).byteValue());
+-		else if (type.getClass() == Character.class)
++		} else if (Character.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((ICharacterBeanProxy) nonPrimitiveProxy).charValue());
+-		else if (type.getClass() == Double.class)
++		} else if (Double.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((INumberBeanProxy) nonPrimitiveProxy).doubleValue());
+-		else if (type.getClass() == Float.class)
++		} else if (Float.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((INumberBeanProxy) nonPrimitiveProxy).floatValue());
+-		else if (type.getClass() == Integer.class)
++		} else if (Integer.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((INumberBeanProxy) nonPrimitiveProxy).intValue());
+-		else if (type.getClass() == Long.class)
++		} else if (Long.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((INumberBeanProxy) nonPrimitiveProxy).longValue());
+-		else if (type.getClass() == Short.class)
++		} else if (Short.class.equals(type.getClass())) {
+ 			return this.createBeanProxyWith(((INumberBeanProxy) nonPrimitiveProxy).shortValue());
+-		else
++		} else {
+ 			return nonPrimitiveProxy;
++		}
+ 	}
+ 
+ 	/**
+-- 
+1.9.0
+
diff --git a/0001-Implement-missing-methods-needed-for-WSDL4J-1.6.2.patch b/0001-Implement-missing-methods-needed-for-WSDL4J-1.6.2.patch
new file mode 100644
index 0000000..395afbe
--- /dev/null
+++ b/0001-Implement-missing-methods-needed-for-WSDL4J-1.6.2.patch
@@ -0,0 +1,423 @@
+From be9e524c13c783b52d8cda43ff6c367e0c854871 Mon Sep 17 00:00:00 2001
+From: Gerard Ryan <gerard at ryan.lt>
+Date: Wed, 2 Jan 2013 23:52:57 +0000
+Subject: [PATCH] Implement missing methods needed for WSDL4J 1.6.2
+
+This is a fix for https://bugs.eclipse.org/bugs/show_bug.cgi?id=265772
+
+To update the dependency on WSDL4J from 1.5.x to 1.6.2, some additional
+methods must be added. More information can be found in the JSR110 JWSDL
+1.2 Maintenance Release Change Log at
+jcp.org/aboutJava/communityprocess/maintenance/jsr110/wsdl-1_2-mr-changelog.pdf
+---
+ bundles/org.eclipse.wst.wsdl/META-INF/MANIFEST.MF  |  2 +-
+ .../internal/impl/MIMEMultipartRelatedImpl.java    | 13 +++++
+ .../binding/mime/internal/impl/MIMEPartImpl.java   | 14 +++++
+ .../binding/soap/internal/impl/SOAPHeaderImpl.java | 14 +++++
+ .../wst/wsdl/internal/impl/BindingImpl.java        | 16 ++++++
+ .../wsdl/internal/impl/BindingOperationImpl.java   | 17 ++++++
+ .../wst/wsdl/internal/impl/DefinitionImpl.java     | 60 ++++++++++++++++++++++
+ .../wsdl/internal/impl/ExtensibleElementImpl.java  | 14 +++++
+ .../wst/wsdl/internal/impl/MessageImpl.java        | 17 ++++++
+ .../wst/wsdl/internal/impl/OperationImpl.java      | 18 +++++++
+ .../wst/wsdl/internal/impl/PortTypeImpl.java       | 22 ++++++++
+ .../wst/wsdl/internal/impl/ServiceImpl.java        | 17 ++++++
+ .../wsdl/internal/impl/wsdl4j/WSDLReaderImpl.java  |  5 ++
+ 13 files changed, 228 insertions(+), 1 deletion(-)
+
+diff --git a/bundles/org.eclipse.wst.wsdl/META-INF/MANIFEST.MF b/bundles/org.eclipse.wst.wsdl/META-INF/MANIFEST.MF
+index 7fad7d7..f564643 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/META-INF/MANIFEST.MF
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/META-INF/MANIFEST.MF
+@@ -28,7 +28,7 @@ Export-Package: org.eclipse.wst.wsdl,
+ Require-Bundle: org.eclipse.emf.ecore;bundle-version="[2.2.0,3.0.0)",
+  org.eclipse.xsd;bundle-version="[2.2.0,3.0.0)",
+  org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
+- javax.wsdl;bundle-version="[1.5.0,1.6.0)",
++ javax.wsdl;bundle-version="[1.6.2,1.7.0)",
+  org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
+  org.apache.xerces;bundle-version="[2.8.0,3.0.0)"
+ Import-Package: com.ibm.icu.util; version="3.8" 
+diff --git a/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEMultipartRelatedImpl.java b/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEMultipartRelatedImpl.java
+index 1854f2d..36f086c 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEMultipartRelatedImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEMultipartRelatedImpl.java
+@@ -113,6 +113,19 @@ public class MIMEMultipartRelatedImpl extends ExtensibilityElementImpl implement
+    * <!-- end-user-doc -->
+    * @generated NOT
+    */
++  public javax.wsdl.extensions.mime.MIMEPart removeMIMEPart(javax.wsdl.extensions.mime.MIMEPart mimePart)
++  {
++    if(getEMIMEPart().remove(mimePart))
++      return mimePart;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
+   public List getMIMEParts()
+   {
+     return getEMIMEPart();
+diff --git a/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEPartImpl.java b/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEPartImpl.java
+index 7baafca..7dc9177 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEPartImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-mime/org/eclipse/wst/wsdl/binding/mime/internal/impl/MIMEPartImpl.java
+@@ -117,6 +117,20 @@ public class MIMEPartImpl extends ExtensibilityElementImpl implements MIMEPart
+    * <!-- end-user-doc -->
+    * @generated NOT
+    */
++  public javax.wsdl.extensions.ExtensibilityElement removeExtensibilityElement(
++    javax.wsdl.extensions.ExtensibilityElement extensibilityElement)
++  {
++    if (getExtensibilityElements().remove(extensibilityElement))
++      return extensibilityElement;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
+   public List getExtensibilityElements()
+   {
+     return getEExtensibilityElements();
+diff --git a/bundles/org.eclipse.wst.wsdl/src-soap/org/eclipse/wst/wsdl/binding/soap/internal/impl/SOAPHeaderImpl.java b/bundles/org.eclipse.wst.wsdl/src-soap/org/eclipse/wst/wsdl/binding/soap/internal/impl/SOAPHeaderImpl.java
+index 9815c67..061e720 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-soap/org/eclipse/wst/wsdl/binding/soap/internal/impl/SOAPHeaderImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-soap/org/eclipse/wst/wsdl/binding/soap/internal/impl/SOAPHeaderImpl.java
+@@ -121,6 +121,20 @@ public class SOAPHeaderImpl extends SOAPHeaderBaseImpl implements SOAPHeader
+   /**
+    * <!-- begin-user-doc -->
+    * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.extensions.soap.SOAPHeaderFault removeSOAPHeaderFault(
++    javax.wsdl.extensions.soap.SOAPHeaderFault soapHeaderFault)
++  {
++    if (getHeaderFaults().remove(soapHeaderFault))
++      return soapHeaderFault;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
++   * <!-- end-user-doc -->
+    * @generated
+    */
+   public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingImpl.java
+index 789975e..98a5641 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingImpl.java
+@@ -261,6 +261,22 @@ public class BindingImpl extends ExtensibleElementImpl implements Binding
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * <!-- end-user-doc -->
++   * @generated
++   */
++  public javax.wsdl.BindingOperation removeBindingOperation(String name, String inputName, String outputName)
++  {
++    javax.wsdl.BindingOperation op = getBindingOperation(name, inputName, outputName);
++    if(getBindingOperations().remove(op))
++    {
++      return op;
++    }
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get the specified operation binding. Note that operation names can
+    * be overloaded within a PortType. In case of overloading, the
+    * names of the input and output messages can be used to further
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingOperationImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingOperationImpl.java
+index ee11780..bfb52f4 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingOperationImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/BindingOperationImpl.java
+@@ -377,6 +377,23 @@ public class BindingOperationImpl extends ExtensibleElementImpl implements Bindi
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * Remove a fault binding.
++   * @param name the name of the fault binding to remove.
++   * @return the removed fault binding.
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.BindingFault removeBindingFault(String name)
++  {
++    javax.wsdl.BindingFault fault = getBindingFault(name);
++    if (getEBindingFaults().remove(fault))
++      return fault;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get the specified fault binding.
+    * @param name the name of the desired fault binding.
+    * @return the corresponding fault binding, or null if there wasn't
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/DefinitionImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/DefinitionImpl.java
+index 1b7b106..9f1a8d9 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/DefinitionImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/DefinitionImpl.java
+@@ -903,6 +903,17 @@ public class DefinitionImpl extends ExtensibleElementImpl implements Definition
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * @see getBindings()
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public Map getAllBindings()
++  {
++    return getBindings();
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get a map of lists containing all the imports defined here.
+    * The map's keys are the namespaceURIs, and the map's values
+    * are lists. There is one list for each namespaceURI for which
+@@ -1042,6 +1053,17 @@ public class DefinitionImpl extends ExtensibleElementImpl implements Definition
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * @see getPortTypes()
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public Map getAllPortTypes()
++  {
++    return getPortTypes();
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get a prefix associated with this namespace URI. Or null if
+    * there are no prefixes associated with this namespace URI. This is
+    * unrelated to the &lt;wsdl:import&gt; element.
+@@ -1095,6 +1117,17 @@ public class DefinitionImpl extends ExtensibleElementImpl implements Definition
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * @see getServices()
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public Map getAllServices()
++  {
++    return getServices();
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get a reference to the ExtensionRegistry for this Definition.
+    * <!-- end-user-doc -->
+    * @generated NOT
+@@ -1212,6 +1245,33 @@ public class DefinitionImpl extends ExtensibleElementImpl implements Definition
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * Remove the specified import
++   * @param the import to remove
++   * @return the removed import
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.Import removeImport(javax.wsdl.Import importDef)
++  {
++    if (getEImports().remove(importDef))
++      return importDef;
++    else
++      return null;
++  }
++
++  /**
++   * Remove the namespace URI associated with this prefix, or null
++   * if there is no namespace URI associated with this prefix.
++   * @param prefix
++   * @generated NOT
++   */
++  public String removeNamespace(String prefix)
++  {
++    return (String)getNamespaces().remove(prefix);
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * <!-- end-user-doc -->
+    * @generated NOT
+    */
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ExtensibleElementImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ExtensibleElementImpl.java
+index c3c05c7..979501a 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ExtensibleElementImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ExtensibleElementImpl.java
+@@ -117,6 +117,20 @@ public abstract class ExtensibleElementImpl extends WSDLElementImpl implements E
+   /**
+    * <!-- begin-user-doc -->
+    * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.extensions.ExtensibilityElement removeExtensibilityElement(
++    javax.wsdl.extensions.ExtensibilityElement extensibilityElement)
++  {
++    if (getExtensibilityElements().remove(extensibilityElement))
++      return extensibilityElement;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
++   * <!-- end-user-doc -->
+    * @generated
+    */
+   public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/MessageImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/MessageImpl.java
+index 11840aa..af0404d 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/MessageImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/MessageImpl.java
+@@ -208,6 +208,23 @@ public class MessageImpl extends ExtensibleElementImpl implements Message
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * Remove a part from this message.
++   * @param name the name of part to be removed
++   * @return the removed part
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.Part removePart(String name)
++  {
++    javax.wsdl.Part part = getPart(name);
++    if (getEParts().remove(part))
++      return part;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get the specified part.
+    * @param name the name of the desired part.
+    * @return the corresponding part, or null if there wasn't
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/OperationImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/OperationImpl.java
+index 9ba8b32..b808791 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/OperationImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/OperationImpl.java
+@@ -529,6 +529,24 @@ return opType;
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * Remove a fault message that is associated with this
++   * operation.
++   * @param name the name of the removed fault message
++   * @return the removed fault message
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.Fault removeFault(String name)
++  {
++    javax.wsdl.Fault fault = getFault(name);
++    if (getEFaults().remove(fault))
++      return fault;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get the specified fault message.
+    * @param name the name of the desired fault message.
+    * @return the corresponding fault message, or null if there wasn't
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/PortTypeImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/PortTypeImpl.java
+index 2becb30..73c6a03 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/PortTypeImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/PortTypeImpl.java
+@@ -207,6 +207,28 @@ public class PortTypeImpl extends ExtensibleElementImpl implements PortType
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * Remove an operation from this port type.
++   * @param name the name of the desired operation.
++   * @param inputName the name of the input message; if this is null
++   *        it will be ignored.
++   * @param outputName the name of the output message; if this is null
++   *        it will be ignored.
++   * @return the corresponding operation, or null if there wasn't
++   *         any matching operation
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.Operation removeOperation(String name, String inputName, String outputName)
++  {
++    javax.wsdl.Operation op = getOperation(name, inputName, outputName);
++    if (getEOperations().remove(op))
++      return op;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get the specified operation. Note that operation names can
+    * be overloaded within a PortType. In case of overloading, the
+    * names of the input and output messages can be used to further
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ServiceImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ServiceImpl.java
+index c2c559a..1fdbd87 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ServiceImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/ServiceImpl.java
+@@ -207,6 +207,23 @@ public class ServiceImpl extends ExtensibleElementImpl implements Service
+ 
+   /**
+    * <!-- begin-user-doc -->
++   * Remove a port from this service.
++   * @param name the name of the port to be removed
++   * @return the removed port
++   * <!-- end-user-doc -->
++   * @generated NOT
++   */
++  public javax.wsdl.Port removePort(String name)
++  {
++    javax.wsdl.Port port = getPort(name);
++    if (getEPorts().remove(port))
++      return port;
++    else
++      return null;
++  }
++
++  /**
++   * <!-- begin-user-doc -->
+    * Get all the ports defined here.
+    * <!-- end-user-doc -->
+    * @generated NOT
+diff --git a/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/wsdl4j/WSDLReaderImpl.java b/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/wsdl4j/WSDLReaderImpl.java
+index b6963f6..2ee9bae 100644
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/wsdl4j/WSDLReaderImpl.java
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl/src-wsdl/org/eclipse/wst/wsdl/internal/impl/wsdl4j/WSDLReaderImpl.java
+@@ -216,6 +216,11 @@ public final class WSDLReaderImpl implements WSDLReader
+     throw new WSDLException(WSDLException.OTHER_ERROR, "Not Implemented");
+   }
+ 
++  public Definition readWSDL(WSDLLocator locator, Element element) throws WSDLException
++  {
++    throw new WSDLException(WSDLException.OTHER_ERROR, "Not Implemented");
++  }
++
+   private URI createURI(String uriString)
+   {
+     if (hasProtocol(uriString))
+-- 
+1.8.0.2
+
diff --git a/0001-Update-submodules-for-release-R3_6_0.patch b/0001-Update-submodules-for-release-R3_6_0.patch
new file mode 100644
index 0000000..ef5784f
--- /dev/null
+++ b/0001-Update-submodules-for-release-R3_6_0.patch
@@ -0,0 +1,83 @@
+From 7e75b7b0d90704d8df5a03eff8062073f49d1f5a Mon Sep 17 00:00:00 2001
+From: Gerard Ryan <gerard at ryan.lt>
+Date: Sun, 29 Jun 2014 19:34:20 +0100
+Subject: [PATCH] Update submodules for release R3_6_0
+
+---
+ webtools.common.snippets     | 2 +-
+ webtools.javaee              | 2 +-
+ webtools.jsdt                | 2 +-
+ webtools.jsf                 | 2 +-
+ webtools.servertools         | 2 +-
+ webtools.servertools.tests   | 2 +-
+ webtools.sourceediting       | 2 +-
+ webtools.sourceediting.tests | 2 +-
+ webtools.webservices.jaxws   | 2 +-
+ 9 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/webtools.common.snippets b/webtools.common.snippets
+index 5dcb538..e157752 160000
+--- a/webtools.common.snippets
++++ b/webtools.common.snippets
+@@ -1 +1 @@
+-Subproject commit 5dcb538229cf1e6cb1710ad28b6cdf1ecd01a59e
++Subproject commit e1577520c2563c5a125cb6e17f32edb7363e66b8
+diff --git a/webtools.javaee b/webtools.javaee
+index bd9dcc5..f9292a4 160000
+--- a/webtools.javaee
++++ b/webtools.javaee
+@@ -1 +1 @@
+-Subproject commit bd9dcc511b2e8ea036741c95c7366d4891bc8ff8
++Subproject commit f9292a4a70f2c28ee81cff3a6425a3ddf2c6be16
+diff --git a/webtools.jsdt b/webtools.jsdt
+index 5d89233..a155023 160000
+--- a/webtools.jsdt
++++ b/webtools.jsdt
+@@ -1 +1 @@
+-Subproject commit 5d8923315a3325e58f5128470598c6a24ece1beb
++Subproject commit a1550239ad8a2a516acba8dea9743232683b0050
+diff --git a/webtools.jsf b/webtools.jsf
+index 8b68ac1..d5bf898 160000
+--- a/webtools.jsf
++++ b/webtools.jsf
+@@ -1 +1 @@
+-Subproject commit 8b68ac192b4cb6659f74c67e7f23162482b8dcec
++Subproject commit d5bf898e17126bb4f0223b25cb8b00392cca3234
+diff --git a/webtools.servertools b/webtools.servertools
+index 551f6df..f137f2f 160000
+--- a/webtools.servertools
++++ b/webtools.servertools
+@@ -1 +1 @@
+-Subproject commit 551f6df06243ae0199241cd1d17bc030f83f911a
++Subproject commit f137f2fad2eaf3d99a60e17c51073498d082a191
+diff --git a/webtools.servertools.tests b/webtools.servertools.tests
+index 8554378..bb74149 160000
+--- a/webtools.servertools.tests
++++ b/webtools.servertools.tests
+@@ -1 +1 @@
+-Subproject commit 8554378c9c4a238ce4021a5cf90a0ffb6ed3925d
++Subproject commit bb74149884af6259f9da9c1cf59d65523453a638
+diff --git a/webtools.sourceediting b/webtools.sourceediting
+index ecb9d0c..2cd78c3 160000
+--- a/webtools.sourceediting
++++ b/webtools.sourceediting
+@@ -1 +1 @@
+-Subproject commit ecb9d0cb9b46b6cac269343056d916c33c0b4f43
++Subproject commit 2cd78c3ebc9daeada9a5204dcb816313a9f30164
+diff --git a/webtools.sourceediting.tests b/webtools.sourceediting.tests
+index f3be5d7..5ec33ca 160000
+--- a/webtools.sourceediting.tests
++++ b/webtools.sourceediting.tests
+@@ -1 +1 @@
+-Subproject commit f3be5d72e445caf5e95be9e350a1273cb2d441fc
++Subproject commit 5ec33ca8336ce8de51926b97e919ef47acb1cdfc
+diff --git a/webtools.webservices.jaxws b/webtools.webservices.jaxws
+index b7154ae..d79a28b 160000
+--- a/webtools.webservices.jaxws
++++ b/webtools.webservices.jaxws
+@@ -1 +1 @@
+-Subproject commit b7154aee9af54f6a55f7fe4cdd3dc34392aa2ef1
++Subproject commit d79a28becd0b5436062b31ecf4e3cf011dc244f8
+-- 
+1.9.3
+
diff --git a/eclipse-webtools-hashtable-api-change.patch b/eclipse-webtools-hashtable-api-change.patch
new file mode 100644
index 0000000..03881a0
--- /dev/null
+++ b/eclipse-webtools-hashtable-api-change.patch
@@ -0,0 +1,20 @@
+--- webtools.sourceediting/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/ArrayMap.java.orig	2014-05-18 18:58:12.710878911 +0100
++++ webtools.sourceediting/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/ArrayMap.java	2014-05-18 19:05:54.578643013 +0100
+@@ -59,7 +59,7 @@
+ 	 * @param value the specific value to remove from the key
+ 	 * @return The item removed from the list of values
+ 	 */
+-	public synchronized Object remove(Object key, Object value) {
++	public synchronized boolean remove(Object key, Object value) {
+ 		Object[] values = (Object[]) super.get(key);
+ 		Object removed = null;
+ 		Object[] result = null;
+@@ -87,7 +87,7 @@
+ 		if(result != null && result.length > 0)
+ 			super.put(key, result);
+ 		
+-		return removed;
++		return removed != null;
+ 	}
+ 	
+ 	public Collection values() {
diff --git a/eclipse-webtools-javax.persistence-version.patch b/eclipse-webtools-javax.persistence-version.patch
new file mode 100644
index 0000000..4c53cc9
--- /dev/null
+++ b/eclipse-webtools-javax.persistence-version.patch
@@ -0,0 +1,49 @@
+--- webtools.dali/jpa/features/org.eclipse.jpt.jpa.feature/feature.xml.orig	2014-06-21 23:00:02.310242356 +0100
++++ webtools.dali/jpa/features/org.eclipse.jpt.jpa.feature/feature.xml	2014-06-21 23:02:38.841972083 +0100
+@@ -28,13 +28,6 @@
+    </requires>
+ 
+    <plugin
+-         id="javax.persistence"
+-         download-size="0"
+-         install-size="0"
+-         version="2.1.0.qualifier"
+-         unpack="false"/>
+-
+-   <plugin
+          id="org.eclipse.jpt.jpa.annotate"
+          download-size="0"
+          install-size="0"
+@@ -94,28 +87,28 @@
+          id="org.apache.commons.collections"
+          download-size="0"
+          install-size="0"
+-         version="3.2.0.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.apache.commons.lang"
+          download-size="0"
+          install-size="0"
+-         version="2.6.0.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.apache.velocity"
+          download-size="0"
+          install-size="0"
+-         version="1.5.0.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.jdom"
+          download-size="0"
+          install-size="0"
+-         version="1.1.1.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
diff --git a/eclipse-webtools-jetty-logger-api-change.patch b/eclipse-webtools-jetty-logger-api-change.patch
new file mode 100644
index 0000000..2688538
--- /dev/null
+++ b/eclipse-webtools-jetty-logger-api-change.patch
@@ -0,0 +1,15 @@
+--- webtools.servertools/plugins/org.eclipse.wst.server.preview/src/org/eclipse/wst/server/preview/internal/WTPLogger.java.orig	2014-05-18 20:58:21.698295616 +0100
++++ webtools.servertools/plugins/org.eclipse.wst.server.preview/src/org/eclipse/wst/server/preview/internal/WTPLogger.java	2014-05-18 21:01:28.853159102 +0100
+@@ -37,6 +37,12 @@
+ 	  }
+   }
+ 
++    public void debug(String msg, long value) {
++	if (debug) {
++	    System.out.println(msg);
++	}
++    }
++
+ 	public String getName() {
+ 	  // TODO Auto-generated method stub
+ 	  return "org.eclipse.wst.server.preview.internal.WTPLogger";
diff --git a/eclipse-webtools-jst.ws.jaxws.feature.patch b/eclipse-webtools-jst.ws.jaxws.feature.patch
new file mode 100644
index 0000000..c94b9ee
--- /dev/null
+++ b/eclipse-webtools-jst.ws.jaxws.feature.patch
@@ -0,0 +1,57 @@
+--- webtools.webservices.jaxws/features/org.eclipse.jst.ws.jaxws.feature/feature.xml.orig	2014-05-11 15:27:07.587156443 +0100
++++ webtools.webservices.jaxws/features/org.eclipse.jst.ws.jaxws.feature/feature.xml	2014-05-11 15:29:58.991762902 +0100
+@@ -34,7 +34,7 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="javax.xml.ws"
+          download-size="0"
+@@ -48,7 +48,7 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.jst.ws.annotations.core"
+          download-size="0"
+@@ -60,16 +60,16 @@
+          id="javax.xml.bind"
+          download-size="0"
+          install-size="0"
+-         version="2.1.9.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="javax.xml.stream"
+          download-size="0"
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.jst.ws.jaxb.core"
+          download-size="0"
+@@ -81,14 +81,14 @@
+          id="javax.wsdl"
+          download-size="0"
+          install-size="0"
+-         version="1.6.2.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.jdom"
+          download-size="0"
+          install-size="0"
+-         version="1.1.1.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+ </feature>
diff --git a/eclipse-webtools-org.eclipse.jpt.common.utility-reflection-api-change.patch b/eclipse-webtools-org.eclipse.jpt.common.utility-reflection-api-change.patch
new file mode 100644
index 0000000..bb64465
--- /dev/null
+++ b/eclipse-webtools-org.eclipse.jpt.common.utility-reflection-api-change.patch
@@ -0,0 +1,11 @@
+--- webtools.dali/common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ClassTools.java.orig	2014-06-22 16:27:05.289163665 +0100
++++ webtools.dali/common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/ClassTools.java	2014-06-22 16:27:27.025424778 +0100
+@@ -679,7 +679,7 @@
+ 	 */
+ 	public static <T> Iterable<Constructor<T>> declaredConstructors(Class<T> javaClass) {
+ 		@SuppressWarnings("unchecked")
+-		Constructor<T>[] constructors = javaClass.getDeclaredConstructors();
++		Constructor<T>[] constructors = (Constructor<T>[]) javaClass.getDeclaredConstructors();
+ 		return makeAccessible(IterableTools.iterable(constructors));
+ 	}
+ 
diff --git a/eclipse-webtools-org.eclipse.jpt.common.utility-sql-api-change.patch b/eclipse-webtools-org.eclipse.jpt.common.utility-sql-api-change.patch
new file mode 100644
index 0000000..cdc7d91
--- /dev/null
+++ b/eclipse-webtools-org.eclipse.jpt.common.utility-sql-api-change.patch
@@ -0,0 +1,19 @@
+--- webtools.dali/common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/jdbc/DriverWrapper.java.orig	2014-06-22 16:31:01.720004048 +0100
++++ webtools.dali/common/plugins/org.eclipse.jpt.common.utility/src/org/eclipse/jpt/common/utility/internal/jdbc/DriverWrapper.java	2014-06-22 16:36:09.335604016 +0100
+@@ -14,6 +14,7 @@
+ import java.sql.DriverPropertyInfo;
+ import java.sql.SQLException;
+ import java.util.Properties;
++import java.util.logging.Logger;
+ import org.eclipse.jpt.common.utility.internal.ObjectTools;
+ 
+ /**
+@@ -95,4 +96,8 @@
+ 	public String toString() {
+ 		return ObjectTools.toString(this, this.driver);
+ 	}
++
++    public Logger getParentLogger() throws java.sql.SQLFeatureNotSupportedException {
++	return this.driver.getParentLogger();
++    }
+ }
diff --git a/eclipse-webtools-rhino-debugger-update.patch b/eclipse-webtools-rhino-debugger-update.patch
new file mode 100644
index 0000000..d8d633b
--- /dev/null
+++ b/eclipse-webtools-rhino-debugger-update.patch
@@ -0,0 +1,46 @@
+diff --git webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.rhino.debugger/src/org/eclipse/wst/jsdt/debug/rhino/debugger/shell/DebugMain.java webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.rhino.debugger/src/org/eclipse/wst/jsdt/debug/rhino/debugger/shell/DebugMain.java
+index bb19337..72d0168 100644
+--- webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.rhino.debugger/src/org/eclipse/wst/jsdt/debug/rhino/debugger/shell/DebugMain.java
++++ webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.rhino.debugger/src/org/eclipse/wst/jsdt/debug/rhino/debugger/shell/DebugMain.java
+@@ -1,5 +1,5 @@
+ /*******************************************************************************
+- * Copyright (c) 2010 IBM Corporation and others.
++ * Copyright (c) 2010, 2012 IBM Corporation and others.
+  * All rights reserved. This program and the accompanying materials
+  * are made available under the terms of the Eclipse Public License v1.0
+  * which accompanies this distribution, and is available at
+@@ -10,6 +10,7 @@
+  *******************************************************************************/
+ package org.eclipse.wst.jsdt.debug.rhino.debugger.shell;
+ 
++import java.io.IOException;
+ import java.util.ArrayList;
+ import java.util.List;
+ 
+@@ -76,9 +77,10 @@
+ 				throw Kit.codeBug();
+ 			}
+ 			if(scriptsrc != null) {
+-				Script script = Main.loadScriptFromSource(cx, scriptsrc, FROM_EVAL, 0, null);
++				Script script = cx.compileString(scriptsrc, scriptsrc, 0, null);/*Main.loadScriptFromSource(cx, scriptsrc, FROM_EVAL, 0, null);*/
+ 				if(script != null) {
+-					Main.evaluateScript(script, cx, Main.getGlobal());
++					script.exec(cx, Main.getGlobal());
++					/*Main.evaluateScript(script, cx, Main.getGlobal());*/
+ 				}
+ 			}
+ 			Object[] array = new Object[scripts.length];
+@@ -86,7 +88,12 @@
+ 			Scriptable argsObj = cx.newArray(Main.global, array);
+ 	        Main.global.defineProperty(GLOBAL_ARGUMENTS, argsObj, ScriptableObject.DONTENUM);
+ 	        for (int i = 0; i < scripts.length; i++) {
+-				Main.processFile(cx, Main.global, scripts[i]);
++	        	try {
++	        		Main.processFile(cx, Main.global, scripts[i]);
++	        	}
++	        	catch(IOException ioe) {
++	        		ioe.printStackTrace();
++	        	}
+ 			}
+ 			return null; 
+ 		}
diff --git a/eclipse-webtools-rm-javax.wsdl-version-check-from-wsdl15-feature.patch b/eclipse-webtools-rm-javax.wsdl-version-check-from-wsdl15-feature.patch
new file mode 100644
index 0000000..0975f2b
--- /dev/null
+++ b/eclipse-webtools-rm-javax.wsdl-version-check-from-wsdl15-feature.patch
@@ -0,0 +1,11 @@
+--- webtools.webservices/features/org.eclipse.wst.ws_wsdl15.feature/feature.xml.orig	2014-05-11 14:48:51.996671329 +0100
++++ webtools.webservices/features/org.eclipse.wst.ws_wsdl15.feature/feature.xml	2014-05-11 14:49:13.309871109 +0100
+@@ -24,7 +24,7 @@
+          id="javax.wsdl"
+          download-size="0"
+          install-size="0"
+-         version="1.5.1.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+ </feature>
diff --git a/eclipse-webtools-rm-jetty-webapp-and-xml-from-server_adapters-feature.patch b/eclipse-webtools-rm-jetty-webapp-and-xml-from-server_adapters-feature.patch
new file mode 100644
index 0000000..0416e09
--- /dev/null
+++ b/eclipse-webtools-rm-jetty-webapp-and-xml-from-server_adapters-feature.patch
@@ -0,0 +1,18 @@
+--- webtools.servertools/features/org.eclipse.wst.server_adapters.feature/feature.xml.orig	2014-05-18 21:18:46.013533067 +0100
++++ webtools.servertools/features/org.eclipse.wst.server_adapters.feature/feature.xml	2014-05-19 20:34:00.820123019 +0100
+@@ -46,7 +46,7 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="org.eclipse.jetty.webapp"
+          download-size="0"
+@@ -60,5 +60,5 @@
+          install-size="0"
+          version="8.1.3.qualifier"
+          unpack="false"/>
+-
++-->
+ </feature>
diff --git a/eclipse-webtools-rm-moz-js-from-jsdt-feature.patch b/eclipse-webtools-rm-moz-js-from-jsdt-feature.patch
new file mode 100644
index 0000000..5631e5e
--- /dev/null
+++ b/eclipse-webtools-rm-moz-js-from-jsdt-feature.patch
@@ -0,0 +1,17 @@
+--- webtools.jsdt/features/org.eclipse.wst.jsdt.feature/feature.xml.orig	2014-06-29 20:02:04.827198030 +0100
++++ webtools.jsdt/features/org.eclipse.wst.jsdt.feature/feature.xml	2014-06-30 19:18:48.314001764 +0100
+@@ -104,12 +104,12 @@
+          version="0.0.0"
+          unpack="false"/>
+ 
+-   <plugin
++   <!-- <plugin
+          id="org.mozilla.javascript"
+          download-size="0"
+          install-size="0"
+          version="1.7.2.qualifier"
+-         unpack="false"/>
++         unpack="false"/> -->
+ 
+    <!-- plugin
+          id="org.eclipse.wst.jsdt.debug.rhino.ui"
diff --git a/eclipse-webtools-rm-moz-js-src-from-jsdt-src-feature.patch b/eclipse-webtools-rm-moz-js-src-from-jsdt-src-feature.patch
new file mode 100644
index 0000000..733d472
--- /dev/null
+++ b/eclipse-webtools-rm-moz-js-src-from-jsdt-src-feature.patch
@@ -0,0 +1,17 @@
+--- webtools.jsdt/features/org.eclipse.wst.jsdt_sdk.feature/feature.xml.orig	2014-05-10 20:16:34.238288234 +0100
++++ webtools.jsdt/features/org.eclipse.wst.jsdt_sdk.feature/feature.xml	2014-05-10 20:17:00.021510980 +0100
+@@ -26,12 +26,12 @@
+    <includes
+          id="org.eclipse.wst.jsdt.feature.source"
+          version="0.0.0"/>
+-
++<!--
+    <plugin
+          id="org.mozilla.javascript.source"
+          download-size="0"
+          install-size="0"
+          version="1.7.2.qualifier"
+          unpack="false"/>
+-
++-->
+ </feature>
diff --git a/eclipse-webtools-rm-unavailable-plugins-from-jaxb-eclipselink-feature.patch b/eclipse-webtools-rm-unavailable-plugins-from-jaxb-eclipselink-feature.patch
new file mode 100644
index 0000000..c686672
--- /dev/null
+++ b/eclipse-webtools-rm-unavailable-plugins-from-jaxb-eclipselink-feature.patch
@@ -0,0 +1,36 @@
+--- webtools.dali/jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/feature.xml.orig	2014-05-10 22:36:34.833792208 +0100
++++ webtools.dali/jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/feature.xml	2014-05-10 22:44:18.511010760 +0100
+@@ -24,14 +24,14 @@
+       <import feature="org.eclipse.jpt.jaxb.feature" version="1.2.0"/>
+       <import feature="org.eclipse.jpt.common.eclipselink.feature" version="1.2.0"/>
+    </requires>
+-
++<!--
+    <plugin
+          id="org.eclipse.persistence.moxy"
+          download-size="0"
+          install-size="0"
+          version="2.6.0.qualifier"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.jpt.jaxb.eclipselink.core"
+          download-size="0"
+@@ -45,14 +45,14 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="org.eclipse.jpt.jaxb.eclipselink.core.schemagen"
+          download-size="0"
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.jpt.jaxb.eclipselink.branding"
+          download-size="0"
diff --git a/eclipse-webtools-rm-version-checks-and-obstacle-bundles-from-jst.ws.cxf-feature.patch b/eclipse-webtools-rm-version-checks-and-obstacle-bundles-from-jst.ws.cxf-feature.patch
new file mode 100644
index 0000000..d5c6458
--- /dev/null
+++ b/eclipse-webtools-rm-version-checks-and-obstacle-bundles-from-jst.ws.cxf-feature.patch
@@ -0,0 +1,47 @@
+--- webtools.webservices.jaxws/features/org.eclipse.jst.ws.cxf.feature/feature.xml.orig	2014-05-11 15:21:07.954787446 +0100
++++ webtools.webservices.jaxws/features/org.eclipse.jst.ws.cxf.feature/feature.xml	2014-05-11 15:24:41.189784405 +0100
+@@ -29,7 +29,7 @@
+          id="org.jdom"
+          download-size="156"
+          install-size="0"
+-         version="1.1.1.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+@@ -78,23 +78,23 @@
+          id="javax.wsdl"
+          download-size="0"
+          install-size="0"
+-         version="1.6.2.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="javax.jws"
+          download-size="0"
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="javax.xml.bind"
+          download-size="0"
+          install-size="0"
+-         version="2.1.9.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="javax.xml.stream"
+          download-size="0"
+@@ -108,5 +108,5 @@
+          install-size="0"
+          version="2.1.0.qualifier"
+          unpack="false"/>
+-
++-->
+ </feature>
diff --git a/eclipse-webtools-rm-version-checks-from-xml_core-feature.patch b/eclipse-webtools-rm-version-checks-from-xml_core-feature.patch
new file mode 100644
index 0000000..9705ce3
--- /dev/null
+++ b/eclipse-webtools-rm-version-checks-from-xml_core-feature.patch
@@ -0,0 +1,35 @@
+--- webtools.sourceediting/features/org.eclipse.wst.xml_core.feature/feature.xml.orig	2014-05-11 14:55:50.090590996 +0100
++++ webtools.sourceediting/features/org.eclipse.wst.xml_core.feature/feature.xml	2014-05-11 14:56:42.236079871 +0100
+@@ -23,28 +23,28 @@
+          id="javax.xml"
+          download-size="190"
+          install-size="190"
+-         version="1.3.4.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.apache.xml.resolver"
+          download-size="96"
+          install-size="96"
+-         version="1.2.0.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.apache.xml.serializer"
+          download-size="270"
+          install-size="270"
+-         version="2.7.1.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.apache.xerces"
+          download-size="1200"
+          install-size="1200"
+-         version="2.9.0.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
diff --git a/eclipse-webtools-wst.server.preview-manifest.patch b/eclipse-webtools-wst.server.preview-manifest.patch
new file mode 100644
index 0000000..754b8ea
--- /dev/null
+++ b/eclipse-webtools-wst.server.preview-manifest.patch
@@ -0,0 +1,16 @@
+--- webtools.servertools/plugins/org.eclipse.wst.server.preview/META-INF/MANIFEST.MF.orig	2014-06-15 18:34:47.516191990 +0100
++++ webtools.servertools/plugins/org.eclipse.wst.server.preview/META-INF/MANIFEST.MF	2014-06-15 18:35:24.031584487 +0100
+@@ -7,12 +7,12 @@
+ Bundle-Vendor: %providerName
+ Bundle-Localization: plugin
+ Export-Package: org.eclipse.wst.server.preview.internal;x-internal:=true
++Import-Package: javax.servlet
+ Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
+  org.eclipse.jetty.http,
+  org.eclipse.jetty.server,
+  org.eclipse.jetty.util,
+  org.apache.commons.logging;bundle-version="[1.0.4,2.0.0)",
+- javax.servlet;bundle-version="[2.6.0,3.1.0)",
+  org.eclipse.jetty.webapp,
+  org.eclipse.jetty.servlet,
+  org.eclipse.jetty.xml
diff --git a/eclipse-webtools-wst.ws_core.feature.patch b/eclipse-webtools-wst.ws_core.feature.patch
new file mode 100644
index 0000000..8226a08
--- /dev/null
+++ b/eclipse-webtools-wst.ws_core.feature.patch
@@ -0,0 +1,45 @@
+--- webtools.webservices/features/org.eclipse.wst.ws_core.feature/feature.xml.orig	2014-05-18 19:22:34.618071832 +0100
++++ webtools.webservices/features/org.eclipse.wst.ws_core.feature/feature.xml	2014-05-18 19:22:19.319909755 +0100
+@@ -83,14 +83,14 @@
+          id="org.apache.commons.logging"
+          download-size="0"
+          install-size="0"
+-         version="1.0.4.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+          id="org.apache.log4j"
+          download-size="0"
+          install-size="0"
+-         version="1.2.15.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+ 
+    <plugin
+@@ -123,14 +123,14 @@
+          id="javax.xml.soap"
+          download-size="0"
+          install-size="0"
+-         version="1.2.0.qualifier"/>
++         version="0.0.0"/>
+ 
+    <plugin
+          id="org.apache.axis"
+          download-size="0"
+          install-size="0"
+          version="0.0.0"/>
+-
++<!--
+    <plugin
+          id="javax.mail"
+          download-size="0"
+@@ -144,7 +144,7 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.wst.ws.service.policy"
+          download-size="0"
diff --git a/eclipse-webtools-wst.xsl.feature.patch b/eclipse-webtools-wst.xsl.feature.patch
new file mode 100644
index 0000000..55ac3c3
--- /dev/null
+++ b/eclipse-webtools-wst.xsl.feature.patch
@@ -0,0 +1,55 @@
+--- webtools.sourceediting.xsl/features/org.eclipse.wst.xsl.feature/feature.xml.orig	2014-05-19 20:55:59.542670738 +0100
++++ webtools.sourceediting.xsl/features/org.eclipse.wst.xsl.feature/feature.xml	2014-05-19 21:01:47.212727074 +0100
+@@ -76,14 +76,14 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="org.apache.commons.logging"
+          download-size="0"
+          install-size="0"
+-         version="1.0.4.qualifier"
++         version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.wst.xsl.doc"
+          download-size="0"
+@@ -104,7 +104,7 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="org.apache.bcel"
+          download-size="0"
+@@ -118,7 +118,7 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.wst.xsl.saxon"
+          download-size="0"
+@@ -153,14 +153,14 @@
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++<!--
+    <plugin
+          id="org.apache.log4j"
+          download-size="0"
+          install-size="0"
+          version="0.0.0"
+          unpack="false"/>
+-
++-->
+    <plugin
+          id="org.eclipse.wst.xsl.exslt.core"
+          download-size="0"
diff --git a/eclipse-webtools-xerces-api-change.patch b/eclipse-webtools-xerces-api-change.patch
new file mode 100644
index 0000000..0c2aec3
--- /dev/null
+++ b/eclipse-webtools-xerces-api-change.patch
@@ -0,0 +1,19 @@
+--- webtools.sourceediting/bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLValidator.java.orig	2014-05-13 22:01:13.881584751 +0100
++++ webtools.sourceediting/bundles/org.eclipse.wst.xml.core/src-validation/org/eclipse/wst/xml/core/internal/validation/XMLValidator.java	2014-05-13 22:02:08.230114683 +0100
+@@ -854,7 +854,7 @@
+     		/* (non-Javadoc)
+     		 * @see org.apache.xerces.impl.XMLErrorReporter#reportError(java.lang.String, java.lang.String, java.lang.Object[], short)
+     		 */
+-    		public void reportError(String domain, String key, Object[] arguments, short severity) throws XNIException 
++    		public String reportError(String domain, String key, Object[] arguments, short severity) throws XNIException 
+     	    {                    
+ 		      boolean reportError = true;
+               valinfo.setCurrentErrorKey(key);  
+@@ -892,6 +892,7 @@
+ 		        super.reportError(domain, key, arguments, severity);
+ 		        valinfo.getErrorCustomizationManager().considerReportedError(valinfo, key, arguments);
+ 		      }
++		      return "";
+ 		    }
+ 		};
+     }
diff --git a/eclipse-webtools-xerces-j2-api-change.patch b/eclipse-webtools-xerces-j2-api-change.patch
new file mode 100644
index 0000000..99cdb8c
--- /dev/null
+++ b/eclipse-webtools-xerces-j2-api-change.patch
@@ -0,0 +1,74 @@
+diff -ur webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/ValidationController.java webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/ValidationController.java
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/ValidationController.java	2006-04-20 07:20:47.000000000 +0100
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/ValidationController.java	2012-06-01 01:07:16.771193034 +0100
+@@ -308,18 +308,14 @@
+         {
+           return new XMLErrorReporter()
+           {
+-            public void reportError(String domain, String key, Object[] arguments, short severity) throws XNIException
++            public String reportError(String domain, String key, Object[] arguments, short severity) throws XNIException
+             {
+-              boolean reportError = true;
+-              if (key.equals("PrematureEOF"))
+-              {         
+-                reportError = false;
+-              }
+-
+-              if (reportError)
+-              {
+-                super.reportError(domain, key, arguments, severity);
+-              }
++            	if (key.equals("PrematureEOF"))
++                {         
++                 return ""; //not returning an error? I don't know circumstances, so just returning blank string
++                }
++            	//otherwise error 
++            	return super.reportError(domain, key, arguments, severity);
+             }
+           };
+         }
+diff -ur webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/wsdl11/WSDLReaderImpl.java webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/wsdl11/WSDLReaderImpl.java
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/wsdl11/WSDLReaderImpl.java	2009-01-14 18:48:52.000000000 +0000
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/wsdl11/WSDLReaderImpl.java	2012-06-01 01:07:41.640679125 +0100
+@@ -274,18 +274,14 @@
+         {
+           return new XMLErrorReporter()
+           {
+-            public void reportError(String domain, String key, Object[] arguments, short severity) throws XNIException
++            public String reportError(String domain, String key, Object[] arguments, short severity) throws XNIException
+             {
+-              boolean reportError = true;
+               if (key.equals("PrematureEOF"))
+                {         
+-                reportError = false;
+-              }
+-
+-              if (reportError)
+-               {
+-                super.reportError(domain, key, arguments, severity);
+-              }
++                return ""; //not returning an error? I don't know circumstances, so just returning blank string
++               }
++              //otherwise error 
++              return super.reportError(domain, key, arguments, severity);
+             }
+           };
+         }
+diff -ur webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java
+--- webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java	2009-01-14 18:48:51.000000000 +0000
++++ webtools.webservices/bundles/org.eclipse.wst.wsdl.validation/src/org/eclipse/wst/wsdl/validation/internal/xml/DefaultXMLValidator.java	2012-06-01 00:11:10.656489927 +0100
+@@ -307,12 +307,12 @@
+         /* (non-Javadoc)
+          * @see org.apache.xerces.impl.XMLErrorReporter#reportError(java.lang.String, java.lang.String, java.lang.Object[], short)
+          */
+-        public void reportError(String domain, String key, Object[] arguments,
++        public String reportError(String domain, String key, Object[] arguments,
+             short severity) throws XNIException
+         {
+           currentErrorKey = key;
+           currentMessageArguments = arguments;
+-          super.reportError(domain, key, arguments, severity);
++          return super.reportError(domain, key, arguments, severity);
+         }
+       };
+     }
diff --git a/eclipse-webtools.spec b/eclipse-webtools.spec
new file mode 100644
index 0000000..7e983ad
--- /dev/null
+++ b/eclipse-webtools.spec
@@ -0,0 +1,895 @@
+%global install_loc           %{_datadir}/eclipse/dropins
+
+Name:           eclipse-webtools
+Version:        3.6.0
+Release:        2%{?dist}
+Summary:        Eclipse Webtools Projects
+
+License:        EPL
+URL:            http://www.eclipse.org/webtools/
+BuildArch:      noarch
+
+# git clone git://git.eclipse.org/gitroot/webtools/webtools.releng.aggregator.git
+# pushd webtools.releng.aggregator && git checkout e691765431b6d3b2e062d6a732f0cae12912a7d6
+# git am 0001-Update-submodules-for-release-R3_6_0.patch
+# git submodule init && git submodule update && popd
+# find webtools.releng.aggregator/ -name *.jar -type f -delete
+# find webtools.releng.aggregator/ -name *.class -type f -delete
+# find webtools.releng.aggregator/ -name *.zip -type f -delete
+# rm -rf webtools.releng.aggregator/webtools.releng/releng.wtptools/api/org.eclipse.wtp.releng.wtpbuilder/
+# tar cfJv eclipse-webtools-3.6.0.tar.xz webtools.releng.aggregator/
+Source0:        %{name}-%{version}.tar.xz
+
+# Missing plugin (maybe this should be provided by eclipselink package in future)
+Source1:        http://git.eclipse.org/c/eclipselink/eclipselink.runtime.git/snapshot/eclipselink.runtime-7816e2b523adf5e65ad0c245f13ca4b59ff329f2.tar.bz2
+
+# Used to generate tarball above
+Source2:        0001-Update-submodules-for-release-R3_6_0.patch
+
+# Remove org.mozilla.javascript bundle from jsdt feature
+Patch0:         %{name}-rm-moz-js-from-jsdt-feature.patch
+
+# Remove org.mozilla.javascript.source bundle from jsdt source feature
+Patch1:         %{name}-rm-moz-js-src-from-jsdt-src-feature.patch
+
+# Remove bundles org.eclipse.persistence.moxy and
+# org.eclipse.jpt.jaxb.eclipselink.core.schemagen from
+# webtools.dali/jaxb/features/org.eclipse.jpt.jaxb.eclipselink.feature/feature.xml
+Patch2:         %{name}-rm-unavailable-plugins-from-jaxb-eclipselink-feature.patch
+
+# Dont limit version of javax.wsdl in
+# webtools.webservices/features/org.eclipse.wst.ws_wsdl15.feature/feature.xml
+Patch3:         %{name}-rm-javax.wsdl-version-check-from-wsdl15-feature.patch
+
+# Remove version checks from
+# webtools.sourceediting/features/org.eclipse.wst.xml_core.feature/feature.xml
+Patch4:         %{name}-rm-version-checks-from-xml_core-feature.patch
+
+# Remove version checks of org.jdom, javax.wsdl, javax.xml.bind, and
+# disable javax.jws and javax.xml.stream from
+# webtools.webservices.jaxws/features/org.eclipse.jst.ws.cxf.feature/feature.xml
+Patch5:         %{name}-rm-version-checks-and-obstacle-bundles-from-jst.ws.cxf-feature.patch
+
+# Remove version checks of javax.xml.bind, javax.wsdl, org.jdom, and
+# disable javax.xml.ws, javax.xml.stream, from
+# webtools.webservices.jaxws/features/org.eclipse.jst.ws.jaxws.feature/feature.xml
+Patch6:         %{name}-jst.ws.jaxws.feature.patch
+
+# Remove version checks of org.apache.commons.logging, org.apache.log4j, javax.xml.soap,
+# and disable javax.mail from
+# webtools.webservices/features/org.eclipse.wst.ws_core.feature/feature.xml
+Patch7:         %{name}-wst.ws_core.feature.patch
+
+# Remove org.eclipse.jetty.webapp and org.eclipse.jetty.xml from
+# webtools.servertools/features/org.eclipse.wst.server_adapters.feature/feature.xml
+Patch8:         %{name}-rm-jetty-webapp-and-xml-from-server_adapters-feature.patch
+
+# Disable org.apache.commons.logging, org.apache.bcel, java_cup.runtime, org.apache.log4j,
+# from webtools.sourceediting.xsl/features/org.eclipse.wst.xsl.feature/feature.xml
+Patch9:         %{name}-wst.xsl.feature.patch 
+
+# Fix "incompatible operand types" for class comparison
+# Upstream bug (patch submitted): https://bugs.eclipse.org/bugs/show_bug.cgi?id=435105
+Patch10:         0001-435105-Fix-for-compilation-error-in-Fedora.patch
+
+# Fix xerces api change (a method needs to return a String)
+Patch11:         %{name}-xerces-api-change.patch
+
+# Add unimplemented methods for javax.wsdl
+# Upstream bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=265772
+Patch12:         0001-Implement-missing-methods-needed-for-WSDL4J-1.6.2.patch
+
+# fix to work with fedora packaged xerces-j2 (more up-to-date)
+Patch13:         %{name}-xerces-j2-api-change.patch
+
+# Hashtable API change in Java 8
+Patch14:         %{name}-hashtable-api-change.patch
+
+# Update for rhino 1.7R4 - patch from eclipse bugzilla
+# https://bugs.eclipse.org/bugs/show_bug.cgi?id=387850
+Patch15:         %{name}-rhino-debugger-update.patch
+
+# Subclass needs to implement a new method signature
+Patch16:         %{name}-jetty-logger-api-change.patch
+
+# Import javax.servlet, rather than Require-Bundle
+Patch17:         %{name}-wst.server.preview-manifest.patch
+
+# Remove version check for javax.persistence
+Patch18:        %{name}-javax.persistence-version.patch
+
+# Type mismatch: cannot convert from Constructor<?>[] to Constructor<T>[]
+Patch19:        %{name}-org.eclipse.jpt.common.utility-reflection-api-change.patch
+
+# The type DriverWrapper must implement the inherited abstract method Driver.getParentLogger()
+Patch20:        %{name}-org.eclipse.jpt.common.utility-sql-api-change.patch
+
+BuildRequires:  maven-local
+BuildRequires:  git
+BuildRequires:  eclipse-license
+BuildRequires:  mvn(log4j:log4j:12)
+BuildRequires:  mvn(org.eclipse.tycho:tycho-maven-plugin)
+BuildRequires:  mvn(org.eclipse.tycho.extras:tycho-p2-extras-plugin)
+BuildRequires:  mvn(org.eclipse.persistence:javax.persistence)
+BuildRequires:  mvn(org.fedoraproject:feclipse-maven-plugin)
+BuildRequires:  mvn(org.apache.logging.log4j:log4j:pom:)
+BuildRequires:  osgi(org.apache.axis)
+BuildRequires:  osgi(org.apache.wsil4j)
+BuildRequires:  osgi(org.eclipse.jdt.core)
+BuildRequires:  osgi(org.eclipse.emf.edit.ui)
+BuildRequires:  osgi(javax.wsdl)
+BuildRequires:  osgi(org.eclipse.gef)
+BuildRequires:  osgi(org.eclipse.emf)
+BuildRequires:  osgi(org.eclipse.xsd)
+BuildRequires:  osgi(org.jdom)
+BuildRequires:  osgi(javax.xml)
+BuildRequires:  osgi(javax.mail-api)
+BuildRequires:  osgi(org.eclipse.test.performance)
+BuildRequires:  osgi(org.eclipse.jetty.http)
+BuildRequires:  osgi(org.eclipse.jetty.webapp)
+BuildRequires:  osgi(java_cup.runtime)
+BuildRequires:  osgi(org.eclipse.datatools.connectivity)
+
+%description
+Eclipse Webtools. This contains sub-packages for different sub-projects
+of Eclipse Webtools project, including Server Tools, SourceEditing Tools,
+Webservices Tools, Java EE Tools, JSF Tools, and Dali (JPA) Tools. 
+
+%package        common-core
+Summary:        WST Common Core
+
+%description common-core
+WST common core functionality.
+
+%package        common
+Summary:        WST Common UI and Faceted Project Framework
+Provides:       eclipse-wtp-common = %{version}-%{release}
+Obsoletes:      eclipse-wtp-common <= 3.5.1-3
+
+%description common
+This package includes WST common UI functionality, and faceted projects framework
+
+The Faceted Project Framework allows the plugin developer to think of projects
+as composed of units of functionality, otherwise known as facets, that can be
+added and removed by the user.
+
+%package        servertools-core
+Summary:        WST Server Core
+
+%description servertools-core
+Eclipse Webtools Server tools framework core.
+
+%package        servertools
+Summary:        Eclipse Server Tools Framework
+Provides:       eclipse-wtp-servertools = %{version}-%{release}
+Obsoletes:      eclipse-wtp-servertools <= 3.5.1-3
+
+%description servertools
+This package includes Server tools framework UI, and adapters for use
+with the WST and JST server tools.
+
+%package        sourceediting
+Summary:        Eclipse Web Developer, XML, XPath, and XSL Tools
+Provides:       eclipse-wtp-sourceediting = %{version}-%{release}
+Obsoletes:      eclipse-wtp-sourceediting <= 3.5.1-5
+
+%description sourceediting
+Eclipse Web Developer Tools, including HTML, CSS, XHTML, etc.
+
+XML, DTD and XML Schema Editors, validators, and XML Catalog support
+
+PscyhoPath XPath 2.0 Processor Feature
+
+XSLT Editor, validator, launching and debugging support
+
+JavaScript Development Tools
+
+%package        webservices
+Summary:        Eclipse Web Services Tools
+Provides:       eclipse-wtp-webservices = %{version}-%{release}
+Obsoletes:      eclipse-wtp-webservices <= 3.5.1-4
+
+%description webservices
+Eclipse Web Services Tools, featuring the Web Services
+Explorer, WSDL Editor, WS-I Validator, Service Policy Preferences, and
+more.
+
+%package        javaee
+Summary:        Eclipse Java EE Developer Tools
+Provides:       eclipse-wtp-jeetools = %{version}-%{release}
+Obsoletes:      eclipse-wtp-jeetools <= 3.5.1-4
+
+%description javaee
+Eclipse Java EE Developer Tools including APIs and models for working
+with JavaServer Pages (JSP) and the creation of Dynamic Web Projects.
+
+%package        jsf
+Summary:        Eclipse Web Tools Platform JavaServer Faces (JSF) Tools
+Provides:       eclipse-wtp-jsf = %{version}-%{release}
+Obsoletes:      eclipse-wtp-jsf <= 3.5.1-4
+
+%description jsf
+Eclipse Web Tools Platform JavaServer Faces Tools, including
+Web Page Editor and Tag Library Metadata (Apache Trinidad).
+
+%package        dali
+Summary:        Eclipse Dali Java Persistence (JPA) Tools
+Provides:       eclipse-wtp-jpa = %{version}-%{release}
+Obsoletes:      eclipse-wtp-jpa <= 3.5.1-3
+
+%description dali
+Dali Java Persistence Tools with JPA and JAXB Support.
+
+%prep
+%setup -q -n webtools.releng.aggregator
+
+tar xfj %{SOURCE1}
+pushd eclipselink.runtime-7816e2b523adf5e65ad0c245f13ca4b59ff329f2/
+cp -r jpa/org.eclipse.persistence.jpa.jpql/ ../webtools.dali/jpa/plugins/
+popd
+rm -r eclipselink.runtime-7816e2b523adf5e65ad0c245f13ca4b59ff329f2/
+
+find -name *.class -type f -delete
+find -name *.jar -type f -delete
+find -name *.zip -type f -delete
+
+# Tycho generates build version qualifier from latest commit, so
+# org.eclipse.persistence.jpa.jpql needs to be committed
+pushd webtools.dali
+git config --global user.email "eclipse-webtools at fedoraproject.org"
+git config --global user.name "Eclipse Webtools Package"
+git add jpa/plugins/org.eclipse.persistence.jpa.jpql
+git commit -m "Add org.eclipse.persistence.jpa.jpql"
+popd
+
+# Configure org.eclipse.persistence.jpa.jpql to be built as part of this build
+%pom_xpath_inject pom:project/pom:modules \
+    "<module>jpa/plugins/org.eclipse.persistence.jpa.jpql</module>" webtools.dali
+%pom_set_parent org.eclipse.webtools.dali:org.eclipse.webtools.dali:3.4.0-SNAPSHOT \
+    webtools.dali/jpa/plugins/org.eclipse.persistence.jpa.jpql
+%pom_xpath_inject pom:project/pom:parent "<relativePath>../../../</relativePath>" \
+    webtools.dali/jpa/plugins/org.eclipse.persistence.jpa.jpql
+
+# Find and delete any hidden jar or zip files
+find -type f -name *.jar -delete
+find -type f -name *.zip -delete
+
+# Jetty API change
+sed -i -e "s/MimeTypes.TEXT_HTML/MimeTypes.Type.TEXT_HTML.toString()/" \
+    webtools.servertools/plugins/org.eclipse.wst.server.preview/src/org/eclipse/wst/server/preview/internal/WTPDefaultHandler.java
+
+# Build useless jar that is needed to build but does nothing
+# See http://dev.eclipse.org/mhonarc/lists/wtp-dev/msg08607.html
+# and PERFMSR.README.txt in org.eclipse.perfmsr.core.stub/
+if [[ -e /usr/lib64/eclipse ]]; then
+    CORE_RUNTIME_JAR=`ls /usr/lib64/eclipse/plugins/org.eclipse.core.runtime_*`
+else
+    CORE_RUNTIME_JAR=`ls /usr/lib/eclipse/plugins/org.eclipse.core.runtime_*`
+fi
+pushd webtools.common/plugins/org.eclipse.jem.util/org.eclipse.perfmsr.core.stub/src
+    javac -cp %{_javadir}/felix/org.osgi.core.jar:${CORE_RUNTIME_JAR} \
+        org/eclipse/perfmsr/core/*.java
+    jar cf ../perfmsr.jar org/
+popd
+
+# Remove problematic org.eclipse.license stuff
+find -name feature.xml -type f -exec sed -i \
+    -e "s/license-feature-version=.*>/>/g" \
+    -e "s/.*license.*//g" {} \;
+
+# Fix OSGi headers in manifests
+## Remove some version ranges
+## Don't Require-Bundle stuff provided by JDK
+find -name MANIFEST.MF \
+    -exec sed -i \
+        -e "s/\(javax.wsdl\);bundle-version=..[0-9\.]\+,[0-9\.]\+../\1/g" \
+        -e "s/\(javax.xml.soap\);.*,/\1,/" \
+        -e "s/javax.jws;.*//" \
+        -e "s/javax.xml.ws.*;version=.*,\?//" \
+        -e "s/javax.xml.bind.*,\?$//g" \
+        -e "s/\(org.eclipse.jetty.*\);bundle-version=..[0-9\.]\+,[0-9\.]\+../\1/g" \
+        -e "s/org.junit;.*,/org.junit,/g" \
+    {} \;
+
+# Fix some specifics that the above breaks
+sed -i -e "s/\(org.eclipse.jdt.apt.core;.*\),/\1/" \
+    webtools.webservices.jaxws/bundles/org.eclipse.jst.ws.cxf.creation.ui/META-INF/MANIFEST.MF
+sed -i -e "s/\(org.eclipse.jdt.apt.core;.*\),/\1/" \
+    webtools.webservices.jaxws/bundles/org.eclipse.jst.ws.cxf.creation.core/META-INF/MANIFEST.MF
+sed -i -e "s/Import-Package:\s*$//" \
+    webtools.dali/jaxb/plugins/org.eclipse.jpt.jaxb.core.schemagen/META-INF/MANIFEST.MF
+
+find -name MANIFEST.MF -exec sed -i -e "/^$/d" {} \;
+
+# Make sure that axis-ant is required also. This is needed because of the not nice way
+# that Eclipse consumes Axis, from that strange wrapper bundle in "Orbit" repository.
+sed -i -e "s/org.apache.axis/org.apache.axis.tools,org.apache.axis/g" \
+    webtools.webservices/bundles/org.eclipse.jst.ws.axis.consumption.core/META-INF/MANIFEST.MF
+
+%pom_disable_module webtools.releng
+%pom_disable_module webtools.repositories
+%pom_disable_module webtools.javaee.tests
+%pom_disable_module webtools.sourceediting.xsl.tests
+%pom_disable_module webtools.sourceediting.xpath.tests
+%pom_disable_module assembly/features/org.eclipse.jpt.assembly.feature webtools.dali
+%pom_disable_module assembly/features/org.eclipse.jpt_sdk.assembly.feature webtools.dali
+%pom_disable_module assembly/features/org.eclipse.jpt.tests.assembly.feature webtools.dali
+%pom_disable_module jpa/features/org.eclipse.jpt.jpa.eclipselink.feature webtools.dali
+%pom_disable_module jpa/features/org.eclipse.jpt.jpa.eclipselink_sdk.feature webtools.dali
+%pom_disable_module jpa/features/org.eclipse.jpt.jpa.eclipselink.tests.feature webtools.dali
+%pom_disable_module jpa/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen webtools.dali
+%pom_disable_module jpa/features/org.eclipse.jpt.jpa.tests.feature webtools.dali
+%pom_disable_module jpa/tests/org.eclipse.jpt.jpa.core.tests webtools.dali
+%pom_disable_module jpa/tests/org.eclipse.jpt.jpa.core.tests.extension.resource webtools.dali
+%pom_disable_module jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests webtools.dali
+%pom_disable_module jaxb/features/org.eclipse.jpt.dbws.eclipselink_sdk.feature webtools.dali
+%pom_disable_module jaxb/features/org.eclipse.jpt.jaxb.eclipselink_sdk.feature webtools.dali
+%pom_disable_module jaxb/features/org.eclipse.jpt.dbws.eclipselink.feature webtools.dali
+%pom_disable_module jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.branding webtools.dali
+%pom_disable_module jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen webtools.dali
+%pom_disable_module jaxb/plugins/org.eclipse.jpt.dbws.eclipselink.ui webtools.dali
+%pom_disable_module jaxb/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen webtools.dali
+%pom_disable_module jaxb/tests/org.eclipse.jpt.jaxb.eclipselink.core.tests webtools.dali
+%pom_disable_module jaxb/tests/org.eclipse.jpt.jaxb.core.tests webtools.dali
+%pom_disable_module jaxb/features/org.eclipse.jpt.jaxb.eclipselink.tests.feature webtools.dali
+%pom_disable_module jaxb/features/org.eclipse.jpt.jaxb_sdk.feature webtools.dali
+%pom_disable_module jaxb/features/org.eclipse.jpt.jaxb.tests.feature webtools.dali
+%pom_disable_module jpa_diagram_editor/development/org.eclipse.jpt.jpadiagrameditor.repository webtools.dali
+%pom_disable_module jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.feature webtools.dali
+%pom_disable_module jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor_sdk.feature webtools.dali
+%pom_disable_module jpa_diagram_editor/features/org.eclipse.jpt.jpadiagrameditor.tests.feature webtools.dali
+%pom_disable_module jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.branding webtools.dali
+%pom_disable_module jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.doc.user webtools.dali
+%pom_disable_module jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui webtools.dali
+%pom_disable_module jpa_diagram_editor/tests/org.eclipse.jpt.jpadiagrameditor.ui.tests webtools.dali
+%pom_disable_module tests webtools.jsdt
+%pom_disable_module org.eclipse.wst.jsdt_tests.feature webtools.jsdt/features
+%pom_disable_module tests/org.eclipse.jst.ws.cxf.tests webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ws.jaxb.core.tests webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ws.jaxws.core.tests webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ws.jaxws.dom.integration.tests webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ws.jaxws.dom.runtime.tests webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ws.jaxws.dom.ui.tests webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ws.jaxws.testutils webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ws.jaxws.utils.tests webtools.webservices.jaxws
+%pom_disable_module tests/org.jmock webtools.webservices.jaxws
+%pom_disable_module features/org.eclipse.jst.ws.cxf_tests.feature webtools.webservices.jaxws
+%pom_disable_module features/org.eclipse.jst.ws.jaxws.assembly_tests.feature webtools.webservices.jaxws
+%pom_disable_module features/org.eclipse.jst.ws.jaxws.dom_tests.feature webtools.webservices.jaxws
+%pom_disable_module features/org.eclipse.jst.ws.jaxws_tests.feature webtools.webservices.jaxws
+%pom_disable_module tests/org.eclipse.jst.ejb.ui.tests webtools.ejb
+
+%pom_xpath_remove pom:project/pom:build/pom:plugins/pom:plugin/pom:configuration \
+    webtools.webservices.jaxws/bundles/org.eclipse.jst.ws.jaxws.core
+%pom_xpath_remove pom:project/pom:build/pom:plugins/pom:plugin/pom:configuration \
+    webtools.webservices.jaxws/bundles/org.eclipse.jst.ws.jaxws.ui
+%pom_xpath_remove pom:project/pom:build/pom:plugins/pom:plugin/pom:configuration \
+    webtools.webservices.jaxws/tests/org.eclipse.jst.ws.jaxws.core.tests
+
+%pom_xpath_inject pom:project/pom:build/pom:plugins/pom:plugin/pom:executions/pom:execution/pom:configuration/pom:excludes \
+    "<plugin id=\"org.jdom\"/><plugin id=\"javax.wsdl\"/>" webtools.webservices.jaxws/features/org.eclipse.jst.ws.cxf.feature
+%pom_xpath_inject pom:project/pom:build/pom:plugins/pom:plugin/pom:executions/pom:execution/pom:configuration/pom:excludes \
+    "<plugin id=\"org.jdom\"/><plugin id=\"javax.wsdl\"/>" webtools.webservices.jaxws/features/org.eclipse.jst.ws.jaxws.feature
+
+# Undo global replacement from earlier in prep, so upstream patch can be
+# applied more completely
+sed -i -e "s/javax.wsdl/javax.wsdl;bundle-version=\"[1.5.0,1.6.0)\"/" \
+   webtools.webservices/bundles/org.eclipse.wst.wsdl/META-INF/MANIFEST.MF
+
+%patch0 -p0 -b .orig
+%patch1 -p0 -b .orig
+%patch2 -p0 -b .orig
+%patch3 -p0 -b .orig
+%patch4 -p0 -b .orig
+%patch5 -p0 -b .orig
+%patch6 -p0 -b .orig
+%patch7 -p0 -b .orig
+%patch8 -p0 -b .orig
+%patch9 -p0 -b .orig
+%patch10 -p0 -b .orig
+%patch11 -p0 -b .orig
+%patch12 -p0 -b .orig
+%patch13 -p0 -b .orig
+%patch14 -p0 -b .orig
+%patch15 -p0 -b .orig
+%patch16 -p0 -b .orig
+%patch17 -p0 -b .orig
+%patch18 -p0 -b .orig
+%patch19 -p0 -b .orig
+%patch20 -p0 -b .orig
+
+#find -name MANIFEST.MF -exec sed -i -e 's/Bundle-ClassPath.*//g' {} \;
+
+# Skipping tests because of missing test dependencies & removed bundled jars
+%build
+%mvn_build -j -f
+
+%install
+for pkg in common-core common servertools-core servertools sourceediting webservices javaee jsf dali
+do
+    install -d -m 755 %{buildroot}%{install_loc}/webtools-${pkg}/eclipse/features
+    install -d -m 755 %{buildroot}%{install_loc}/webtools-${pkg}/eclipse/plugins
+done
+
+# Common core features
+for f in webtools.common/features/org.eclipse.wst.common_core.feature \
+         webtools.common.fproj/features/org.eclipse.wst.common.fproj.feature \
+         webtools.common.fproj/features/org.eclipse.jst.common.fproj.enablement.jdt.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-common-core/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-common-core/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# Common core plugins
+for p in webtools.common/plugins/org.eclipse.wst.common.emfworkbench.integration \
+              webtools.common/plugins/org.eclipse.wst.common.emf \
+              webtools.common/plugins/org.eclipse.wst.common.environment \
+              webtools.common/plugins/org.eclipse.wst.common.frameworks \
+              webtools.common/plugins/org.eclipse.wst.common.modulecore \
+              webtools.common/plugins/org.eclipse.wst.common.uriresolver \
+              webtools.common/plugins/org.eclipse.wst.validation \
+              webtools.common/plugins/org.eclipse.wst.common.core \
+              webtools.common/plugins/org.eclipse.jem.util \
+              webtools.common.fproj/plugins/org.eclipse.jst.common.project.facet.core \
+              webtools.common.fproj/plugins/org.eclipse.jst.common.project.facet.ui \
+              webtools.common.fproj/plugins/org.eclipse.wst.common.project.facet.core \
+              webtools.common.fproj/plugins/org.eclipse.wst.common.project.facet.ui
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-common-core/eclipse/plugins
+    fi
+done
+
+# Servertools core feature
+mkdir %{buildroot}%{install_loc}/webtools-servertools-core/eclipse/features/org.eclipse.wst.server_core.feature
+unzip -q -o -d %{buildroot}%{install_loc}/webtools-servertools-core/eclipse/features/org.eclipse.wst.server_core.feature \
+    webtools.servertools/features/org.eclipse.wst.server_core.feature/target/*-SNAPSHOT.jar
+
+# Servertools core plugins
+for p in webtools.servertools/plugins/org.eclipse.wst.server.core \
+              webtools.servertools/plugins/org.eclipse.wst.internet.monitor.core
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-servertools-core/eclipse/plugins
+    fi
+done
+
+# Common features
+for f in webtools.common/features/org.eclipse.wst.common_ui.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-common/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-common/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# Common plugins
+for p in webtools.common/plugins/org.eclipse.wst.common.frameworks.ui \
+              webtools.common/plugins/org.eclipse.wst.common.infopop \
+              webtools.common.snippets/org.eclipse.wst.common.snippets \
+              webtools.common/plugins/org.eclipse.wst.common.ui \
+              webtools.common/plugins/org.eclipse.wst.common.modulecore.ui \
+              webtools.common/plugins/org.eclipse.wst.internet.cache \
+              webtools.common/plugins/org.eclipse.wst.validation.ui \
+              webtools.common/docs/org.eclipse.wst.validation.infopop
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-common/eclipse/plugins
+    fi
+done
+
+# Servertools features
+for f in webtools.servertools/features/org.eclipse.wst.server_userdoc.feature \
+         webtools.servertools/features/org.eclipse.wst.server_ui.feature \
+         webtools.servertools/features/org.eclipse.wst.server_adapters.feature \
+         webtools.servertools/features/org.eclipse.jst.server_adapters.feature \
+         webtools.servertools/features/org.eclipse.jst.server_adapters.ext.feature \
+         webtools.servertools/features/org.eclipse.jst.server_ui.feature \
+         webtools.servertools/features/org.eclipse.jst.server_userdoc.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-servertools/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-common/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# Servertools plugins
+for p in webtools.servertools/plugins/org.eclipse.wst.internet.monitor.ui \
+              webtools.servertools/plugins/org.eclipse.wst.server.ui \
+              webtools.servertools/plugins/org.eclipse.wst.server.discovery \
+              webtools.servertools/plugins/org.eclipse.jst.server.preview.adapter \
+              webtools.servertools/plugins/org.eclipse.jst.server.tomcat.core \
+              webtools.servertools/plugins/org.eclipse.jst.server.tomcat.ui \
+              webtools.servertools/plugins/org.eclipse.jst.server.generic.jonas \
+              webtools.servertools/plugins/org.eclipse.wst.server.preview.adapter \
+              webtools.servertools/plugins/org.eclipse.wst.server.preview \
+              webtools.servertools/plugins/org.eclipse.wst.server.http.core \
+              webtools.servertools/plugins/org.eclipse.wst.server.http.ui \
+              webtools.servertools/plugins/org.eclipse.jst.server.core \
+              webtools.servertools/plugins/org.eclipse.jst.server.generic.core \
+              webtools.servertools/plugins/org.eclipse.jst.server.ui \
+              webtools.servertools/plugins/org.eclipse.jst.server.generic.ui \
+              webtools.servertools.docs/docs/org.eclipse.wst.server.ui.doc.user \
+              webtools.servertools.docs/docs/org.eclipse.wst.server.ui.infopop \
+              webtools.servertools.docs/docs/org.eclipse.jst.server.ui.infopop \
+              webtools.servertools.docs/docs/org.eclipse.jst.server.ui.doc.user
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-servertools/eclipse/plugins
+    fi
+done
+
+ln -s %{_javadir}/jetty/jetty-webapp.jar \
+    %{buildroot}%{install_loc}/webtools-servertools/eclipse/plugins
+ln -s %{_javadir}/jetty/jetty-xml.jar \
+    %{buildroot}%{install_loc}/webtools-servertools/eclipse/plugins
+ln -s %{_javadir}/tomcat-servlet-3.0-api.jar \
+    %{buildroot}%{install_loc}/webtools-servertools/eclipse/plugins
+
+# Sourceediting features
+for f in webtools.sourceediting/features/org.eclipse.wst.xml_ui.feature \
+         webtools.sourceediting/features/org.eclipse.wst.web_core.feature \
+         webtools.sourceediting/features/org.eclipse.wst.xml_userdoc.feature \
+         webtools.sourceediting/features/org.eclipse.wst.web_ui.feature \
+         webtools.sourceediting/features/org.eclipse.wst.web_userdoc.feature \
+         webtools.sourceediting/features/org.eclipse.wst.xml_core.feature \
+         webtools.sourceediting.xpath/features/org.eclipse.wst.xml.xpath2.processor.feature \
+         webtools.sourceediting.xsl/features/org.eclipse.wst.xsl.feature \
+         webtools.jsdt/features/org.eclipse.wst.jsdt.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# Sourceediting plugins
+for p in webtools.jsdt/bundles/org.eclipse.wst.jsdt.core \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.manipulation \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.ui \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.support.firefox \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.support.ie \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.core \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.transport \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.crossfire \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.rhino \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.rhino.debugger \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.ui \
+         webtools.jsdt/bundles/org.eclipse.wst.jsdt.debug.rhino.ui \
+         webtools.jsdt/docs/org.eclipse.wst.jsdt.doc \
+         webtools.sourceediting/bundles/org.eclipse.wst.standard.schemas \
+         webtools.sourceediting/bundles/org.eclipse.wst.xml.core \
+         webtools.sourceediting/bundles/org.eclipse.wst.css.core \
+         webtools.sourceediting/bundles/org.eclipse.wst.html.core \
+         webtools.sourceediting/bundles/org.eclipse.wst.dtd.core \
+         webtools.sourceediting/bundles/org.eclipse.wst.xsd.core \
+         webtools.sourceediting/bundles/org.eclipse.wst.sse.core \
+         webtools.sourceediting/bundles/org.eclipse.wst.dtd.ui \
+         webtools.sourceediting/docs/org.eclipse.wst.dtd.ui.infopop \
+         webtools.sourceediting/docs/org.eclipse.wst.sse.ui.infopop \
+         webtools.sourceediting/docs/org.eclipse.wst.xml.ui.infopop \
+         webtools.sourceediting/bundles/org.eclipse.wst.sse.ui \
+         webtools.sourceediting/bundles/org.eclipse.wst.xml.ui \
+         webtools.sourceediting/bundles/org.eclipse.wst.xsd.ui \
+         webtools.sourceediting/docs/org.eclipse.wst.dtdeditor.doc.user \
+         webtools.sourceediting/docs/org.eclipse.wst.sse.doc.user \
+         webtools.sourceediting/docs/org.eclipse.wst.xmleditor.doc.user \
+         webtools.sourceediting/docs/org.eclipse.wst.xsdeditor.doc.user \
+         webtools.sourceediting/docs/org.eclipse.wst.doc.user \
+         webtools.sourceediting/docs/org.eclipse.wst.webtools.doc.user \
+         webtools.sourceediting/bundles/org.eclipse.wst.jsdt.web.core \
+         webtools.sourceediting/bundles/org.eclipse.wst.jsdt.web.ui \
+         webtools.sourceediting/docs/org.eclipse.wst.html.ui.infopop \
+         webtools.sourceediting/bundles/org.eclipse.wst.css.ui \
+         webtools.sourceediting/bundles/org.eclipse.wst.html.ui \
+         webtools.sourceediting.xpath/bundles/org.eclipse.wst.xml.xpath2.processor \
+         webtools.sourceediting.xpath/bundles/org.eclipse.wst.xml.xpath2.wtptypes \
+         webtools.sourceediting.xpath/bundles/org.eclipse.wst.xml.xpath2 \
+         webtools.sourceediting.xpath/docs/org.eclipse.wst.xml.xpath2.processor.doc.user \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.core \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.debug.ui \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.launching \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.xalan \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.ui \
+         webtools.sourceediting.xpath/bundles/org.eclipse.wst.xml.xpath.ui \
+         webtools.sourceediting.xsl/docs/org.eclipse.wst.xsl.doc \
+         webtools.sourceediting.xpath/bundles/org.eclipse.wst.xml.xpath.core \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.saxon \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.jaxp.debug \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.jaxp.debug.ui \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.jaxp.launching \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.exslt.core \
+         webtools.sourceediting.xsl/bundles/org.eclipse.wst.xsl.exslt.ui \
+         webtools.javaee/docs/org.eclipse.wst.web.ui.infopop \
+         webtools.javaee/plugins/org.eclipse.wst.web.ui \
+         webtools.javaee/plugins/org.eclipse.wst.web
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+    fi
+done
+
+ln -s %{_javadir}/xml-commons-apis.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/xml-resolver.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/xalan-j2-serializer.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/xalan-j2.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/xerces-j2.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/java_cup-runtime.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/apache-commons-logging.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/bcel.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+ln -s %{_javadir}/log4j.jar \
+    %{buildroot}%{install_loc}/webtools-sourceediting/eclipse/plugins
+
+# Webservices features
+for f in webtools.webservices/features/org.eclipse.wst.ws_core.feature \
+         webtools.webservices/features/org.eclipse.wst.ws_ui.feature \
+         webtools.webservices/features/org.eclipse.wst.ws_userdoc.feature \
+         webtools.webservices/features/org.eclipse.wst.ws_wsdl15.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-webservices/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-webservices/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# Webservices plugins
+for p in webtools.webservices/bundles/org.eclipse.wst.command.env \
+         webtools.webservices/bundles/org.eclipse.wst.command.env.core \
+         webtools.webservices/bundles/org.eclipse.wst.ws \
+         webtools.webservices/bundles/org.eclipse.wst.ws.parser \
+         webtools.webservices/bundles/org.eclipse.wst.wsdl \
+         webtools.webservices/bundles/org.eclipse.wst.wsdl.validation \
+         webtools.webservices/bundles/org.eclipse.wst.wsi \
+         webtools.webservices/bundles/org.eclipse.wst.ws.service.policy \
+         webtools.webservices/bundles/org.eclipse.wst.command.env.ui \
+         webtools.webservices/docs/org.eclipse.wst.command.env.infopop \
+         webtools.webservices/docs/org.eclipse.wst.ws.infopop \
+         webtools.webservices/bundles/org.eclipse.wst.ws.explorer \
+         webtools.webservices/bundles/org.eclipse.wst.ws.ui \
+         webtools.webservices/bundles/org.eclipse.wst.wsdl.ui \
+         webtools.webservices/bundles/org.eclipse.wst.wsi.ui \
+         webtools.webservices/bundles/org.eclipse.wst.ws.service.policy.ui \
+         webtools.webservices/docs/org.eclipse.wst.wsdl.ui.doc.user \
+         webtools.webservices/docs/org.eclipse.wst.wsi.ui.doc.user \
+         webtools.webservices/docs/org.eclipse.wst.command.env.doc.user
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+    fi
+done
+
+ln -s %{_javadir}/uddi4j.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/wsdl4j.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/wsil4j.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/apache-commons-codec.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/apache-commons-discovery.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/javamail/javax.mail.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/axis/axis.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/axis/axis-ant.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/axis/jaxrpc.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+ln -s %{_javadir}/axis/saaj.jar \
+    %{buildroot}%{install_loc}/webtools-webservices/eclipse/plugins
+
+# Javaee features
+for f in webtools.javaee/features/org.eclipse.jst.enterprise_core.feature \
+         webtools.javaee/features/org.eclipse.jst.enterprise_ui.feature \
+         webtools.javaee/features/org.eclipse.jst.enterprise_userdoc.feature \
+         webtools.javaee/features/org.eclipse.jst.web_core.feature \
+         webtools.javaee/features/org.eclipse.jst.web_ui.feature \
+         webtools.javaee/features/org.eclipse.jst.doc.user.feature \
+         webtools.javaee/features/org.eclipse.jst.web_userdoc.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-javaee/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-javaee/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# Javaee plugins
+for p in webtools.javaee/plugins/org.eclipse.jst.j2ee.webservice \
+         webtools.ejb/plugins/org.eclipse.jst.j2ee.ejb \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee.jca \
+         webtools.ejb/plugins/org.eclipse.jst.jee.ejb \
+         webtools.ejb/docs/org.eclipse.jst.ejb.doc.user \
+         webtools.javaee/docs/org.eclipse.jst.j2ee.doc.user \
+         webtools.webservices/docs/org.eclipse.jst.ws.axis.ui.doc.user \
+         webtools.webservices/docs/org.eclipse.jst.ws.consumption.ui.doc.user \
+         webtools.webservices/docs/org.eclipse.jst.ws.doc.user \
+         webtools.sourceediting/bundles/org.eclipse.wst.jsdt.web.support.jsp \
+         webtools.javaee/plugins/org.eclipse.jst.common.annotations.ui \
+         webtools.common/plugins/org.eclipse.jst.common.ui \
+         webtools.sourceediting/bundles/org.eclipse.jst.jsp.ui \
+         webtools.sourceediting/docs/org.eclipse.jst.jsp.ui.infopop \
+         webtools.webservices/bundles/org.eclipse.jst.ws \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee.ui \
+         webtools.webservices/bundles/org.eclipse.jst.ws.axis.creation.ui \
+         webtools.webservices/bundles/org.eclipse.jst.ws.axis.consumption.ui \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee.jca.ui \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee.navigator.ui \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee.webservice.ui \
+         webtools.webservices/bundles/org.eclipse.jst.ws.axis.consumption.core \
+         webtools.javaee/plugins/org.eclipse.jst.servlet.ui \
+         webtools.webservices/bundles/org.eclipse.jst.ws.ui \
+         webtools.webservices/bundles/org.eclipse.jst.ws.uddiregistry \
+         webtools.webservices/bundles/org.eclipse.jst.ws.creation.ui \
+         webtools.webservices/bundles/org.eclipse.jst.ws.consumption.ui \
+         webtools.webservices/bundles/org.eclipse.jst.ws.consumption \
+         webtools.javaee/docs/org.eclipse.jst.j2ee.infopop \
+         webtools.javaee/docs/org.eclipse.jst.servlet.ui.infopop \
+         webtools.webservices/docs/org.eclipse.jst.ws.axis.infopop \
+         webtools.webservices/docs/org.eclipse.jst.ws.consumption.infopop \
+         webtools.webservices/docs/org.eclipse.jst.ws.infopop \
+         webtools.webservices/bundles/org.eclipse.jst.ws.creation.ejb.ui \
+         webtools.ejb/plugins/org.eclipse.jst.ejb.ui \
+         webtools.ejb/plugins/org.eclipse.jst.j2ee.ejb.annotations.ui \
+         webtools.ejb/plugins/org.eclipse.jst.j2ee.ejb.annotation.model \
+         webtools.ejb/plugins/org.eclipse.jst.j2ee.ejb.annotations.emitter \
+         webtools.ejb/plugins/org.eclipse.jst.j2ee.ejb.annotations.xdoclet \
+         webtools.ejb/plugins/org.eclipse.jst.j2ee.xdoclet.runtime \
+         webtools.javaee/plugins/org.eclipse.jst.jee.ui \
+         webtools.ejb/docs/org.eclipse.jst.ejb.ui.infopop \
+         webtools.webservices/bundles/org.eclipse.jst.ws.jaxrs.core \
+         webtools.webservices/bundles/org.eclipse.jst.ws.jaxrs.ui \
+         webtools.javaee/plugins/org.eclipse.jst.common.annotations.core \
+         webtools.javaee/plugins/org.eclipse.jem.beaninfo.vm.common \
+         webtools.javaee/plugins/org.eclipse.jem \
+         webtools.javaee/plugins/org.eclipse.jem.beaninfo.vm \
+         webtools.javaee/plugins/org.eclipse.jem.proxy \
+         webtools.javaee/plugins/org.eclipse.jem.workbench \
+         webtools.javaee/plugins/org.eclipse.jem.beaninfo \
+         webtools.javaee/plugins/org.eclipse.jst.common.frameworks \
+         webtools.javaee/plugins/org.eclipse.jst.common.annotations.controller \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee.web \
+         webtools.sourceediting/bundles/org.eclipse.jst.jsp.core \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee.core \
+         webtools.javaee/plugins/org.eclipse.jst.j2ee \
+         webtools.javaee/plugins/org.eclipse.jst.jee \
+         webtools.javaee/plugins/org.eclipse.jst.jee.web \
+         webtools.sourceediting/bundles/org.eclipse.jst.standard.schemas \
+         webtools.jsf.docs/plugins/org.eclipse.jst.jsf.doc.user
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-javaee/eclipse/plugins
+    fi
+done
+
+# JSF features
+for f in webtools.jsf/jsf/features/org.eclipse.jsf.feature \
+         webtools.jsf/jsf/features/org.eclipse.jst.webpageeditor.feature \
+         webtools.jsf/jsf/features/org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-jsf/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-jsf/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# JSF plugins
+for p in webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.common \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.common.runtime \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.common.ui \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.core \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.facelet.core \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.facelet.ui \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.facesconfig \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.ui \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.standard.tagsupport \
+         webtools.jsf/assembly/plugins/org.eclipse.jsf.branding \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.jsf.apache.trinidad.tagsupport \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.pagedesigner \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.pagedesigner.jsf.ui \
+         webtools.jsf/jsf/plugins/org.eclipse.jst.pagedesigner.jsp.core
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-jsf/eclipse/plugins
+    fi
+done
+
+# Dali features
+for f in webtools.dali/common/features/org.eclipse.jpt.common.eclipselink.feature \
+         webtools.dali/common/features/org.eclipse.jpt.common.feature \
+         webtools.dali/jaxb/features/org.eclipse.jpt.jaxb.feature \
+         webtools.dali/jpa/features/org.eclipse.jpt.jpa.feature
+do
+    _feature=$(echo ${f} | sed -e "s|.*/org|org|g")
+    mkdir %{buildroot}%{install_loc}/webtools-dali/eclipse/features/${_feature}
+    unzip -q -o -d %{buildroot}%{install_loc}/webtools-dali/eclipse/features/${_feature} \
+        ${f}/target/*-SNAPSHOT.jar
+done
+
+# Dali plugins
+for p in webtools.dali/common/plugins/org.eclipse.jpt.common.eclipselink.core \
+webtools.dali/common/plugins/org.eclipse.jpt.common.eclipselink.branding \
+webtools.dali/common/plugins/org.eclipse.jpt.common.utility \
+webtools.dali/common/plugins/org.eclipse.jpt.common.core \
+webtools.dali/common/plugins/org.eclipse.jpt.common.ui \
+webtools.dali/common/plugins/org.eclipse.jpt.common.branding \
+webtools.dali/jaxb/plugins/org.eclipse.jpt.jaxb.core \
+webtools.dali/jaxb/plugins/org.eclipse.jpt.jaxb.core.schemagen \
+webtools.dali/jaxb/plugins/org.eclipse.jpt.jaxb.ui \
+webtools.dali/jaxb/plugins/org.eclipse.jpt.jaxb.branding \
+webtools.dali/jpa/plugins/org.eclipse.jpt.jpa.annotate \
+webtools.dali/jpa/plugins/org.eclipse.jpt.jpa.core \
+webtools.dali/jpa/plugins/org.eclipse.jpt.jpa.db \
+webtools.dali/jpa/plugins/org.eclipse.jpt.jpa.db.ui \
+webtools.dali/jpa/plugins/org.eclipse.jpt.jpa.gen \
+webtools.dali/jpa/plugins/org.eclipse.jpt.jpa.ui \
+webtools.dali/jpa/plugins/org.eclipse.jpt.doc.user \
+webtools.dali/jpa/plugins/org.eclipse.jpt.jpa.branding \
+webtools.dali/jpa/plugins/org.eclipse.persistence.jpa.jpql
+do
+    if [[ -d ${p}/target ]]; then
+        install -p ${p}/target/*-SNAPSHOT.jar \
+            %{buildroot}%{install_loc}/webtools-dali/eclipse/plugins
+    fi
+done
+
+ln -s %{_javadir}/jdom.jar \
+    %{buildroot}%{install_loc}/webtools-dali/eclipse/plugins
+ln -s %{_javadir}/apache-commons-collections.jar \
+    %{buildroot}%{install_loc}/webtools-dali/eclipse/plugins
+ln -s %{_javadir}/apache-commons-lang.jar \
+    %{buildroot}%{install_loc}/webtools-dali/eclipse/plugins
+ln -s %{_javadir}/velocity.jar \
+    %{buildroot}%{install_loc}/webtools-dali/eclipse/plugins
+
+%files common-core
+%{install_loc}/webtools-common-core
+%doc webtools.common/features/org.eclipse.jst.common_core.feature.patch/epl-v10.html
+
+%files servertools-core
+%{install_loc}/webtools-servertools-core
+
+%files common
+%{install_loc}/webtools-common
+
+%files servertools
+%{install_loc}/webtools-servertools
+
+%files sourceediting
+%{install_loc}/webtools-sourceediting
+
+%files webservices
+%{install_loc}/webtools-webservices
+
+%files javaee
+%{install_loc}/webtools-javaee
+
+%files jsf
+%{install_loc}/webtools-jsf
+
+%files dali
+%{install_loc}/webtools-dali
+
+%changelog
+* Tue Jul 01 2014 Gerard Ryan <gerard at ryan.lt> - 3.6.0-2
+- Initial RPM
diff --git a/sources b/sources
index e69de29..71524f8 100644
--- a/sources
+++ b/sources
@@ -0,0 +1,2 @@
+5bbcde12d3bb494188cd1c709aa75664  eclipse-webtools-3.6.0.tar.xz
+24b447da18a916d63632f4d7ebeac4d2  eclipselink.runtime-7816e2b523adf5e65ad0c245f13ca4b59ff329f2.tar.bz2


More information about the scm-commits mailing list