summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Wijsman <tomwij@gentoo.org>2013-10-02 23:02:59 +0000
committerTom Wijsman <tomwij@gentoo.org>2013-10-02 23:02:59 +0000
commit412362fe508e5fe133e2e3cf8980a1f486278a23 (patch)
tree026ae14a78264c632bc1d164921915429cc353e7 /dev-java/struts
parentinitial commit (diff)
downloadhistorical-412362fe508e5fe133e2e3cf8980a1f486278a23.tar.gz
historical-412362fe508e5fe133e2e3cf8980a1f486278a23.tar.bz2
historical-412362fe508e5fe133e2e3cf8980a1f486278a23.zip
Version bump to 2.3.15.2; for bug #152352, bug #237146, bug #405931 and bug #486752.
Package-Manager: portage-HEAD/cvs/Linux x86_64 Manifest-Sign-Key: 0x6D34E57D
Diffstat (limited to 'dev-java/struts')
-rw-r--r--dev-java/struts/ChangeLog17
-rw-r--r--dev-java/struts/Manifest24
-rw-r--r--dev-java/struts/files/struts-2.3.15.2-build.xml-apps-package.patch249
-rw-r--r--dev-java/struts/files/struts-2.3.15.2-build.xml-classpath.patch162
-rw-r--r--dev-java/struts/files/struts-2.3.15.2-build.xml-manifest.patch30
-rw-r--r--dev-java/struts/files/struts-2.3.15.2-build.xml-remove-apps-portlet.patch50
-rw-r--r--dev-java/struts/files/struts-2.3.15.2-build.xml-remove-core-and-plugins.patch56
-rw-r--r--dev-java/struts/struts-2.3.15.2.ebuild105
8 files changed, 689 insertions, 4 deletions
diff --git a/dev-java/struts/ChangeLog b/dev-java/struts/ChangeLog
index 972281332932..5d2f0c2891bc 100644
--- a/dev-java/struts/ChangeLog
+++ b/dev-java/struts/ChangeLog
@@ -1,6 +1,18 @@
# ChangeLog for dev-java/struts
-# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-java/struts/ChangeLog,v 1.49 2011/12/19 11:01:26 sera Exp $
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/struts/ChangeLog,v 1.50 2013/10/02 23:02:51 tomwij Exp $
+
+*struts-2.3.15.2 (02 Oct 2013)
+
+ 02 Oct 2013; Tom Wijsman <TomWij@gentoo.org>
+ +files/struts-2.3.15.2-build.xml-apps-package.patch,
+ +files/struts-2.3.15.2-build.xml-classpath.patch,
+ +files/struts-2.3.15.2-build.xml-manifest.patch,
+ +files/struts-2.3.15.2-build.xml-remove-apps-portlet.patch,
+ +files/struts-2.3.15.2-build.xml-remove-core-and-plugins.patch,
+ +struts-2.3.15.2.ebuild:
+ Version bump to 2.3.15.2; for bug #152352, bug #237146, bug #405931 and bug
+ #486752.
19 Dec 2011; Ralph Sennhauser <sera@gentoo.org> struts-1.2.9-r2.ebuild,
struts-1.2.9-r3.ebuild:
@@ -209,4 +221,3 @@
struts-1.1.ebuild:
Initial Import. Thanks to Pavel <hlobil@sympatico.ca> for input. Closes
#43253, #14382, #21930
-
diff --git a/dev-java/struts/Manifest b/dev-java/struts/Manifest
index ab8c0ee86ab1..2f94e7b91cb8 100644
--- a/dev-java/struts/Manifest
+++ b/dev-java/struts/Manifest
@@ -1,6 +1,28 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+AUX struts-2.3.15.2-build.xml-apps-package.patch 20306 SHA256 41b8e8a1b592d9a88ad4d3ab945100fd6fb081141f253cb8ec872b82e3366eab SHA512 16d1bd35648c62d7b74d5ac5352200205a7be965ec6b5abf3c68d82e5f2bdf264819301cebd1c851ce752f2bc5f6cf89c6d60b8a0ad8fe0676cffc0e0b082ca9 WHIRLPOOL 2f1fb7236269927285276bb3376a722ad8898ea1d78a25f35c737d03a7c33c16411ff793fb5e87920acdb726503961c0a56e59c20edfa3580cab064bdb15a2da
+AUX struts-2.3.15.2-build.xml-classpath.patch 6783 SHA256 3b4abb7becb3ae0abe773369e09af6146880ea974789cb641472343b25d68cb4 SHA512 f386cc37c0dc11074759bc4717b386ea0918989d3e291b1c7744896d80b3eeb1ae816f675982b6ec7627baf6e1bd9ab000243c55d452f7ea68fa47a1283b158b WHIRLPOOL b8091511900bdaee5446ae02ca1463fe9ed65c7b101fd5db6050ac8882be97351dd4e75f8da6f914db7cb7604f0360b835a3575a051b0a560dd4886b5ad421b2
+AUX struts-2.3.15.2-build.xml-manifest.patch 1091 SHA256 095f13188c9e1de42123129166f88aef42c333bb103de73a3c7b8c23043f65f8 SHA512 a5bf361eeb5477acbf37acb67c1419090763cd83e7850b9c34664800d70e0ba3aee601a72a701e4654381a489caeb25169714b605a0d1ed5db7814c34066c122 WHIRLPOOL 76bfedbae01ac092068e6cb674ac86facaaef403ffba74c9aa5a682a40936cee014d93804b8a8078468aaf2f689b9477290684191fd4e2cdd6a831ad54527def
+AUX struts-2.3.15.2-build.xml-remove-apps-portlet.patch 2580 SHA256 326e5310a2389de5033885b615640961c9884843b26a56ccf123b3539d3a2600 SHA512 2ad7504aa8ee2191a65c6dc08d68cdfda18fd57b6e73e3e81b2450a91d32be55df30d76f74bd98ca5c98f8277bff15ed2d838b1ac44ad50fed1126696544562f WHIRLPOOL 59e8262c4a27f9775b52a80aa373daf696df0f9e2dce4dd3a81ab891ad77a6ac44e8025ea517d6954c7661f8f8cb0176fc67f548a3428525d12822137fbb6561
+AUX struts-2.3.15.2-build.xml-remove-core-and-plugins.patch 2936 SHA256 b25f44ebe705ead0f2d70782e2350c1eeb472e89ade5327fb758bf6f2a6c2b61 SHA512 d5a872321ce043b0ab4679bd4ed6e6ba542a6fe4aff60fd78c4325bd4d909219a36e6fd7c1ee515732f8e5adc95c8b0f00f8bf49c305da6dcec2a2e4914f949c WHIRLPOOL b1f68beeb7dd87348932bdfe2b207da4c12cf41c542c88f9c4b8b6195cf8724edde14f86a38b9d375c719429d03e419b13524aaceac1312e8526c57c12ce107d
AUX struts-CVE-2008-2025.patch 13763 SHA256 b3f8afda9e8e30418a240b391ac4c73f40525b48c035e3178bb47a0e3c248390 SHA512 f598abf5f25755eb05655d07453c007ac26d7c41321437aac06a66abae9986865df0348ae1eced63be69b0f0244ae1bae5b53b5cd58de0e6a153e312c5acc9b4 WHIRLPOOL cfb3ea41c33668dac8460f571bd4b4593ac269857807828d43f43b5d48b525fae66b13a3f8348cd2786a736cd15e68d0f3f0500bb12967c65b0dc008fd21bb4d
DIST struts-1.2.9-src.tar.gz 5754377 SHA256 7354437d04b666fc6d302b0fd14a3bb971a6389085d9f7a5ea4b25eed289400e SHA512 a3d4ea1a0aef70d73bdc156d525b155a09b6ab22c367f6d0fe76ae16bde404bb33f78a7927fcea967105401915adff9a94b3ddbb81ac5ee10d5eb3430d97a93e WHIRLPOOL bb4a89f09177ef726d0c1bc4a250f152e7b63063791423d541d24d7e415a46bc74b9002d5e984e47c76b8a75acd44ecfbac762a70462bdda33facb0a9aa0b9d5
+DIST struts-2.3.15.2-src.zip 6957356 SHA256 26d85c52e7764ece49ccd7b9df38353003326116363a630ee8ae33bc26db3cd5 SHA512 55df8ea52717781efe1b34b0b09b8677c88ce50cf160119bebfec979f22d95b0a801b9e1184dba3733ca80e9db27297d42412ae550eaa4451e4aad6f25b66825 WHIRLPOOL dcc7d263c22ada417e3e3c518d10e2a8937cda0755110bcf29981c1eec7ce8e3b9b6260c708e0292916d9e5fb11b9d35a061b2e823254d0c2030a95035a67a86
+DIST struts-build.xml-2.3.15.2.tar.xz 20744 SHA256 c76b3d852140f3ff62718949ec752673b99845abe028445fbca69fd9f4879d5b SHA512 d4c21ff8dea2990507bff4968311a4f6a44c17ae1cbbd321b818d3fe558c131ee6c0132d5e61509f61aa53e284b61fb3cce24b89020f9889cf9ef960b7c31da3 WHIRLPOOL 7f42a22a5a43f91aba871ce4f04a38b0f1314b47395d22054bc6922b7565bb6c978141bb5a1b1274f7bfc9bd51a863ddcde9f711c1374f1cb5c707b0613e1897
EBUILD struts-1.2.9-r2.ebuild 2581 SHA256 094578c97167120b8935641518f15ca6d5a345d2f68c7d21ad902226eaf55e98 SHA512 874ea4d67dfabb584d2096c49df37b14e018f41a2dbd70187508cf8d55095dcb8cc5d72929d5825fe98c83acbb643619367b5090dbecd730b9267c9325779725 WHIRLPOOL 4802fa990ac3bc021c7325fbd834c745aaf08366ad37f1a6a2c91878e61965937f4af069fcfba00275a2c9e2f404656b9f7954b7d1ed1cbf68fec8e880088378
EBUILD struts-1.2.9-r3.ebuild 2663 SHA256 0ed85dcd2906716b463d1496c509fc8cb95d82b89f0228243bc79f6d51446578 SHA512 9e81d12c37b544b086b9b4c18bcab0a34e739408a414db58c89e483c3a56c08b41bd7a5c5919123ef777174849975b57dfc26e15ff9bd26ff551e336b3e408a7 WHIRLPOOL 11f4db0569d3d26d01f44dbad833e11fff31e5e8fb130e4d5df6285b81da4a199ef94c0ae1935cd6403db2f5cec97abfeca0502cd334be5c9fa26407b37bb81b
-MISC ChangeLog 7665 SHA256 723e235b99d4fc3e17409a3a84cf1a9e9199030a021d5845fd4b856b3e94e5a5 SHA512 b6b0cadf9f3344614fdd711f7b309890a7f39d1352cf4fbf475355515d92b228f33564f7e61aab8fcc31fd940cca456ea5cf33d67846fe5c47e2c231d5f96112 WHIRLPOOL 674c0b69c491300b16f8aae97ab1e921f736a3809d99682ba9ae4c147a93c5fa78060bfb518238e777d531fe4f05898f3c3864a82273b4c35941d79402eade10
+EBUILD struts-2.3.15.2.ebuild 2886 SHA256 29af0ed65584a0ba286f661c670dccb0d349df6f77b92a95a8fcf4129d214a8c SHA512 c41cb67120861bf59b29ed18f81869e221caee96d73b7e755396963dceceaff1914341f4597efacb12d839b22ea4bb99f9ab61a9cc8bb5044461aaef94b724e7 WHIRLPOOL 0d1449748177ae70bbff3f561bd9c74cfef51ed1a411874f6960e5ec625db40445a207b6f1375f0381ea9f1c81e2d0b0b7a2220e76617ed5c22ae6b0a78aadaa
+MISC ChangeLog 8148 SHA256 9b3124b0fc56f5c798fa12cf6afb178918e7ffbe027f887539c07235367d45de SHA512 dcbd2726b552f9383e731b05354c557acb4eebf3517b9ddc50600e9bffb5de1b8ea2346121cd45a4351c4cafd85d86ede17aa8fba76d6a3a1f73b07d13b93634 WHIRLPOOL 63e47dbed28daade9027faed84930c0f10f6ab3ccde00630ede3100f191ce04e35385439a4ff5e30f87e70e310702730cdae0634edc0ab6d75eb34463255acc0
MISC metadata.xml 446 SHA256 ec0f1085c4de877f6864625a8a5d94aa7fb8589d1329c3113600210770e65c33 SHA512 c0af9a04a090901419634bffcd4e5c3c84f90ff87c666eedae2c5f502744a8b33ce0debca59f3d108e67b44bf1fe0fd311940fc1c7b781a7b2b6ad6e8c98cf7b WHIRLPOOL b2ed25101508e628c301160b19ae627c9fac2968b4bb2232521c0bcca4ae30eb79bc4550e721e46ea9e44d5b89b659fc17e609810838b257afef062c7065ae11
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.21 (GNU/Linux)
+
+iQEcBAEBCAAGBQJSTKTbAAoJEJWyH81tNOV9zvAH/3AQSN47sV/5wZ5obgpuVluI
+MjTAgYqatso8mQUDc2o/7oNa0v1EldC8tx15p3g5bfXAybnUDoRtfzy/TYOPDO4i
+/C8CRrfmRILfexobmUM4GnGdIsAvYn4U/z02sXkOyByKAIgzYLCMZNFFe8UhVxnN
+S6zAc0bjde24kXbsoBEhHKLi+gv3RobyOm5XkHDZ/XTngI3Mln4T0XqKSLJAuqcj
+oqqY4oxv30nlPdH3QiNMYeSyp2zHD1SybU6kn6/GxCE5pNULj73GwUdK8eNvJf7z
+3MAyDkbfzsYiDp8GLSTtzb1o53v0Ua41TpHiDhMvLaCUI/G9HmNkGiggiKPAEtg=
+=+KMH
+-----END PGP SIGNATURE-----
diff --git a/dev-java/struts/files/struts-2.3.15.2-build.xml-apps-package.patch b/dev-java/struts/files/struts-2.3.15.2-build.xml-apps-package.patch
new file mode 100644
index 000000000000..d1e414414320
--- /dev/null
+++ b/dev-java/struts/files/struts-2.3.15.2-build.xml-apps-package.patch
@@ -0,0 +1,249 @@
+diff -urN a/apps/blank/maven-build.xml b/apps/blank/maven-build.xml
+--- a/apps/blank/maven-build.xml 2013-10-02 15:52:07.637985555 +0200
++++ b/apps/blank/maven-build.xml 2013-10-02 15:52:29.756985531 +0200
+@@ -243,32 +243,6 @@
+
+ <target name="package" depends="compile,test" description="Package the application">
+ <mkdir dir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/log4j/log4j/1.2.17/log4j-1.2.17.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-core/2.3.15.2/struts2-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/xwork/xwork-core/2.3.15.2/xwork-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/commons/commons-lang3/3.1/commons-lang3-3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm/3.3/asm-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-commons/3.3/asm-commons-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-tree/3.3/asm-tree-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/freemarker/freemarker/2.3.19/freemarker-2.3.19.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/ognl/ognl/3.0.6/ognl-3.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/javassist/javassist/3.11.0.GA/javassist-3.11.0.GA.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-fileupload/commons-fileupload/1.3/commons-fileupload-1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+ <war destfile="${maven.build.dir}/${maven.build.finalName}.war"
+ compress="true"
+ webxml="src/main/webapp/WEB-INF/web.xml">
+--- a/apps/mailreader/maven-build.xml
++++ b/apps/mailreader/maven-build.xml
+@@ -198,36 +198,6 @@
+
+ <target name="package" depends="compile,test" description="Package the application">
+ <mkdir dir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts-mailreader-dao/1.3.5/struts-mailreader-dao-1.3.5.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-digester/commons-digester/2.0/commons-digester-2.0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-core/2.3.15.2/struts2-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/xwork/xwork-core/2.3.15.2/xwork-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/commons/commons-lang3/3.1/commons-lang3-3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm/3.3/asm-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-commons/3.3/asm-commons-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-tree/3.3/asm-tree-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/freemarker/freemarker/2.3.19/freemarker-2.3.19.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/ognl/ognl/3.0.6/ognl-3.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/javassist/javassist/3.11.0.GA/javassist-3.11.0.GA.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-fileupload/commons-fileupload/1.3/commons-fileupload-1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+ <war destfile="${maven.build.dir}/${maven.build.finalName}.war"
+ compress="true"
+ webxml="src/main/webapp/WEB-INF/web.xml">
+--- a/apps/showcase/maven-build.xml
++++ b/apps/showcase/maven-build.xml
+@@ -334,112 +334,6 @@
+
+ <target name="package" depends="compile,test" description="Package the application">
+ <mkdir dir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-struts1-plugin/2.3.15.2/struts2-struts1-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts-core/1.3.10/struts-core-1.3.10.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/antlr/antlr/2.7.2/antlr-2.7.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-chain/commons-chain/1.2/commons-chain-1.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-dojo-plugin/2.3.15.2/struts2-dojo-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-jsf-plugin/2.3.15.2/struts2-jsf-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-config-browser-plugin/2.3.15.2/struts2-config-browser-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-sitemesh-plugin/2.3.15.2/struts2-sitemesh-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-tiles-plugin/2.3.15.2/struts2-tiles-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/tiles/tiles-core/2.0.6/tiles-core-2.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/tiles/tiles-api/2.0.6/tiles-api-2.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-dwr-plugin/2.3.15.2/struts2-dwr-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-json-plugin/2.3.15.2/struts2-json-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/commons/commons-lang3/3.1/commons-lang3-3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/tiles/tiles-jsp/2.0.6/tiles-jsp-2.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-digester/commons-digester/2.0/commons-digester-2.0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-convention-plugin/2.3.15.2/struts2-convention-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-spring-plugin/2.3.15.2/struts2-spring-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/springframework/spring-beans/3.0.5.RELEASE/spring-beans-3.0.5.RELEASE.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/springframework/spring-core/3.0.5.RELEASE/spring-core-3.0.5.RELEASE.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/springframework/spring-asm/3.0.5.RELEASE/spring-asm-3.0.5.RELEASE.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/springframework/spring-context/3.0.5.RELEASE/spring-context-3.0.5.RELEASE.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/springframework/spring-aop/3.0.5.RELEASE/spring-aop-3.0.5.RELEASE.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/springframework/spring-expression/3.0.5.RELEASE/spring-expression-3.0.5.RELEASE.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/springframework/spring-web/3.0.5.RELEASE/spring-web-3.0.5.RELEASE.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/aopalliance/aopalliance/1.0/aopalliance-1.0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/velocity/velocity/1.6.4/velocity-1.6.4.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-collections/commons-collections/3.1/commons-collections-3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-lang/commons-lang/2.4/commons-lang-2.4.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/oro/oro/2.0.8/oro-2.0.8.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/velocity/velocity-tools/1.3/velocity-tools-1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-validator/commons-validator/1.3.1/commons-validator-1.3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/sslext/sslext/1.2-0/sslext-1.2-0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/opensymphony/sitemesh/2.4.2/sitemesh-2.4.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/uk/ltd/getahead/dwr/1.1.1/dwr-1.1.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/log4j/log4j/1.2.17/log4j-1.2.17.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/myfaces/core/myfaces-impl/1.1.2/myfaces-impl-1.1.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-el/commons-el/1.0/commons-el-1.0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-codec/commons-codec/1.3/commons-codec-1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/myfaces/core/myfaces-api/1.1.2/myfaces-api-1.1.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-fileupload/commons-fileupload/1.3/commons-fileupload-1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-core/2.3.15.2/struts2-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/xwork/xwork-core/2.3.15.2/xwork-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm/3.3/asm-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-commons/3.3/asm-commons-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-tree/3.3/asm-tree-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/freemarker/freemarker/2.3.19/freemarker-2.3.19.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/ognl/ognl/3.0.6/ognl-3.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/javassist/javassist/3.11.0.GA/javassist-3.11.0.GA.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+ <war destfile="${maven.build.dir}/${maven.build.finalName}.war"
+ compress="true"
+ webxml="src/main/webapp/WEB-INF/web.xml">
+--- a/apps/rest-showcase/maven-build.xml
++++ b/apps/rest-showcase/maven-build.xml
+@@ -273,56 +273,6 @@
+
+ <target name="package" depends="compile,test" description="Package the application">
+ <mkdir dir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-rest-plugin/2.3.15.2/struts2-rest-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/com/thoughtworks/xstream/xstream/1.4.2/xstream-1.4.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/xmlpull/xmlpull/1.1.3.1/xmlpull-1.1.3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/xpp3/xpp3_min/1.1.4c/xpp3_min-1.1.4c.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/net/sf/json-lib/json-lib/2.3/json-lib-2.3-jdk15.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-beanutils/commons-beanutils/1.8.0/commons-beanutils-1.8.0.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-collections/commons-collections/3.1/commons-collections-3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-lang/commons-lang/2.4/commons-lang-2.4.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/net/sf/ezmorph/ezmorph/1.0.6/ezmorph-1.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/codehaus/jackson/jackson-core-asl/1.9.2/jackson-core-asl-1.9.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/codehaus/jackson/jackson-mapper-asl/1.9.2/jackson-mapper-asl-1.9.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-convention-plugin/2.3.15.2/struts2-convention-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/commons/commons-lang3/3.1/commons-lang3-3.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-config-browser-plugin/2.3.15.2/struts2-config-browser-plugin-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/struts2-core/2.3.15.2/struts2-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/apache/struts/xwork/xwork-core/2.3.15.2/xwork-core-2.3.15.2.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm/3.3/asm-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-commons/3.3/asm-commons-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/asm/asm-tree/3.3/asm-tree-3.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/org/freemarker/freemarker/2.3.19/freemarker-2.3.19.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/ognl/ognl/3.0.6/ognl-3.0.6.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/javassist/javassist/3.11.0.GA/javassist-3.11.0.GA.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-fileupload/commons-fileupload/1.3/commons-fileupload-1.3.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+- <copy file="${maven.repo.local}/commons-io/commons-io/2.0.1/commons-io-2.0.1.jar"
+- todir="${maven.build.dir}/${maven.build.finalName}/WEB-INF/lib"/>
+ <war destfile="${maven.build.dir}/${maven.build.finalName}.war"
+ compress="true"
+ webxml="src/main/webapp/WEB-INF/web.xml">
diff --git a/dev-java/struts/files/struts-2.3.15.2-build.xml-classpath.patch b/dev-java/struts/files/struts-2.3.15.2-build.xml-classpath.patch
new file mode 100644
index 000000000000..25d694a198a3
--- /dev/null
+++ b/dev-java/struts/files/struts-2.3.15.2-build.xml-classpath.patch
@@ -0,0 +1,162 @@
+--- a/apps/blank/maven-build.xml
++++ b/apps/blank/maven-build.xml
+@@ -125,7 +125,7 @@
+
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.outputDir}"/>
+- <javac destdir="${maven.build.outputDir}"
++ <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -153,7 +153,7 @@
+ description="Compile the test code"
+ unless="maven.test.skip">
+ <mkdir dir="${maven.build.testOutputDir}"/>
+- <javac destdir="${maven.build.testOutputDir}"
++ <javac destdir="${maven.build.testOutputDir}" classpath="${gentoo.test.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -159,6 +159,7 @@
+ <path refid="build.test.classpath"/>
+ <pathelement location="${maven.build.outputDir}"/>
+ <pathelement location="${maven.build.testOutputDir}"/>
++ <pathelement path="${gentoo.test.classpath}" />
+ </classpath>
+ <batchtest todir="${maven.test.reports}" unless="test">
+ <fileset dir="${maven.build.testDir.0}">
+--- a/apps/mailreader/maven-build.xml
++++ b/apps/mailreader/maven-build.xml
+@@ -125,7 +125,7 @@
+
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.outputDir}"/>
+- <javac destdir="${maven.build.outputDir}"
++ <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+--- a/apps/portlet/maven-build.xml
++++ b/apps/portlet/maven-build.xml
+@@ -125,7 +125,7 @@
+
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.outputDir}"/>
+- <javac destdir="${maven.build.outputDir}"
++ <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -153,7 +153,7 @@
+ description="Compile the test code"
+ unless="maven.test.skip">
+ <mkdir dir="${maven.build.testOutputDir}"/>
+- <javac destdir="${maven.build.testOutputDir}"
++ <javac destdir="${maven.build.testOutputDir}" classpath="${gentoo.test.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -159,6 +159,7 @@
+ <path refid="build.test.classpath"/>
+ <pathelement location="${maven.build.outputDir}"/>
+ <pathelement location="${maven.build.testOutputDir}"/>
++ <pathelement path="${gentoo.test.classpath}" />
+ </classpath>
+ <batchtest todir="${maven.test.reports}" unless="test">
+ <fileset dir="${maven.build.testDir.0}">
+--- a/apps/showcase/maven-build.xml
++++ b/apps/showcase/maven-build.xml
+@@ -125,7 +125,7 @@
+
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.outputDir}"/>
+- <javac destdir="${maven.build.outputDir}"
++ <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -153,7 +153,7 @@
+ description="Compile the test code"
+ unless="maven.test.skip">
+ <mkdir dir="${maven.build.testOutputDir}"/>
+- <javac destdir="${maven.build.testOutputDir}"
++ <javac destdir="${maven.build.testOutputDir}" classpath="${gentoo.test.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -159,6 +159,7 @@
+ <path refid="build.test.classpath"/>
+ <pathelement location="${maven.build.outputDir}"/>
+ <pathelement location="${maven.build.testOutputDir}"/>
++ <pathelement path="${gentoo.test.classpath}" />
+ </classpath>
+ <batchtest todir="${maven.test.reports}" unless="test">
+ <fileset dir="${maven.build.testDir.0}">
+--- a/apps/rest-showcase/maven-build.xml
++++ b/apps/rest-showcase/maven-build.xml
+@@ -125,7 +125,7 @@
+
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.outputDir}"/>
+- <javac destdir="${maven.build.outputDir}"
++ <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -153,7 +153,7 @@
+ description="Compile the test code"
+ unless="maven.test.skip">
+ <mkdir dir="${maven.build.testOutputDir}"/>
+- <javac destdir="${maven.build.testOutputDir}"
++ <javac destdir="${maven.build.testOutputDir}" classpath="${gentoo.test.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -159,6 +159,7 @@
+ <path refid="build.test.classpath"/>
+ <pathelement location="${maven.build.outputDir}"/>
+ <pathelement location="${maven.build.testOutputDir}"/>
++ <pathelement path="${gentoo.test.classpath}" />
+ </classpath>
+ <batchtest todir="${maven.test.reports}" unless="test">
+ <fileset dir="${maven.build.testDir.0}">
+--- a/bundles/admin/maven-build.xml
++++ b/bundles/admin/maven-build.xml
+@@ -125,7 +125,7 @@
+
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.outputDir}"/>
+- <javac destdir="${maven.build.outputDir}"
++ <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -153,7 +153,7 @@
+ description="Compile the test code"
+ unless="maven.test.skip">
+ <mkdir dir="${maven.build.testOutputDir}"/>
+- <javac destdir="${maven.build.testOutputDir}"
++ <javac destdir="${maven.build.testOutputDir}" classpath="${gentoo.test.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
+@@ -159,6 +159,7 @@
+ <path refid="build.test.classpath"/>
+ <pathelement location="${maven.build.outputDir}"/>
+ <pathelement location="${maven.build.testOutputDir}"/>
++ <pathelement path="${gentoo.test.classpath}" />
+ </classpath>
+ <batchtest todir="${maven.test.reports}" unless="test">
+ <fileset dir="${maven.build.testDir.0}">
+--- a/bundles/demo/maven-build.xml
++++ b/bundles/demo/maven-build.xml
+@@ -125,7 +125,7 @@
+
+ <target name="compile" depends="get-deps" description="Compile the code">
+ <mkdir dir="${maven.build.outputDir}"/>
+- <javac destdir="${maven.build.outputDir}"
++ <javac destdir="${maven.build.outputDir}" classpath="${gentoo.classpath}"
+ nowarn="false"
+ debug="true"
+ optimize="false"
diff --git a/dev-java/struts/files/struts-2.3.15.2-build.xml-manifest.patch b/dev-java/struts/files/struts-2.3.15.2-build.xml-manifest.patch
new file mode 100644
index 000000000000..3a046a006399
--- /dev/null
+++ b/dev-java/struts/files/struts-2.3.15.2-build.xml-manifest.patch
@@ -0,0 +1,30 @@
+--- a/bundles/admin/maven-build.xml
++++ b/bundles/admin/maven-build.xml
+@@ -271,12 +271,8 @@
+ <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
+ compress="true"
+ index="false"
+- manifest="/var/tmp/portage/dev-java/struts-xwork-2.3.15.2/work/struts-2.3.15.2/src/bundles/admin/target/classes/META-INF/MANIFEST.MF"
+ basedir="${maven.build.outputDir}"
+ excludes="**/package.html">
+- <manifest>
+- <attribute name="Main-Class"/>
+- </manifest>
+ </jar>
+ </target>
+
+--- a/bundles/demo/maven-build.xml
++++ b/bundles/demo/maven-build.xml
+@@ -271,12 +271,8 @@
+ <jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
+ compress="true"
+ index="false"
+- manifest="/var/tmp/portage/dev-java/struts-xwork-2.3.15.2/work/struts-2.3.15.2/src/bundles/demo/target/classes/META-INF/MANIFEST.MF"
+ basedir="${maven.build.outputDir}"
+ excludes="**/package.html">
+- <manifest>
+- <attribute name="Main-Class"/>
+- </manifest>
+ </jar>
+ </target>
+
diff --git a/dev-java/struts/files/struts-2.3.15.2-build.xml-remove-apps-portlet.patch b/dev-java/struts/files/struts-2.3.15.2-build.xml-remove-apps-portlet.patch
new file mode 100644
index 000000000000..27c101ddc5e0
--- /dev/null
+++ b/dev-java/struts/files/struts-2.3.15.2-build.xml-remove-apps-portlet.patch
@@ -0,0 +1,50 @@
+--- a/apps/maven-build.xml
++++ b/apps/maven-build.xml
+@@ -24,7 +24,6 @@
+ <target name="clean" description="Clean the output directory">
+ <ant antfile="build.xml" dir="blank" target="clean"/>
+ <ant antfile="build.xml" dir="mailreader" target="clean"/>
+- <ant antfile="build.xml" dir="portlet" target="clean"/>
+ <ant antfile="build.xml" dir="showcase" target="clean"/>
+ <ant antfile="build.xml" dir="rest-showcase" target="clean"/>
+ </target>
+@@ -36,7 +35,6 @@
+ <target name="compile" description="Compile the code">
+ <ant antfile="build.xml" dir="blank" target="compile"/>
+ <ant antfile="build.xml" dir="mailreader" target="compile"/>
+- <ant antfile="build.xml" dir="portlet" target="compile"/>
+ <ant antfile="build.xml" dir="showcase" target="compile"/>
+ <ant antfile="build.xml" dir="rest-showcase" target="compile"/>
+ </target>
+@@ -48,7 +46,6 @@
+ <target name="compile-tests" description="Compile the test code">
+ <ant antfile="build.xml" dir="blank" target="compile-tests"/>
+ <ant antfile="build.xml" dir="mailreader" target="compile-tests"/>
+- <ant antfile="build.xml" dir="portlet" target="compile-tests"/>
+ <ant antfile="build.xml" dir="showcase" target="compile-tests"/>
+ <ant antfile="build.xml" dir="rest-showcase" target="compile-tests"/>
+ </target>
+@@ -60,7 +57,6 @@
+ <target name="test" description="Run the test cases">
+ <ant antfile="build.xml" dir="blank" target="test"/>
+ <ant antfile="build.xml" dir="mailreader" target="test"/>
+- <ant antfile="build.xml" dir="portlet" target="test"/>
+ <ant antfile="build.xml" dir="showcase" target="test"/>
+ <ant antfile="build.xml" dir="rest-showcase" target="test"/>
+ </target>
+@@ -72,7 +68,6 @@
+ <target name="javadoc" description="Generates the Javadoc of the application">
+ <ant antfile="build.xml" dir="blank" target="javadoc"/>
+ <ant antfile="build.xml" dir="mailreader" target="javadoc"/>
+- <ant antfile="build.xml" dir="portlet" target="javadoc"/>
+ <ant antfile="build.xml" dir="showcase" target="javadoc"/>
+ <ant antfile="build.xml" dir="rest-showcase" target="javadoc"/>
+ </target>
+@@ -84,7 +79,6 @@
+ <target name="package" description="Package the application">
+ <ant antfile="build.xml" dir="blank" target="package"/>
+ <ant antfile="build.xml" dir="mailreader" target="package"/>
+- <ant antfile="build.xml" dir="portlet" target="package"/>
+ <ant antfile="build.xml" dir="showcase" target="package"/>
+ <ant antfile="build.xml" dir="rest-showcase" target="package"/>
+ </target>
diff --git a/dev-java/struts/files/struts-2.3.15.2-build.xml-remove-core-and-plugins.patch b/dev-java/struts/files/struts-2.3.15.2-build.xml-remove-core-and-plugins.patch
new file mode 100644
index 000000000000..d04acd040d09
--- /dev/null
+++ b/dev-java/struts/files/struts-2.3.15.2-build.xml-remove-core-and-plugins.patch
@@ -0,0 +1,56 @@
+--- a/maven-build.xml
++++ b/maven-build.xml
+@@ -22,8 +22,5 @@
+ <!-- ====================================================================== -->
+
+ <target name="clean" description="Clean the output directory">
+- <ant antfile="build.xml" dir="xwork-core" target="clean"/>
+- <ant antfile="build.xml" dir="core" target="clean"/>
+ <ant antfile="build.xml" dir="apps" target="clean"/>
+- <ant antfile="build.xml" dir="plugins" target="clean"/>
+ <ant antfile="build.xml" dir="bundles" target="clean"/>
+@@ -35,8 +33,5 @@
+ <!-- ====================================================================== -->
+
+ <target name="compile" description="Compile the code">
+- <ant antfile="build.xml" dir="xwork-core" target="compile"/>
+- <ant antfile="build.xml" dir="core" target="compile"/>
+ <ant antfile="build.xml" dir="apps" target="compile"/>
+- <ant antfile="build.xml" dir="plugins" target="compile"/>
+ <ant antfile="build.xml" dir="bundles" target="compile"/>
+@@ -48,8 +44,5 @@
+ <!-- ====================================================================== -->
+
+ <target name="compile-tests" description="Compile the test code">
+- <ant antfile="build.xml" dir="xwork-core" target="compile-tests"/>
+- <ant antfile="build.xml" dir="core" target="compile-tests"/>
+ <ant antfile="build.xml" dir="apps" target="compile-tests"/>
+- <ant antfile="build.xml" dir="plugins" target="compile-tests"/>
+ <ant antfile="build.xml" dir="bundles" target="compile-tests"/>
+@@ -61,8 +55,5 @@
+ <!-- ====================================================================== -->
+
+ <target name="test" description="Run the test cases">
+- <ant antfile="build.xml" dir="xwork-core" target="test"/>
+- <ant antfile="build.xml" dir="core" target="test"/>
+ <ant antfile="build.xml" dir="apps" target="test"/>
+- <ant antfile="build.xml" dir="plugins" target="test"/>
+ <ant antfile="build.xml" dir="bundles" target="test"/>
+@@ -74,8 +66,5 @@
+ <!-- ====================================================================== -->
+
+ <target name="javadoc" description="Generates the Javadoc of the application">
+- <ant antfile="build.xml" dir="xwork-core" target="javadoc"/>
+- <ant antfile="build.xml" dir="core" target="javadoc"/>
+ <ant antfile="build.xml" dir="apps" target="javadoc"/>
+- <ant antfile="build.xml" dir="plugins" target="javadoc"/>
+ <ant antfile="build.xml" dir="bundles" target="javadoc"/>
+@@ -87,8 +77,5 @@
+ <!-- ====================================================================== -->
+
+ <target name="package" description="Package the application">
+- <ant antfile="build.xml" dir="xwork-core" target="package"/>
+- <ant antfile="build.xml" dir="core" target="package"/>
+ <ant antfile="build.xml" dir="apps" target="package"/>
+- <ant antfile="build.xml" dir="plugins" target="package"/>
+ <ant antfile="build.xml" dir="bundles" target="package"/>
diff --git a/dev-java/struts/struts-2.3.15.2.ebuild b/dev-java/struts/struts-2.3.15.2.ebuild
new file mode 100644
index 000000000000..fc317a86eef0
--- /dev/null
+++ b/dev-java/struts/struts-2.3.15.2.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/struts/struts-2.3.15.2.ebuild,v 1.1 2013/10/02 23:02:51 tomwij Exp $
+
+EAPI="5"
+
+JAVA_PKG_IUSE="doc source test"
+WANT_ANT_TASKS="ant-trax"
+
+inherit java-pkg-2 java-ant-2
+
+MY_P="${P}-src"
+
+DESCRIPTION="A powerful Model View Controller Framework for JSP/Servlets"
+SRC_URI="mirror://apache/struts/source/${MY_P}.zip
+ http://dev.gentoo.org/~tomwij/files/dist/${PN}-build.xml-${PV}.tar.xz"
+HOMEPAGE="http://struts.apache.org/index.html"
+
+LICENSE="Apache-2.0"
+SLOT="2"
+KEYWORDS="~amd64"
+
+COMMON_DEPS="
+ dev-java/felix-shell:0
+ dev-java/osgi-core-api:0
+ dev-java/struts-core:${SLOT}
+ dev-java/struts-plugins:${SLOT}
+ dev-java/struts-xwork:${SLOT}
+ java-virtuals/servlet-api:2.3"
+
+RDEPEND=">=virtual/jre-1.5
+ ${COMMON_DEPS}"
+
+DEPEND=">=virtual/jdk-1.5
+ test? ( dev-java/ant-junit:0 )
+ ${COMMON_DEPS}"
+
+S="${WORKDIR}/${P}/src"
+
+JAVA_ANT_REWRITE_CLASSPATH="true"
+EANT_GENTOO_CLASSPATH="struts-core-${SLOT},struts-plugins-${SLOT},struts-xwork-${SLOT}"
+EANT_TEST_GENTOO_CLASSPATH="${EANT_GENTOO_CLASSPATH}"
+EANT_BUILD_TARGET="package"
+EANT_TEST_TARGET="test"
+
+# TODO: Incompatible with newer junit; we either need to patch it or slot junit.
+RESTRICT="test"
+
+src_unpack() {
+ unpack ${MY_P}.zip
+ cd "${S}" || die
+ unpack ${PN}-build.xml-${PV}.tar.xz
+}
+
+java_prepare() {
+ find . -name '*.jar' -print -delete || die
+
+ epatch "${FILESDIR}"/${P}-build.xml-remove-core-and-plugins.patch
+ epatch "${FILESDIR}"/${P}-build.xml-classpath.patch
+ epatch "${FILESDIR}"/${P}-build.xml-manifest.patch
+ epatch "${FILESDIR}"/${P}-build.xml-apps-package.patch
+ epatch "${FILESDIR}"/${P}-build.xml-remove-apps-portlet.patch
+
+ java-pkg_getjars felix-shell,osgi-core-api,servlet-api-2.3
+}
+
+src_install() {
+ insinto /usr/share/${PN}-${SLOT}/
+
+ # Misses apps/portlet.
+ for dir in apps/{blank,mailreader,rest-showcase,showcase} bundles/{admin,demo} ; do
+ if [[ ${dir} == "apps/"* ]] ; then
+ doins ${dir}/target/${PN}2-${dir/apps\//}.war
+ else
+ java-pkg_newjar ${dir}/target/${PN}2-osgi-*-bundle-${PV}.jar ${dir/bundles\//}.jar
+ fi
+
+ if use doc ; then
+ java-pkg_dojavadoc ${dir}/target/site/apidocs
+ mkdir "${D}"/usr/share/doc/${P}/${dir/*\//} || die
+ mv "${D}"/usr/share/doc/${P}/{html,${dir/*\//}/html} || die
+ fi
+
+ if [[ ${dir} == *"mailreader"* ]] ; then
+ use source && java-pkg_dosrc ${dir}/src/main/java/mailreader2
+ else
+ use source && java-pkg_dosrc ${dir}/src/main/java/org
+ fi
+ done
+
+ if use doc ; then
+ rm "${D}"/usr/share/${PN}-${SLOT}/api || die
+ fi
+}
+
+src_test() {
+ EANT_TEST_EXTRA_ARGS="-Dgentoo.test.classpath=$(java-pkg_getjars ${EANT_TEST_GENTOO_CLASSPATH})"
+ EANT_TEST_EXTRA_ARGS+=" -Djunit.present=true"
+
+ java-pkg-2_src_test
+}
+
+pkg_postinst() {
+ elog "The application 'portlet' is not in this release because it doesn't build."
+}