%global pkg_name jersey %{?scl:%scl_package %{pkg_name}} %global with_grizzly 1 # Use jetty 9.1.1.v20140108. %bcond_with jetty %{?java_common_find_provides_and_requires} Name: %{?scl_prefix}jersey Version: 2.18 Release: 3.3%{?dist} Summary: JAX-RS (JSR 311) production quality Reference Implementation # One file in jersey-core/ is under ASL 2.0 license # https://java.net/jira/browse/JERSEY-2870 License: (CDDL or GPLv2 with exceptions) and ASL 2.0 URL: http://jersey.java.net/ Source0: https://github.com/jersey/jersey/archive/%{version}.tar.gz Source1: http://www.apache.org/licenses/LICENSE-2.0.txt # Remove repackaged dependencies: guava, atinject Patch0: jersey-2.18-use-system-libraries.patch # Support fo servlet 3.1 apis Patch1: jersey-2.17-mvc-jsp-servlet31.patch # Update istack plugin reference Patch2: jersey-2.17-new-istack-plugin.patch BuildRequires: %{?scl_prefix_java_common}maven-local BuildRequires: %{?scl_prefix}mvn(com.fasterxml.jackson.core:jackson-annotations) BuildRequires: %{?scl_prefix}mvn(com.fasterxml.jackson.jaxrs:jackson-jaxrs-base) BuildRequires: %{?scl_prefix}mvn(com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider) BuildRequires: %{?scl_prefix}mvn(com.google.guava:guava) BuildRequires: %{?scl_prefix_maven}mvn(com.sun.istack:istack-commons-maven-plugin) BuildRequires: %{?scl_prefix}mvn(javax.annotation:javax.annotation-api) BuildRequires: %{?scl_prefix_java_common}mvn(javax.inject:javax.inject) BuildRequires: %{?scl_prefix}mvn(javax.ws.rs:javax.ws.rs-api) BuildRequires: %{?scl_prefix}mvn(javax.xml.bind:jaxb-api) BuildRequires: %{?scl_prefix_java_common}mvn(org.apache.httpcomponents:httpclient) BuildRequires: %{?scl_prefix_maven}mvn(org.apache.felix:maven-bundle-plugin) BuildRequires: %{?scl_prefix}mvn(org.glassfish.hk2:hk2-api) BuildRequires: %{?scl_prefix}mvn(org.glassfish.hk2:hk2-bom:pom:) BuildRequires: %{?scl_prefix}mvn(org.glassfish.hk2:hk2-locator) BuildRequires: %{?scl_prefix}mvn(org.glassfish.hk2:osgi-resource-locator) BuildArch: noarch %description Jersey is the open source JAX-RS (JSR 311) production quality Reference Implementation for building RESTful Web services. %package test-framework Summary: Jersey Test Framework %description test-framework %{summary}. %package javadoc Summary: Javadoc for %{pkg_name} %description javadoc This package contains javadoc for %{pkg_name}. %prep %{?scl:scl enable %{scl_maven} %{scl} - << "EOF"} %setup -q -n %{pkg_name}-%{version} find . -name "*.jar" -print -delete find . -name "*.class" -print -delete %patch0 -p1 %patch1 -p1 %patch2 -p1 cp -p %{SOURCE1} . sed -i 's/\r//' LICENSE-2.0.txt sed -i '/setConnectionManagerShared/ d' connectors/apache-connector/src/main/java/org/glassfish/jersey/apache/connector/ApacheConnector.java sed -i '/CONNECTION_MANAGER_SHARED/ d' connectors/apache-connector/src/main/java/org/glassfish/jersey/apache/connector/ApacheConnector.java %pom_xpath_remove pom:build/pom:extensions %pom_xpath_remove "pom:plugin[pom:artifactId = 'maven-javadoc-plugin' ]/pom:executions" %pom_remove_plugin :maven-checkstyle-plugin # Add OSGi manifest required by docker-client %pom_add_plugin org.apache.felix:maven-bundle-plugin:2.3.7 connectors/apache-connector ' bundle-manifest process-classes manifest ' # Disable modules we do not need %pom_disable_module bundles %pom_disable_module grizzly-connector connectors %pom_disable_module jetty-connector connectors %pom_disable_module jaxb media %pom_disable_module json-jackson1 media %pom_disable_module json-jettison media %pom_disable_module json-processing media %pom_disable_module moxy media %pom_disable_module multipart media %pom_disable_module sse media %pom_disable_module archetypes %pom_disable_module containers %pom_disable_module core-server %pom_disable_module examples %pom_disable_module bean-validation ext %pom_disable_module cdi ext %pom_disable_module metainf-services ext %pom_disable_module mvc ext %pom_disable_module mvc-bean-validation ext %pom_disable_module mvc-freemarker ext %pom_disable_module mvc-jsp ext %pom_disable_module mvc-mustache ext %pom_disable_module proxy-client ext %pom_disable_module rx ext %pom_disable_module servlet-portability ext %pom_disable_module spring3 ext %pom_disable_module wadl-doclet ext %pom_disable_module incubator %pom_disable_module security %pom_disable_module test-framework %pom_disable_module tests # TODO: Ugly way to disable profile-defined module sed -i '/rx-client-java8/ d' pom.xml %pom_remove_plugin org.codehaus.mojo:findbugs-maven-plugin %pom_remove_plugin org.codehaus.mojo:buildnumber-maven-plugin core-common %pom_xpath_remove "pom:dependency[pom:scope = 'test' ]" connectors/apache-connector %pom_xpath_remove "pom:dependency[pom:scope = 'test' ]" ext/entity-filtering # Avoid building jersey-server sed -i '/ServerScopeProvider/ d' ext/entity-filtering/src/main/java/org/glassfish/jersey/message/filtering/EntityFilteringFeature.java sed -i '/SecurityEntityFilteringFeature/ d' ext/entity-filtering/src/main/java/org/glassfish/jersey/message/filtering/EntityFilteringFeature.java %pom_remove_dep :jersey-server ext/entity-filtering for f in ServerScopeProvider SecurityEntityFilteringFeature SecurityServerScopeProvider; do rm -f ext/entity-filtering/src/main/java/org/glassfish/jersey/message/filtering/$f.java done # Conflict with org.glassfish.jersey:project %mvn_file "org.glassfish.jersey.connectors:project" %{pkg_name}/connectors-project %mvn_file "org.glassfish.jersey.ext:project" %{pkg_name}/ext-project %mvn_file "org.glassfish.jersey.media:project" %{pkg_name}/media-project %{?scl:EOF} %build %{?scl:scl enable %{scl_maven} %{scl} - << "EOF"} %mvn_build -- -Dmaven.test.skip=true %{?scl:EOF} %install %{?scl:scl enable %{scl_maven} %{scl} - << "EOF"} %mvn_install %{?scl:EOF} %files -f .mfiles %doc README.md LICENSE.html LICENSE.txt LICENSE-2.0.txt etc/config/copyright.txt %dir %{_javadir}/jersey %dir %{_mavenpomdir}/jersey %files javadoc -f .mfiles-javadoc %doc LICENSE.html LICENSE.txt LICENSE-2.0.txt etc/config/copyright.txt %changelog * Tue Jul 28 2015 Alexander Kurtakov 2.18-3.3 - Drop provides/obsoletes outside of dts namespace. * Mon Jul 20 2015 Mat Booth - 2.18-3.2 - Fix unowned directories * Tue Jul 14 2015 Roland Grunberg - 2.18-3.1 - SCL-ize. * Wed Jun 17 2015 Fedora Release Engineering - 2.18-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Wed Jun 10 2015 gil cattaneo 2.18-2 - built with new mimepull rhbz#1189216 * Tue Jun 09 2015 gil cattaneo 2.18-1 - update to 2.18 - remove Obsolete duplicate declaration * Sun Jun 7 2015 Peter Robinson 2.17-4 - Obsolete jersey-contribs * Fri May 29 2015 gil cattaneo 2.17-3 - remove javax.el:el-api exclusions RHBZ#1223468 * Fri May 29 2015 gil cattaneo 2.17-2 - generated apache-connector OSGi manifest * Fri May 08 2015 gil cattaneo 2.17-1 - update to 2.17 * Tue Jan 27 2015 gil cattaneo 1.18.3-1 - update to 1.18.3 - introduce license macro * Sun Jun 08 2014 Fedora Release Engineering - 1.17.1-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Thu Jun 05 2014 gil cattaneo 1.17.1-10 - fix javax.el apis * Fri Mar 28 2014 Michael Simacek - 1.17.1-9 - Use Requires: java-headless rebuild (#1067528) * Mon Nov 18 2013 gil cattaneo 1.17.1-8 - use objectweb-asm3 * Tue Oct 15 2013 gil cattaneo 1.17.1-7 - Do not install source jars * Tue Oct 15 2013 gil cattaneo 1.17.1-6 - fix for rhbz#1019234 * Sat Aug 03 2013 Fedora Release Engineering - 1.17.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Wed Jul 10 2013 gil cattaneo 1.17.1-4 - switch to XMvn - minor changes to adapt to current guideline - fix aId for new istack-commons maven plugin * Sat Apr 27 2013 gil cattaneo 1.17.1-3 - rebuilt with grizzly support * Thu Mar 28 2013 gil cattaneo 1.17.1-2 - fixed license field - installed ASL license txt file * Mon Mar 18 2013 gil cattaneo 1.17.1-1 - update to 1.17.1 * Tue Jan 22 2013 gil cattaneo 1.17-1 - update to 1.17 * Fri Jan 11 2013 gil cattaneo 1.16-1 - update to 1.16 * Mon Nov 19 2012 gil cattaneo 1.15-1 - update to 1.15 * Tue Sep 18 2012 gil cattaneo 1.14-1 - update to 1.14 * Sat Jul 21 2012 gil cattaneo 1.13-1 - update to 1.13 * Fri May 25 2012 gil cattaneo 1.12-1 - initial rpm