diff --git a/patches/pax-exam-patch-weld/pom.xml b/patches/pax-exam-patch-weld/pom.xml deleted file mode 100644 index 4f8d77006..000000000 --- a/patches/pax-exam-patch-weld/pom.xml +++ /dev/null @@ -1,42 +0,0 @@ - - 4.0.0 - - org.ops4j.pax - exam - 4.13.6-SNAPSHOT - ../../pom - - org.ops4j.pax.exam - pax-exam-patch-weld - - OPS4J Pax Exam Patch for Weld Resource Loader - - - - - org.jboss.weld.servlet - weld-servlet-core - - - - org.apache.geronimo.specs - geronimo-atinject_1.0_spec - provided - - - - javax.enterprise - cdi-api - provided - - - - javax.servlet - javax.servlet-api - 3.1.0 - provided - - - - - \ No newline at end of file diff --git a/patches/pax-exam-patch-weld/src/main/java/org/jboss/weld/environment/deployment/WeldResourceLoader.java b/patches/pax-exam-patch-weld/src/main/java/org/jboss/weld/environment/deployment/WeldResourceLoader.java deleted file mode 100644 index b3d481b49..000000000 --- a/patches/pax-exam-patch-weld/src/main/java/org/jboss/weld/environment/deployment/WeldResourceLoader.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2008, Red Hat, Inc., and individual contributors - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * http://www.apache.org/licenses/LICENSE-2.0 - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jboss.weld.environment.deployment; - -import java.io.IOException; -import java.net.URL; -import java.util.Collection; -import java.util.Iterator; -import java.util.List; - -import org.jboss.weld.environment.util.Collections; -import org.jboss.weld.resources.spi.ResourceLoader; -import org.jboss.weld.resources.spi.ResourceLoadingException; - -/** - * A simple resource loader. - * Uses {@link WeldResourceLoader}'s classloader if the Thread Context Classloader isn't available - * - * @author Pete Muir - */ -public class WeldResourceLoader implements ResourceLoader { - - public Class classForName(String name) { - - try { - return getClassLoader().loadClass(name); - } - catch (ClassNotFoundException e) { - throw new ResourceLoadingException(e); - } - catch (LinkageError e) { - throw new ResourceLoadingException(e); - } - } - - public URL getResource(String name) { - final ClassLoader tccl = Thread.currentThread().getContextClassLoader(); - if (tccl != null) { - return tccl.getResource(name); - } - else { - return getClass().getResource(name); - } - } - - public Collection getResources(String name) { - try { - final ClassLoader tccl = Thread.currentThread().getContextClassLoader(); - if (tccl != null) { - List urls = Collections.asList(tccl.getResources(name)); - Iterator it = urls.iterator(); - while (it.hasNext()) { - URL url = it.next(); - if (!url.toString().contains("Pax-Exam-Probe")) { - it.remove(); - } - } - return urls; - } - else { - return Collections.asList(getClass().getClassLoader().getResources(name)); - } - } - catch (IOException e) { - throw new ResourceLoadingException(e); - } - } - - public void cleanup() { - } - - public static ClassLoader getClassLoader() { - final ClassLoader tccl = Thread.currentThread().getContextClassLoader(); - if (tccl != null) { - return tccl; - } - else { - return WeldResourceLoader.class.getClassLoader(); - } - } - -} diff --git a/patches/pax-exam-patch-weld/src/main/java/org/jboss/weld/environment/servlet/deployment/WebAppBeanArchiveScanner.java b/patches/pax-exam-patch-weld/src/main/java/org/jboss/weld/environment/servlet/deployment/WebAppBeanArchiveScanner.java deleted file mode 100644 index 2f6000d31..000000000 --- a/patches/pax-exam-patch-weld/src/main/java/org/jboss/weld/environment/servlet/deployment/WebAppBeanArchiveScanner.java +++ /dev/null @@ -1,123 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2014, Red Hat, Inc. and/or its affiliates, and individual - * contributors by the @authors tag. See the copyright.txt in the - * distribution for a full listing of individual contributors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * http://www.apache.org/licenses/LICENSE-2.0 - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jboss.weld.environment.servlet.deployment; - -import java.io.File; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.Iterator; -import java.util.Map; -import java.util.Map.Entry; - -import javax.servlet.ServletContext; - -import org.jboss.weld.bootstrap.api.Bootstrap; -import org.jboss.weld.bootstrap.spi.BeansXml; -import org.jboss.weld.environment.deployment.WeldResourceLoader; -import org.jboss.weld.environment.deployment.discovery.DefaultBeanArchiveScanner; -import org.jboss.weld.environment.servlet.logging.WeldServletLogger; -import org.jboss.weld.environment.servlet.util.Servlets; -import org.jboss.weld.resources.spi.ResourceLoader; - -/** - * Web application bean archive scanner. - * - * @author Martin Kouba - */ -public class WebAppBeanArchiveScanner extends DefaultBeanArchiveScanner { - - static final String WEB_INF = "/WEB-INF"; - - static final String WEB_INF_CLASSES = WEB_INF + "/classes"; - - static final String WEB_INF_BEANS_XML = WEB_INF + "/beans.xml"; - - static final String WEB_INF_CLASSES_BEANS_XML = WEB_INF_CLASSES + "/META-INF/beans.xml"; - - static final String WEB_INF_CLASSES_FILE_PATH = File.separatorChar + "WEB-INF" + File.separatorChar + "classes"; - - static final String[] RESOURCES = { WEB_INF_BEANS_XML, WEB_INF_CLASSES_BEANS_XML }; - - private final ServletContext servletContext; - private final ResourceLoader resourceLoader; - - /** - * - * @param resourceLoader - * @param bootstrap - * @param servletContext - */ - public WebAppBeanArchiveScanner(ResourceLoader resourceLoader, Bootstrap bootstrap, ServletContext servletContext) { - super(resourceLoader, bootstrap); - this.resourceLoader = resourceLoader; - this.servletContext = servletContext; - } - - @Override - public Map scan() { - - String separator = servletContext.getContextPath(); - if (separator.length() == 0) { - // Root context - separator = WEB_INF; - } - - Map resultsMap = super.scan(); - - // All previous results for WEB-INF/classes must be ignored - for (Iterator> iterator = resultsMap.entrySet().iterator(); iterator.hasNext();) { - Entry entry = iterator.next(); - String path = entry.getKey().toString(); - if (path.contains(WEB_INF_CLASSES_FILE_PATH) || path.contains(WEB_INF_CLASSES) || !path.contains("Pax-Exam-Probe")) { - iterator.remove(); - } else { - entry.getValue().extractBeanArchiveId(separator); - } - } - - try { - // WEB-INF/classes - URL beansXmlUrl = null; - for (String resource : RESOURCES) { - URL resourceUrl; - resourceUrl = servletContext.getResource(resource); - if (resourceUrl != null) { - if (beansXmlUrl != null) { - WeldServletLogger.LOG.foundBothConfiguration(beansXmlUrl); - } else { - beansXmlUrl = resourceUrl; - } - } - } - if (beansXmlUrl != null) { - BeansXml beansXml = bootstrap.parse(beansXmlUrl); - if (accept(beansXml)) { - File webInfClasses = Servlets.getRealFile(servletContext, WEB_INF_CLASSES); - if (webInfClasses != null) { - resultsMap.put(beansXmlUrl, new ScanResult(beansXml, webInfClasses.getPath()).extractBeanArchiveId(separator)); - } else { - // The WAR is not extracted to the file system - make use of ServletContext.getResourcePaths() - resultsMap.put(beansXmlUrl, new ScanResult(beansXml, WEB_INF_CLASSES)); - } - } - } - } catch (MalformedURLException e) { - throw WeldServletLogger.LOG.errorLoadingResources(e); - } - return resultsMap; - } -} diff --git a/pom.xml b/pom.xml index 293b674be..f796c4fd7 100644 --- a/pom.xml +++ b/pom.xml @@ -60,8 +60,6 @@ maven/archetypes/exam-osgi-archetype maven/archetypes/exam-karaf-archetype - patches/pax-exam-patch-weld -