Compare commits

...

360 Commits

Author SHA1 Message Date
alfresco-build
4431863500 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.1 2015-10-19 11:20:15 +01:00
alfresco-build
d2e9b89720 [maven-release-plugin] prepare for next development iteration 2015-10-09 15:34:00 +01:00
alfresco-build
cda786187c [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.1-beta-3 2015-10-09 15:33:54 +01:00
Ole Hejlskov
8cf04fc98d Revert "[maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.1-beta-1"
This reverts commit 3b579596db.
2015-10-09 15:55:24 +02:00
alfresco-build
3b579596db [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.1-beta-1 2015-10-09 14:19:39 +01:00
Ole Hejlskov
b2afebed09 Revert "DEVPLAT-338, Incorrect naming of AIO AMPs, #311"
This reverts commit 6c57d9ede0.

We can't put this commit in a SP release, so we have to revert the revert when we need it back
2015-10-09 13:48:22 +02:00
Martin Bergljung
3707dbc5d6 DEVPLAT-343, alfresco-sdk uses relative path for dir.root,#289 2015-10-07 19:50:34 +01:00
Martin Bergljung
f3d85a19ce DEVPLAT-342, Define argLine property rather than setting it in surefire, to ease integration with other plugins, #298 2015-10-07 13:01:54 +01:00
Martin Bergljung
6c57d9ede0 DEVPLAT-338, Incorrect naming of AIO AMPs, #311 2015-10-07 10:45:51 +01:00
Martin Bergljung
0958c63b44 DEVPLAT-337, AIO/share-amp share-config-custom.xml changes are not loaded, #299 2015-10-05 13:47:14 +01:00
Martin Bergljung
eeb5e7304f DEVPLAT-108, Repo-amp contains unwanted libs after running amp-to-war 2015-10-02 09:20:45 +01:00
alfresco-build
8d06e0e791 [maven-release-plugin] prepare for next development iteration 2015-09-28 13:12:09 +01:00
alfresco-build
a11a3a65b6 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.1-beta-2 2015-09-28 13:12:03 +01:00
Ole Hejlskov
5936c3fcda Merge pull request #326 from binovo/Issue/317
fix issue #317
2015-09-24 15:15:47 +02:00
alfresco-build
235a84105a [maven-release-plugin] prepare for next development iteration 2015-09-01 09:04:47 +01:00
alfresco-build
3465b3aaf5 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.1-beta-1 2015-09-01 09:04:41 +01:00
Ole Hejlskov
509e4072e8 Revert version back to 2.1.1-SNAPSHOT 2015-09-01 09:29:52 +02:00
alfresco-build
6e7e2d7740 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0 2015-08-31 15:08:14 +01:00
Martin Bergljung
841c72e64a DEVPLAT-258,Ensure demoComponent is loaded properly,#220 2015-08-27 08:23:47 +01:00
Martin Bergljung
6b83be9d9f DEVPLAT-83 - Remove plexus-archiver from maven-war-plugin definition in parent SDK pom 2015-08-26 12:11:52 +01:00
Martin Bergljung
f4c9a36256 DEVPLAT-107 - Add scope test to <artifactId>selenium-java</artifactId> in aio/share-amp/pom.xml, #300 2015-08-26 11:43:59 +01:00
Martin Bergljung
7309916d83 DEVPLAT-151 - Files that are generated from the Share AMP archetype needs unique names 2015-08-26 10:22:45 +01:00
mindthegab
de723e44ff Fix DOCS-1155 2015-08-12 16:48:07 -04:00
Igor Blanco
60dac34448 fix issue #317 2015-08-03 15:50:41 +02:00
mindthegab
477067a992 udpated release profile to run enterprise-tests as per issue #314 2015-07-30 14:16:18 -04:00
mindthegab
016879ec87 added link to command reference in response to request on issue #309 2015-07-30 14:12:20 -04:00
mindthegab
97cbaefc6f fixed issue #314 - by default now mvn clean install works without enterprise access. to run enterprise-tests use -Penterprise-tests 2015-07-30 13:46:54 -04:00
Samuel Langlois
c854a0aad3 Issue #301: remove JDK8 specific flag for Javadoc 2015-07-23 10:24:52 +01:00
Samuel Langlois
d483c01a6c Set ALL settings to Java 7 for compiler plugin + remove test on JDK version 2015-07-23 10:15:45 +01:00
mindthegab
3116123800 reverted target version for the SDK to java7 for issue #301, added some logging for issue #297 2015-07-22 17:10:26 -04:00
mindthegab
a39a11ffe7 fixed issue #297, now webappDirectory is honored if present 2015-06-01 18:13:36 +01:00
mindthegab
41dd5ff1ea imprving unarchiver logging 2015-06-01 12:54:13 +01:00
mindthegab
2a3eb3919e improved logging 2015-05-29 17:00:19 -04:00
mindthegab
f9c4647f22 more fixes for issue #254 2015-05-29 10:31:17 -04:00
mindthegab
bc97442af7 Merge pull request #288 from jphuynh/master
DEVPLAT-75: Added Alfresco PGP public key and fingerprint information
2015-05-22 09:46:55 -04:00
Jean-Pierre Huynh
9c49d6c7f9 DEVPLAT-75: Added Alfresco PGP public key and fingerprint information 2015-05-21 07:29:06 +01:00
mindthegab
2453421d1b Update README.md 2015-05-20 18:28:36 -04:00
mindthegab
5e17baa651 Update README.md 2015-05-20 18:19:32 -04:00
mindthegab
c3b43c0c68 Update README.md 2015-05-20 18:18:28 -04:00
mindthegab
6f0589ce63 Update README.md 2015-05-20 18:17:08 -04:00
mindthegab
abee710157 Updated readme.MD 2015-05-20 18:12:53 -04:00
mindthegab
19b0d1d8a7 Updated README for SDK 2.1.0 release 2015-05-20 18:07:52 -04:00
mindthegab
6ebaa083d4 Merge pull request #281 from Alfresco/readme-update
Updated SDK README, needs further edits.
2015-05-20 17:23:33 -04:00
mindthegab
80f62c65ca Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2015-05-20 12:01:22 -04:00
mindthegab
f946d711ea issue #267 - added logging to install amp goal 2015-05-20 12:01:07 -04:00
alfresco-build
4a25c4ceba [maven-release-plugin] prepare for next development iteration 2015-05-20 13:24:05 +01:00
alfresco-build
6140990608 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.0 2015-05-20 13:24:00 +01:00
Martin Bergljung
6a6fcacf78 DEVPLAT-72: Move site-webscripts and site-data in under web-extension for share-amp 2015-05-18 14:11:06 +01:00
Martin Bergljung
3a9f08620a DEVPLAT-71: Set <disable-resource-caching> to false for AIO and Share AMP 2015-05-18 11:33:26 +01:00
Martin Bergljung
8b48a63e0a DEVPLAT-70, the share/src/test directory in the AIO artefact is not generated 2015-05-18 09:22:01 +01:00
Martin Bergljung
d0fdd2fdfe Updated enforcer plugin config, DEVPLAT-67 2015-05-15 11:11:40 +01:00
mindthegab
603fe956c6 DEVPLAT-67 - partial update for JDK 8 2015-05-14 11:00:21 -04:00
mindthegab
ccb6728e4c Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2015-05-14 10:49:37 -04:00
mindthegab
3ef4131ce8 Fixing javadoc strict build 2015-05-14 10:38:18 -04:00
Martin Bergljung
f1735544ab Fixed Solr Data Dir path on Windows, #284 2015-05-14 11:38:12 +01:00
Ole Hejlskov
ee6861e873 Bump to Java 8 by default 2015-05-12 17:24:48 +02:00
Ole Hejlskov
2a45c2eaa5 Merge pull request #277 from rpiccoli/master
Alfresco 5.0.1 supports Java 8, but Maven Compiler settings are hardcode...
2015-05-12 17:07:49 +02:00
Martin Bergljung
b33837280d Added Java controller to sample webscript 2015-05-12 10:47:34 +01:00
Ole Hejlskov
748231a932 Rename properties to a more consistent scheme. All refresh mojo related properties are now maven.alfresco.refresh.* (#283) 2015-05-11 15:39:42 +02:00
Ole Hejlskov
8707fbebbf Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2015-05-11 15:23:56 +02:00
Ole Hejlskov
8d5d26a1a5 Add the alfresco-maven-plugin to AIO parent poms so the plugin shows up in IDEA (#283) 2015-05-11 15:23:14 +02:00
alfresco-build
0f6b82d7f1 [maven-release-plugin] prepare for next development iteration 2015-05-11 14:12:53 +01:00
alfresco-build
c7559ba8ea [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.0-beta-1 2015-05-11 14:12:48 +01:00
Ole Hejlskov
96efddd7af Refactor Refresh Mojo's to be more dynamic and aware of its sourroundings (#283) 2015-05-11 14:11:38 +02:00
alfresco-build
1a95fab1eb [maven-release-plugin] prepare for next development iteration 2015-05-11 12:48:58 +01:00
alfresco-build
85ea35c7b6 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.0-beta-1 2015-05-11 12:48:53 +01:00
alfresco-build
788b64ccc6 [maven-release-plugin] prepare for next development iteration 2015-05-11 10:58:09 +01:00
alfresco-build
ec8c8748e8 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.0-beta-1 2015-05-11 10:58:03 +01:00
Martin Bergljung
b3d1a5b3d1 Removed PermGen JVM setting from run scripts, not used in JDK8 2015-05-11 09:58:12 +01:00
Martin Bergljung
b265ffb00e DEVPLAT-31: JS Compression, regression fix, #269 2015-05-11 08:00:42 +01:00
alfresco-build
d5e9278d52 [maven-release-plugin] prepare for next development iteration 2015-05-08 16:23:07 +01:00
alfresco-build
db7e154a31 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.0-beta-1 2015-05-08 16:23:01 +01:00
Ole Hejlskov
b84ea0ffb3 Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2015-05-08 16:28:11 +02:00
Ole Hejlskov
56f8336af3 Fix a few issues in refresh-share goal (defaults) and read port from maven.tomcat.port.
Fix XML issue in AIO PO testing suite to keep Eclipse happy
2015-05-08 16:27:20 +02:00
alfresco-build
790b8cdfdb [maven-release-plugin] prepare for next development iteration 2015-05-08 15:24:59 +01:00
alfresco-build
dbec475d0b [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.1-beta-1 2015-05-08 15:24:54 +01:00
alfresco-build
c541f66845 [maven-release-plugin] prepare for next development iteration 2015-05-07 15:19:15 +01:00
alfresco-build
fab637d1cb [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.0-beta-1 2015-05-07 15:19:10 +01:00
mindthegab
e8c7fdbc8b fixed version 2015-05-07 09:42:45 -04:00
mindthegab
b178eaffaa fixed broken version by CI 2015-05-07 09:26:56 -04:00
Martin Bergljung
8fa82cfad5 Fixed regression testing for Community Share #217 2015-05-07 10:00:40 +01:00
Martin Bergljung
f050c75615 Updated SDK README 2015-05-06 09:38:04 +01:00
alfresco-build
f3f70d6035 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.1.0-beta-1 2015-05-05 23:16:09 +01:00
Martin Bergljung
da6c97d857 DEVPLAT-58 - replace refresh profiles with alfresco-maven-plugin goals 2015-05-01 16:18:54 +01:00
Ricardo Piccoli
d4872f7e1a Alfresco 5.0.1 supports Java 8, but Maven Compiler settings are hardcoded to 1.7 2015-05-01 14:10:16 +01:00
Martin Bergljung
c79889e662 Added run.bat files to archetypes 2015-04-30 08:42:19 +01:00
Martin Bergljung
ed7e5e2ead DEVPLAT-49 - Split clear-caches-refresh-ws profile into one for repo and one for share and make port number configurable 2015-04-28 15:21:44 +01:00
Ricardo Piccoli
126747dbc9 Alfresco 5.0.1 supports Java 8, but Maven Compiler settings are hardcoded to 1.7 2015-04-28 10:41:06 +01:00
Martin Bergljung
4c0e340ab4 DEVPLAT-6: Fix regression and functional IT (still needs proper release of share-po) 2015-04-27 14:22:35 +01:00
Samuel Langlois
cf86202c28 Upgrade Enterprise default version to 5.0.1 2015-04-22 18:33:12 +01:00
Martin Bergljung
d8816d7fa7 DEVPLAT-50 2015-04-21 09:42:16 +01:00
Martin Bergljung
e2da89679c DEVPLAT-31: Add JS minification, #269 2015-04-08 14:45:23 +01:00
Martin Bergljung
c9865d2295 DEVPLAT-44: Image corrupted when overriding the favicon.ico file, #267 2015-04-08 14:41:21 +01:00
Ole Hejlskov
a7856633ec Set virtual class path up correctly. Running 'mvn compile' makes sure the changes
end up in target/${project.build.finalName}/config. This causes issues when
changing existing files after starting/restarting, since integration-test makes
the files appear in target/test-classes. The app would then only serve the file
in target/test-classes and ignore the rest.

By switching these we can strive for having 'mvn compile' do everything we need
to ensure hot reloading works.
2015-04-07 17:37:24 +02:00
Ole Hejlskov
c62178aadf Clear cache/web scripts profile now hooks in the right phase and works as expected 2015-04-07 16:47:02 +02:00
Martin Bergljung
12807d4af3 Fixed parent sdk pom conflicts 2015-04-07 09:50:48 +01:00
Martin Bergljung
10bd148795 DEVPLAT-43 2015-04-07 09:35:19 +01:00
mindthegab
4e625f0ce3 Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk
Conflicts:
	poms/alfresco-sdk-parent/pom.xml
2015-04-02 13:25:46 -04:00
mindthegab
db3e891c05 fixed issue 254 - added css to the non filtered list 2015-04-02 13:22:51 -04:00
Martin Bergljung
60193a7029 DEVPLAT-13,14,31-37 2015-04-02 16:10:53 +01:00
Martin Bergljung
a04ef8ad72 Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2015-03-24 14:24:26 +00:00
Martin Bergljung
221752ef0d Backed out of H2 version 1.4.186 (hangs on second start), DEVPLAT-21 2015-03-24 14:24:06 +00:00
mindthegab
593f4e9143 Update README.md 2015-03-23 15:58:56 -04:00
mindthegab
c7296f71c2 Update README.md 2015-03-23 15:56:55 -04:00
Martin Bergljung
d2aa943430 Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2015-03-22 15:15:45 +00:00
Martin Bergljung
ca3fea4e1b DEVPLAT-3,DEVPLAT-4 2015-03-22 15:14:08 +00:00
mindthegab
6ff39d81ff Update README.md 2015-03-18 13:06:39 -04:00
mindthegab
9dae6e5279 Update README.md 2015-03-18 13:06:08 -04:00
mindthegab
28d475711e Update README.md 2015-03-18 12:50:13 -04:00
mindthegab
36ad3db030 -- fixes issue #262 2015-02-20 08:50:05 -05:00
mindthegab
10fb9dedac fixes issue 257 - moved to enforcer as <prerequisites> is not inherited 2015-02-18 13:31:38 -05:00
mindthegab
041f188760 [maven-release-plugin] prepare for next development iteration 2014-12-23 23:52:14 -05:00
mindthegab
ae7f3bd532 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0 2014-12-23 23:52:11 -05:00
mindthegab
58cf54fe7d complete commit for issue #251 2014-12-23 23:33:14 -05:00
mindthegab
58ee1a3c79 - closes issue #251
- refactored h2 support to play nicely with IDEs and across the aio and
amp archetype use cases
- now moved the h2 support for the default alfresco version in the
alfresco-rad project, as part of the rapid application development
features
- tested all cmd line and eclipse based scenarios
- consolidated alfresco.community.default version and
alfresco.enterprise.default version and made them parametric in the
whole project
2014-12-23 23:32:10 -05:00
mindthegab
2237ab18d0 [maven-release-plugin] prepare for next development iteration 2014-12-23 15:30:15 -05:00
mindthegab
84d01c7217 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0 2014-12-23 15:30:10 -05:00
mindthegab
0ef8953ffb for now not needing property expansion in profiles activation, so reverting the change to allow maven 3.2.2 compatibility 2014-12-23 14:35:23 -05:00
mindthegab
e377a9ef74 closed issue #163. added dependencies for enterprise profile and tested to work in amp and aio in eclipse and cmd line 2014-12-23 13:44:43 -05:00
mindthegab
1448f64560 added unit test to repo-amp for consistency 2014-12-23 12:35:05 -05:00
mindthegab
8bf4214be1 added amp testing framework to aio. tested remote junit working 2014-12-23 12:34:30 -05:00
mindthegab
bfd6d9ccc8 -updated h2 support (removed version of unused h2 support) 2014-12-23 12:28:51 -05:00
mindthegab
6af15e115c ugly code, made only slightly less ugly by not swallowing the exception 2014-12-22 12:05:50 -05:00
mindthegab
2d8a6cfcb6 fixing non fatal import issue in eclipse (for the sdk project, not generated archetypes) 2014-12-22 11:24:37 -05:00
mindthegab
61b833a362 closes issue #248. included disable-resource-caching in share-config-custom.xml per upstream issue https://issues.alfresco.com/jira/browse/ACE-2566 2014-12-22 11:18:47 -05:00
mindthegab
3b74df1b9f closes issue #248. included disable-resource-caching in share-config-custom.xml per upstream issue https://issues.alfresco.com/jira/browse/ACE-2566 2014-12-22 11:18:16 -05:00
mindthegab
705550faae updated readme for staging of 2.0.0 2014-12-22 11:06:43 -05:00
mindthegab
fa762dd48c updated readme for staging of 2.0.0 2014-12-22 11:05:52 -05:00
mindthegab
640ffcff90 Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2014-12-22 11:04:49 -05:00
mindthegab
1662c159c5 updated readme for staging of 2.0.0 2014-12-22 11:04:29 -05:00
Samuel Langlois
60689add1e Fix typos 2014-12-19 16:48:53 +00:00
mindthegab
79aef16e36 -- fixed additional maven alfresco sdk old references 2014-12-19 09:29:48 -05:00
mindthegab
c7b88eb3d1 [maven-release-plugin] prepare for next development iteration 2014-12-19 08:33:01 -05:00
mindthegab
44b6327aca [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0 2014-12-19 08:32:58 -05:00
mindthegab
1bc351d51b added comment 2014-12-19 02:13:17 -05:00
mindthegab
1c56ccdab2 - issue #228
- temporarily we'll use buildonly, later we need to find a better
solution 
- documented options in comments
2014-12-19 01:54:57 -05:00
mindthegab
6826351beb -- fixes issue #242
-- removed superfluous log4j config
2014-12-19 01:24:02 -05:00
Samuel Langlois
f5a4787964 Tune generated doc (mostly Maven Alfresco SDK -> Alfresco SDK) 2014-12-18 18:06:56 +00:00
Ole Hejlskov
6493b8e9d1 Add jetty plugin to re-enable remote unit tests 2014-12-04 16:57:21 +01:00
Samuel Langlois
c8fc67a273 #230 Comment out application of alfresco-spp amp: it's not available in Enterprise Edition 2014-12-04 12:13:41 +00:00
Samuel Langlois
27236060b9 Switch default enterprise version to 5.0 2014-12-04 11:41:15 +00:00
Samuel Langlois
a0be18daee Upgrade Enterprise tests to 5.0 now that it is released 2014-12-01 15:37:49 +00:00
Samuel Langlois
bbf5197a5a Provide a way to skip the tests: -DskipTests now works 2014-12-01 15:37:21 +00:00
Samuel Langlois
30d8412f0b Change default Alfresco version from 5.0.b to 5.0.c 2014-12-01 14:58:31 +00:00
Samuel Langlois
4355d0fb50 #186 Add integration tests against the Enterprise edition 2014-11-21 14:39:11 +00:00
Samuel Langlois
55c21e7989 Upgrade Maven plugins to their latest version 2014-11-19 18:34:48 +00:00
Ole Hejlskov
5e02d4d071 Merge pull request #232 from loftuxab/master
Merged loftux's pull request. Disable resource filtering on binary files, support for H2 upgrades
2014-11-09 22:48:18 +01:00
Ole Hejlskov
3a322ceb2d Add Sonatype repository, fixes #221 2014-11-09 21:42:14 +01:00
Ole Hejlskov
6cf5ec1305 Comment out pluginrepositories that points to artifacts.alfresco.com in an attempt to fix plugin resolution failure. 2014-11-09 20:42:47 +01:00
Ole Hejlskov
7a9d6c9403 Add sonatype as plugin repository 2014-11-09 20:19:10 +01:00
Peter Löfgren
154da68795 Add support for upgrade scripts for H2
Upgrades may or may not work (determined by my own experience). The failure seen was due to an activiti patch in 5.0.b, this patch is changes so if using later version of Alfresco the upgrades work.
There is however no guarantee that it will work in the future, but I think it is worth to have support, because if it works, you avoid having to recreate test data when upgrading alfresco version.

Since I couldn't find a good way to use wildcard copy for the upgrade scripts copying, it does have the version numbers included in path. So whenever Alfresco determines that it is time for a new folder for later version, this has to be added.
2014-10-27 16:59:51 +01:00
Peter Löfgren
9c4adc5dd6 Adding non filtered files
-jar  to allow jar files to be added in src/main/amp/lib
-font files if used in custom themes
2014-10-20 15:29:40 +02:00
mindthegab
a94f0081d0 Closes issue #227
Consolidated h2 dialect on-the-fly "generation" (and other h2 related
operations) into an sdk-parent pom profile. Activated *only* when
src/test/properties/local/alfresco-global.properties is present.
2014-10-16 21:09:21 +02:00
Michael Suzuki
600eeeacc3 removed files that are related to eclipse and not part of the archetype 2014-10-10 18:01:19 +01:00
Michael Suzuki
447a22a2ae fix #227, All in one archetype was not able to start as the db config files where generated in the runner module instead of repo-amp 2014-10-10 17:45:38 +01:00
Samuel Langlois
2bdaf65f2c Fix typo 2014-10-07 17:28:30 +01:00
Samuel Langlois
4d1886a4da Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2014-10-07 17:07:26 +01:00
Samuel Langlois
134d16973d Fix support of H2 database
- Remove dependency to tk.skuro.alfresco:h2-support
 - Extract PostreSQL dialect files from alfresco-repository and transform then into H2 files dialect on-the-fly
2014-10-07 16:47:46 +01:00
Ole Hejlskov
a641eb8a6b Use buildonly for now to make tests pass 2014-10-07 16:14:34 +01:00
mindthegab
5400489974 Merge pull request #218 from kgeis/patch-1
Update alfresco-global.properties
2014-10-07 14:31:37 +01:00
mindthegab
a46eed0d7b Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2014-10-07 14:19:11 +01:00
mindthegab
a594d9b523 - Added experimental integration with Alfresco Technical Validation for issue #188 2014-10-07 14:18:29 +01:00
Ole Hejlskov
c6beb898ad Bump to 5.0.b.
- Remove jcl-over-slf4j
 - Bump H2 support
2014-10-06 21:10:26 +01:00
Ole Hejlskov
70533a2973 Remove old dependency causing issues with 5.0.b 2014-10-06 15:32:27 +01:00
Michael
e97deb4f14 Merge pull request #219 from Alfresco/revert-215-master
Revert "Adding integration test profile"
2014-09-12 19:10:07 +01:00
Michael
3b2e93904f Revert "Adding integration test profile" 2014-09-12 19:06:13 +01:00
Ken Geis
60d805768a Update alfresco-global.properties
fix typo
2014-09-12 02:40:50 -07:00
Michael
9616129c69 Merge pull request #215 from michaelsuzukisagi/master
Adding integration test profile
2014-09-11 09:47:03 +01:00
mindthegab
ef2dd626f1 -- fixed typo 2014-09-11 01:42:15 -04:00
mindthegab
cb796f3b2a -- minor context path fix. with Enterprise alfresco.client.war !=
alfresco.client.contextPath
2014-09-11 01:39:24 -04:00
mindthegab
a0c8e3e867 Fixes issue #164, merged pull request #216
- -Penterprise is now added and SDK will run against latest alfresco
enterprise
- currently Alfresco INTERNAL only (no Enterprise SNAPSHOTs published)
- tested with latest Enterprise HEAD and also aligned artifactId to new
naming (alfresco-enterprise|share-enterprise)
- updated docs


Merge remote-tracking branch 'origin/enterprise-profile'

Conflicts:
	archetypes/alfresco-allinone-archetype/src/main/resources/archetype-resources/pom.xml
	archetypes/alfresco-amp-archetype/src/main/resources/archetype-resources/pom.xml
	archetypes/share-amp-archetype/src/main/resources/archetype-resources/pom.xml
	poms/alfresco-sdk-parent/pom.xml
	poms/alfresco-sdk-parent/src/site/apt/sdk-profiles.apt.vm
	src/site/apt/prerequisites.apt.vm
2014-09-11 01:28:54 -04:00
mindthegab
c75a137a80 -- updated metadata descriptors (shown in Maven central)
-- updated readme to point to the new video
2014-09-10 18:40:44 -04:00
mindthegab
284710ab26 issue #217
-- added -Pregression profile to invoke Share PO / Selenium
functional/regression tests 
-- tested successfully with 'mvn clean install' -Prun,regression
(optionally -Dtest=LoginPageTests)
-- reports are produced in target
-- updates docs on available profiles
2014-09-10 16:35:56 -04:00
Michael Suzuki
4c6610a004 tidy amp demo,and added mechanism to slow test down to allow every one to see the demo page with selenium 2014-09-09 15:47:42 +01:00
Michael Suzuki
8e10982a4a merge changes from alfresco sdk 2014-09-09 14:23:52 +01:00
Michael Suzuki
cb8315e268 remove testng from sample 2014-09-09 12:58:21 +01:00
Michael Suzuki
19701b28c6 added param to allow skiping of unit test 2014-09-09 12:28:49 +01:00
Michael Suzuki
6f3363074e remove testing from integration profile 2014-09-09 11:26:18 +01:00
Michael Suzuki
247b23a818 fix to run unit test and integration test 2014-09-09 11:06:51 +01:00
Michael Suzuki
d23ce407cd fix to compile integration folder 2014-09-09 08:54:06 +01:00
mindthegab
572cbab5f6 -- fixed minor missing token replacement in index.html 2014-09-09 03:02:08 -04:00
mindthegab
b97c4fccdc [maven-release-plugin] prepare for next development iteration 2014-09-09 02:42:56 -04:00
mindthegab
09fefd9034 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0-beta-4 2014-09-09 02:42:51 -04:00
mindthegab
8fe1d265f8 -- fixed broken run.sh re-releasing 2014-09-09 02:34:08 -04:00
mindthegab
4489f44636 -- fixed minor typo in run.sh in amp archetype. re-releasing a beta-4
-- attempted (and failed) to fix run.sh permissions in the archetype
2014-09-09 02:32:17 -04:00
mindthegab
077ff66198 [maven-release-plugin] prepare for next development iteration 2014-09-09 00:51:30 -04:00
mindthegab
6c8a4580d5 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0-beta-3 2014-09-09 00:51:26 -04:00
mindthegab
27dd99b809 -- minor docs fixes 2014-09-09 00:35:14 -04:00
mindthegab
2d6eec000d -- updated docs and readme for beta-3 release
-- updated all in one index page and referneces from docs
-- added initial docs on run.sh
-- linked to teaser video
2014-09-09 00:20:37 -04:00
mindthegab
dd270a3ca8 added reference to Enterprise Portal 2014-09-08 21:16:27 -04:00
mindthegab
561aa10ff7 fixes issue #200
fixes issue #213

- refactored solr pom to properly be a WAR project (no more POM)
- removed ANTRUN for good. using maven-war-plugin to pacakge a proper
solr customized war
- added packaging of the -config.zip customized artifact for solr
- updated archetypes to include the new files
- updated runner configuration to run also solr as webapp
- added root webapp with index.html so that opening localhost:8080
points easily to the installed webapps
- aded context for solr
- fixed Solr INFO logging by adding delegate=false in the
context-solr.xml so that slf4j is NOT duplicated
- minor naming updates
2014-09-08 20:31:43 -04:00
Michael Suzuki
5c4174e0d8 fix amp archetype to run, resolve dependency conflict 2014-09-08 14:41:21 +01:00
Michael Suzuki
ab258df2b4 add new profile to setup integration 2014-09-08 13:05:04 +01:00
mindthegab
65414648c8 -- fixes to the previous commit, tested on aio 2014-09-06 13:42:39 -04:00
mindthegab
dad090fc73 -- issue #214
- Refining pull request #209 to only make default use of spring loaded
in run.sh and automatically download it
- added -Psetup profile (and documented) to automatically download
springloaded in the initialize phase 
- embedded conditional call to download springloaded (if lib doesn't
exist already) in the run.sh scripts
- added run.sh scripts in each archetype
- Refined naming

- fixes issue #196
- removed double declaration of the alfresco-maven-plugin
2014-09-06 12:09:21 -04:00
Michael Suzuki
84e8fd5ae7 fix test 2014-09-05 17:20:30 +01:00
Michael Suzuki
f3df237cf0 fix demo to work 2014-09-05 17:15:58 +01:00
Michael Suzuki
fe2fdd3c06 updated to latest plugin version and fix to allow ui-test run after amp-to-war 2014-09-05 16:37:39 +01:00
Michael Suzuki
be3b8618ae import all sub dependency via share po project 2014-09-05 15:07:50 +01:00
Michael Suzuki
6d5ab89f4a remove dependency from project, included in profile 2014-09-05 14:37:04 +01:00
Michael Suzuki
51ab29e79b formatting amend 2014-09-05 14:23:38 +01:00
Michael Suzuki
dab870c8f5 fix to run testng in functional and integration tests 2014-09-05 14:06:34 +01:00
Michael Suzuki
6076eecf4c added junit runner to junit test class 2014-09-05 11:52:51 +01:00
Michael Suzuki
eb583a15fd updated profile to not affect mvn test 2014-09-05 11:47:22 +01:00
Michael Suzuki
114d66fca1 adding integration profile 2014-09-04 15:35:36 +01:00
Michael Suzuki
faf0d89df9 added integration as source folder for m2 eclipse setup 2014-09-04 14:57:41 +01:00
Michael Suzuki
a409cf08bd added new integration test directory, manages all integration test content 2014-09-04 13:45:02 +01:00
Michael Suzuki
5421b845c8 seperated tests into unit and integration 2014-09-03 11:15:47 +01:00
Michael Suzuki
fc55716499 tidy up formatting 2014-09-03 10:10:31 +01:00
mindthegab
ec26fef087 Merge pull request #209 from bhagyas/master
Bringing in consistency across docs and project naming
2014-09-03 00:17:18 -04:00
mindthegab
7ad13ab5ca More fixed for issue #197 2014-08-29 19:06:47 -04:00
mindthegab
6a770b9c3f Fix for issue #197 2014-08-29 19:04:31 -04:00
mindthegab
6f1672b481 More fixes for issue #194 2014-08-29 19:02:12 -04:00
mindthegab
b4da819901 Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2014-08-29 19:00:06 -04:00
mindthegab
7871162941 added documentation for new profiles 2014-08-29 14:12:59 -04:00
mindthegab
97f7a04704 fixes issue #211 - added defensive measure for when people do not mvn
clean between builds
2014-08-29 14:01:23 -04:00
mindthegab
1020ea3e2b Merge pull request #212 from Alfresco/atv-integration
Atv integration + RM archetype
2014-08-29 13:54:49 -04:00
mindthegab
701c3e87d4 completed rm integration 2014-08-29 13:51:11 -04:00
mindthegab
9b712d83e2 2nd pass on issue #188 2014-08-29 10:30:04 -04:00
mindthegab
4a6c98d2a4 first pass at issue #194 - integrated -Prm profile 2014-08-29 10:28:27 -04:00
mindthegab
2718581d23 archetypes/alfresco-allinone-archetype/src/main/resources/archetype-resources/pom.xml 2014-08-29 10:27:44 -04:00
mindthegab
11a75c823a - fixed issue #210 2014-08-29 10:26:12 -04:00
bhagya_silva
53547a4d8b Fixed typo 2014-08-28 16:03:26 +02:00
bhagya_silva
148dff92ed Merge remote-tracking branch 'origin-origin/master' 2014-08-28 15:58:03 +02:00
bhagya_silva
6fb92cf40b Updated read me 2014-08-28 15:50:48 +02:00
bhagya_silva
90e8f95197 Fixed SDK Naming Across all projects 2014-08-28 15:41:13 +02:00
bhagya_silva
d2fbf381e5 Changed Docs to Documentation 2014-08-28 15:34:03 +02:00
bhagya_silva
da5ffcf2a6 No more Alfresco Maven SDK, just Alfresco SDK. 2014-08-28 15:09:49 +02:00
bhagya_silva
52aac9ab2b Better naming for SDK Modules 2014-08-28 14:45:44 +02:00
bhagya_silva
a7b553866f Updated naming of the archetypes 2014-08-28 14:41:58 +02:00
bhagya_silva
d2517be6a1 Added Alfresco Share as a provided dependency with classes modifier 2014-08-28 14:41:00 +02:00
bhagya_silva
9aacf6064c Removed JVM options for Alfresco Share Build 2014-08-28 14:36:50 +02:00
bhagya_silva
13a384c437 Added bash scripts for ease of use when running from command line. 2014-08-28 14:32:51 +02:00
mindthegab
15f2aa1c85 [maven-release-plugin] prepare for next development iteration 2014-08-27 01:33:44 -04:00
mindthegab
2c880f6619 [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0-beta-2 2014-08-27 01:33:41 -04:00
mindthegab
495820dbc1 first take at intgration of the ATV. Getting 'Divide by Zero' exception so stopping for now 2014-08-27 01:09:40 -04:00
mindthegab
a4f932de0c - removed unused imports 2014-08-25 17:53:39 -04:00
mindthegab
5e6c04700d - removed duplicated junit declaration 2014-08-25 17:48:19 -04:00
mindthegab
8070c7c5e2 Fixed m2e version range (which prevented usage on 2.0.0-beta-1) 2014-08-25 11:46:34 -04:00
mindthegab
879f02b534 Minor site fixes 2014-08-24 08:02:11 -04:00
mindthegab
cccf604bb2 Complete issue #164.
- Added plugin configuration to meet Maven central deployment
requirements (attach src, javadocs, sign artifacts)
- Added KEYS file with for devs to add their PGP key export. Added key
used for releasing / signing.
2014-08-23 12:04:14 -04:00
mindthegab
10eef5a821 [maven-release-plugin] prepare for next development iteration 2014-08-22 19:59:22 -04:00
mindthegab
661982b7bb [maven-release-plugin] prepare release alfresco-sdk-aggregator-2.0.0-beta-1 2014-08-22 19:59:19 -04:00
mindthegab
292a90ac3a - bumped maven-release-plugin version 2014-08-22 19:45:26 -04:00
mindthegab
c625cccd3b - changed artifactId for the aggregator, lifecycle is obsolete
- updated reference to documentation location for 1.x (keeping from
duplication)
- Updted readme with new site url
2014-08-22 19:08:57 -04:00
mindthegab
fd8708c2f3 -- Updated changes plugin to work with Github issues management
-- updated team list, added Ole
-- updated readme.md
2014-08-22 18:47:20 -04:00
mindthegab
d367cf4a00 Fixed issue #164 (deployment to Maven Central).
Deployed the first snapshot.

Updated documentation getting ready for beta-1.

Removed jetty references.

Added docs for the share-amp-archetype
2014-08-22 16:07:17 -04:00
mindthegab
e354786112 fixed issue #208, updated archetype metadata to include any file type
under src/main/amp
2014-08-21 08:55:21 -04:00
mindthegab
ccdd59657f Closed issue #197 and initial support for issue #193.
- Completed migration of the all in one to the new rad spring loaded +
tomcat7 based approach. Tested successfully hot reload of classpath and
webapp resources
- added share amp in the all in one
- added sample webscript (and webscript folder) across all amp project
so that on the fly adding of webscript works 
- -Prun profile now allows rapid development of the share amp and
alfresco amp running with MAVEN_OPTS="-Xms1024m -Xmx2048m
-XX:PermSize=1024m -javaagent:/path/to/springloaded-1.2.0.RELEASE.jar
-noverify" mvn clean install -Prun
- tested and added support for META-INF/resources loading (and hot
reloading using the tomcat7 jar scanner)
- discouraged war overlay by making repo and share pure aggregator
- renamed projects
- removed faces-config-custom.xml (no more explorer stuff)
- updated solr log4j configuration
- fully tested in Eclipse
2014-08-21 02:01:21 -04:00
mindthegab
760d970240 - improved approach for issue 197 (especially for IDEA, Ole you are
welcome :)
- reduced usage of copy-resources where possible to maximize idea
compatibility
- reduced duplication of amp resources in the classpath
- tested in eclipse and all seems to work (test, remote junit test,
amp-to-war, hot java reload with spring loaded, new webscript hot
loaded, jsp change)
2014-08-15 17:15:41 -04:00
mindthegab
3f44c3be58 issue #197 - fixed remote Junit runner 2014-08-06 10:35:08 -04:00
mindthegab
b55d13b0d0 Issue #197:
- enabled rad functionalities on share archetype
- added basic Ole's sample for Aikau widget 
- added new configuration property to the AmpMojo to allow NOT including
/web resources in the AMP. This allows the -Pamp-to-war profile to
exclude /web from AMP packaging and load directly web resources from the
virtualWebapp Resources tag in context.xml (differently from Loader, if
you have web resources twice, the webapp one takes precedence)
- configured and tested amp-to-war to reload share web resources
- added
src/test/resources/alfresco/web-extension/share-config-custom.xml to
enable dev mode just in test
2014-08-06 01:45:32 -04:00
mindthegab
a37e89f34b removed tabs introduced by Eclipse.
Added m2e configuration so import in Eclipse is error-free.
2014-08-05 23:23:26 -04:00
mindthegab
351a81f4f0 Issue #197 - Enabled spring-loaded RAD ide friendly integration features
for repo amp archetype. Removed dead amp-to-war code.

Consolidated in amp-to-war:
- installation of the AMP
- rapid development / ide integration (searchVirtualFirst)
- tested junit-remote with spring-loaded (works like a charm)

Removed rad profile and created a (legacy) Jrebel profile to just create
the Jrebel files (unneeded when using Spring-loaded)

Tested:
- mvn test
- mvn integration-test -Pamp-to-war
- reloading of classes / webapp resources / unit tests
- remote unit test running

Run your build with MAVEN_OPTS="-Xms1024m -Xmx2048m -XX:PermSize=1024m
-javaagent:/path/to/springloaded/springloaded-1.2.0.RELEASE.jar" mvn
clean install -Pamp-to-war
2014-08-05 23:15:30 -04:00
mindthegab
addad0866f updated .gitignore 2014-08-05 23:07:49 -04:00
Ole Hejlskov
ba31887533 Remove version, leave that to the parent pom, as discussed on issue #70 2014-07-31 16:21:53 +02:00
Maurizio Pillitu
17350c4328 changed Alfresco private repository id to alfresco-private-repository, in order to be compliant with http://docs.alfresco.com/4.2/tasks/dev-extensions-maven-sdk-tutorials-configure-maven-enterprise.html (issue #163) 2014-07-25 18:15:23 +02:00
Maurizio Pillitu
feb0d736da added documentation for issue #163 2014-07-25 18:11:19 +02:00
Maurizio Pillitu
ed17a67187 commented alfresco.client.war.version, which defaults to alfresco.version 2014-07-25 15:46:40 +02:00
Maurizio Pillitu
3735773e71 fixes issue #163. junit dependency definition on amp-archetype, I removed it where unnecessary (while keeping junit in the test build scope) 2014-07-25 15:22:58 +02:00
Maurizio Pillitu
f7731c25c0 Fixes issue #176. added empty folders for web/js web/themes and web/components 2014-07-25 13:05:14 +02:00
Maurizio Pillitu
3028567d0f Fixed issue #195. Replaced all 5.0.a-SNAPSHOT with 5.0.a 2014-07-25 12:36:22 +02:00
Maurizio Pillitu
ba7714fccc added ignores for logs and IntelliJ Idea 2014-07-25 12:30:25 +02:00
Ole Hejlskov
e5a8e944d5 Test push permissions 2014-07-21 17:13:37 +02:00
mindthegab
d16c7572a5 completes issue #189 - updated scm references 2014-07-20 16:50:24 -04:00
mindthegab
e841f8039a added license and support info 2014-07-20 13:05:14 -04:00
mindthegab
80b914ba3d added reference to alfresco artifacts repo 2014-07-20 12:39:33 -04:00
mindthegab
0c879938b2 added reference to alfresco-sdk-samples 2014-07-20 12:32:36 -04:00
mindthegab
1d6be1d5b0 added logo 2014-07-20 12:23:20 -04:00
mindthegab
23ffd5fa9d added logo 2014-07-20 12:22:49 -04:00
mindthegab
75ad7f1d40 logo file 2014-07-20 12:22:08 -04:00
mindthegab
d99773c1f4 added logo 2014-07-20 12:21:40 -04:00
mindthegab
c537eb438f added additional resources 2014-07-20 11:57:22 -04:00
mindthegab
d095094ff4 added minimal readme with external references before publishing 2014-07-20 11:42:54 -04:00
mindthegab
3adbf119f8 removed obsolete files 2014-07-20 11:19:24 -04:00
mindthegab
a1ca398736 removed obsolete files 2014-07-20 11:18:02 -04:00
mindthegab
0f5e234d2b Initial Merge branch 'master' of https://github.com/Alfresco/alfresco-sdk 2014-07-20 09:42:19 -04:00
mindthegab
c27b75f819 fixed issue #159 - cleanp of enterprise reference and general naming alignment. pointed to official docs where available
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@746 04253f4f-3451-0410-a141-5562f1e59037
2014-07-18 00:00:38 +00:00
mindthegab
4dadee2e76 updating used plugin version, version-maven-plugin missed that
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@745 04253f4f-3451-0410-a141-5562f1e59037
2014-07-17 21:40:19 +00:00
mindthegab
4c21e6f8cf Initial commit 2014-07-17 14:42:00 -04:00
mindthegab
9e4dd2b84f bumped version to 2.0.0-SNAPSHOT to create fresh snapshots and work on the 2.x release
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@744 04253f4f-3451-0410-a141-5562f1e59037
2014-07-17 17:36:26 +00:00
maoo
047c05032c issue #108 fixed; removed outdated README and ROADMAP txt
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@743 04253f4f-3451-0410-a141-5562f1e59037
2014-07-03 10:00:59 +00:00
ohej
61b61ccbb6 Initial Share AMP archetype
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@742 04253f4f-3451-0410-a141-5562f1e59037
2014-06-22 14:25:58 +00:00
slanglois
2513926a09 Fix type of alfresco-solr config artifact, which is now a zip.
Housekeeping in all-in-one archetype to remove Maven warnings


git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@741 04253f4f-3451-0410-a141-5562f1e59037
2014-06-18 10:26:05 +00:00
slanglois
9e051bf382 Issue #187: bump Alfresco version to 5.0.a-SNAPSHOT
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@740 04253f4f-3451-0410-a141-5562f1e59037
2014-06-17 17:34:40 +00:00
mindthegab
dfa0937cd5 -- upgraded junit version
-- consolidated in parent pom version and scope

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@739 04253f4f-3451-0410-a141-5562f1e59037
2014-06-17 09:44:22 +00:00
ohej
a9e8bde3a2 Re-added Gab's commit from r736
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@738 04253f4f-3451-0410-a141-5562f1e59037
2014-06-16 21:12:43 +00:00
ohej
5c56d668e2 Bump to 4.3.0-SNAPSHOT
- Fix Solr re-packaging for all-in-one
 - Remove config artifacts
 - Initial Share AMP archetype 


git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@737 04253f4f-3451-0410-a141-5562f1e59037
2014-06-16 21:09:16 +00:00
mindthegab
c814ca2b18 test
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@736 04253f4f-3451-0410-a141-5562f1e59037
2014-06-10 13:01:57 +00:00
maoo
49f3014c5e issue #175 - Reverted archetype-metadata.xml to previous version; the real issue was caused by a wrong mention (in the all-in-one archetype) of a property (alfresco_target_amp_client_war) that is not needed.
The amp module now has alfresco.client.war=alfresco hardcoded in the pom.xml

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@735 04253f4f-3451-0410-a141-5562f1e59037
2014-01-09 20:37:07 +00:00
maoo
66d30c9841 fixed issue #175
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@734 04253f4f-3451-0410-a141-5562f1e59037
2014-01-09 19:54:53 +00:00
bulat.yaminov@gmail.com
89519f33aa issue #153: added more nonFilteredFileExtensions
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@733 04253f4f-3451-0410-a141-5562f1e59037
2013-11-17 15:53:41 +00:00
mindthegab
2461827c0d fixes issue #150. Axis logging exception not thrown anymore at startup
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@732 04253f4f-3451-0410-a141-5562f1e59037
2013-11-17 14:53:43 +00:00
mindthegab
14727c05cf [maven-release-plugin] prepare for next development iteration
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@731 04253f4f-3451-0410-a141-5562f1e59037
2013-11-13 19:57:48 +00:00
mindthegab
6b7c68ed22 [maven-release-plugin] prepare release alfresco-lifecycle-aggregator-1.1.1
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@729 04253f4f-3451-0410-a141-5562f1e59037
2013-11-13 19:57:39 +00:00
mindthegab
aa48517e04 fixed java 1.7 version, needed for alfresco 4.2
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@728 04253f4f-3451-0410-a141-5562f1e59037
2013-11-13 19:46:42 +00:00
slanglois
7ae88244ff Increase a few Maven plugins + fix Maven warnings
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@727 04253f4f-3451-0410-a141-5562f1e59037
2013-11-06 12:42:18 +00:00
mindthegab
bdd82bfa97 [maven-release-plugin] prepare for next development iteration
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@726 04253f4f-3451-0410-a141-5562f1e59037
2013-11-06 03:06:14 +00:00
mindthegab
36cbd57dcd [maven-release-plugin] prepare release 1.1.0
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@724 04253f4f-3451-0410-a141-5562f1e59037
2013-11-06 03:06:01 +00:00
mindthegab
3e97370fcf added svn:ignores
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@723 04253f4f-3451-0410-a141-5562f1e59037
2013-11-06 02:50:19 +00:00
mindthegab
a5fde50bc0 added run integration testing for the archetypes; fixed all-in-one missing archetype resources
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@722 04253f4f-3451-0410-a141-5562f1e59037
2013-11-06 00:53:02 +00:00
mindthegab
5e7f4c623e fixes issue 123: jrebel configuration added in sdk pom, activate with -Prad to enable reloading in the webapp / tests
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@721 04253f4f-3451-0410-a141-5562f1e59037
2013-11-05 00:01:47 +00:00
mindthegab
df38011aa0 issue #123: added spring autowired test class capable of running locally and remotely in the JUnit remote runner
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@720 04253f4f-3451-0410-a141-5562f1e59037
2013-11-04 23:03:50 +00:00
mindthegab
3c4d153f3d issue 123: enabled jrebel support for amp-archetype and added alfresco-rad module to provide remote running of JUnit tests. Switched demo test to using spring annotation as it works on alfresco 4.2.0, both for remote and local running of JUnit. The -Pamp-to-war profile adds the relevant JUnit listener (jetty) which listens for the class name and method, using junit-remote (https://github.com/Tradeshift/junit-remote)
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@719 04253f4f-3451-0410-a141-5562f1e59037
2013-11-04 22:51:56 +00:00
mindthegab
e3aeee2310 fixed indents
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@718 04253f4f-3451-0410-a141-5562f1e59037
2013-11-04 16:17:40 +00:00
mindthegab
6c3977a52a fixed all-in-one run, disabled testing in amp-to-war
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@717 04253f4f-3451-0410-a141-5562f1e59037
2013-11-04 16:05:51 +00:00
mindthegab
38fd25b352 removed unnused solr web.xml
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@715 04253f4f-3451-0410-a141-5562f1e59037
2013-11-03 14:42:13 +00:00
mindthegab
335c395e3a fixes issue 139 - for not just changed the link to a working one, later will configure changes-report to link properly
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@714 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 07:40:40 +00:00
mindthegab
54eed21b25 fixed issue 122: consolidate -Ppurge profile in super pom, removing indexes, content and all logs files found recursively
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@713 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 07:34:33 +00:00
mindthegab
278ed06ae4 one more typo, guess i need some sleep :)
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@712 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 07:20:28 +00:00
mindthegab
a1d5ac50a4 fixed typo in tomcat param
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@711 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 07:19:28 +00:00
mindthegab
7c388afdbd remvoed project specific references
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@710 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 07:17:14 +00:00
mindthegab
a06f1b3642 fixed solr in runner profile, and introduced maven-replacer-usage in solr web.xml (same as the Alfresco Maven build, using xml comments as tokens to replace
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@709 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 07:03:11 +00:00
mindthegab
48f3c3a2b3 fixed run profile to run only on AMPs and runner, restored docs
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@708 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 06:52:42 +00:00
mindthegab
b4c4e34a02 fixed issue 129, fixed issue 148, fixed issue 149: - replaced Jetty with Tomcat7 in both AMP and all-in-one; -removed WQS references in AMP and all-in-one project; -removed version specific web.xml overlays (used for alfresco <-> solr https comms) and added use of maven-replacer-plugin to patch distro OOTB files; -updated docs; -tested tomcat running successfully both in amp and all-in-one archetypes; -small non blocker glitch on class loading in maven tracked in issue 150
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@707 04253f4f-3451-0410-a141-5562f1e59037
2013-10-30 06:31:07 +00:00
rgauss
1e1430fb5f - Added attachClasses configuration which will attach a JAR with as separate 'classes' artifact
- Added attachConfig configuration which attaches a 'config' classifier JAR with the contents of the config dir of the AMP, useful as a test dependency

Fixes issue 147

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@706 04253f4f-3451-0410-a141-5562f1e59037
2013-10-29 19:49:11 +00:00
mindthegab
427944a051 fixes issue #130, removed wcmqs, ran integration test and started jetty for all in one. also bumped default version to 4.2.e
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@705 04253f4f-3451-0410-a141-5562f1e59037
2013-10-28 00:26:36 +00:00
rgauss
3f2b3e8dc5 Changed readonly outputDirectory to ampFinalDir
Fixes Issue 146


git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@704 04253f4f-3451-0410-a141-5562f1e59037
2013-10-23 14:18:27 +00:00
rgauss
7b1d3cca7c Added skipAmpInstallation parameter which exits the InstallMojo execution before validation
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@703 04253f4f-3451-0410-a141-5562f1e59037
2013-10-23 09:43:53 +00:00
slanglois
59f63764ec Upgrade default Alfresco version to 4.2.e - and upgrade all outdated Maven plugins too
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@702 04253f4f-3451-0410-a141-5562f1e59037
2013-10-17 10:42:20 +00:00
slanglois
16e3456457 Add integration tests to the 2 archetypes
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@701 04253f4f-3451-0410-a141-5562f1e59037
2013-10-17 10:22:13 +00:00
maoo
5ab005c182 fixed issue #143
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@700 04253f4f-3451-0410-a141-5562f1e59037
2013-09-28 00:09:54 +00:00
maoo
84a34450a4 fixed and tested issue #142
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@699 04253f4f-3451-0410-a141-5562f1e59037
2013-09-27 14:01:10 +00:00
mindthegab
adbad5c377 fixed issue 137 - swf are excluded from filtering
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@698 04253f4f-3451-0410-a141-5562f1e59037
2013-08-14 15:16:41 +00:00
maoo
42c16e2844 release info and commands
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@697 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 18:10:17 +00:00
mindthegab
1d2213ee84 [maven-release-plugin] prepare for next development iteration
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@696 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 18:05:22 +00:00
mindthegab
782c34b652 [maven-release-plugin] prepare release alfresco-lifecycle-aggregator-1.0.2
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@694 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 18:05:01 +00:00
mindthegab
c11a4bea38 -- re-enabled scm as passing project.scm.properties does not work
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@693 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 17:46:21 +00:00
mindthegab
11520dd4f5 #131 - removed scm definition to try "on the flight" release
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@692 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 17:43:17 +00:00
mindthegab
d2efe45daa -- issue #131 moved scm properties to project properties and consolidated release profile
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@691 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 17:40:57 +00:00
mindthegab
4fcde94b42 - added -Prelease profile with all configurations
- added automatic filtering of SDK version in archetypes
- removed SCM definition (needs to tested)

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@690 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 17:33:23 +00:00
mindthegab
4a9ee81c91 -- verified all 1.0.2 scheduled issues
-- added POM comments

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@689 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 16:27:17 +00:00
maoo
685cc19e32 issue #127 - Also added alfresco_target_amp_client_war_groupId and alfresco_target_amp_client_war_version to archetype creation
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@688 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 14:38:37 +00:00
maoo
bc55760810 issue #114 - using alfresco-mmt 4.2.d-beta
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@687 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 13:41:54 +00:00
maoo
8568a8f1e3 issue #126 - adding alfresco.client.war.groupId and alfresco.client.war.version to alfresco-sdk-parent
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@686 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 13:24:35 +00:00
maoo
9f24d52e8c issue #127 - added alfresco_target_amp_client_war to alfreco-amp-archetype generation params
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@685 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 12:54:34 +00:00
mindthegab
a5fd434727 -- updated plexus archiver 2.3
-- updated to fixed SNAPSHOT version of mmt

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@684 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 10:23:14 +00:00
mindthegab
800a40b895 -- updated to plexus archiver 2.3
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@683 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 10:19:20 +00:00
mindthegab
281b079bff -- updated to latest dev version (TODO: parametrize for build time filtering)
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@682 04253f4f-3451-0410-a141-5562f1e59037
2013-07-02 10:17:00 +00:00
slanglois
49c8586c8f Issue 121: Enforce the usage of Maven 3.0.3
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@681 04253f4f-3451-0410-a141-5562f1e59037
2013-06-21 11:55:02 +00:00
mindthegab
206f2d1aa6 recommitting proper fix
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@680 04253f4f-3451-0410-a141-5562f1e59037
2013-03-22 08:52:44 +00:00
mindthegab
5a3bbf9358 fixing issue 118. added lic to non filtered extensions
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@679 04253f4f-3451-0410-a141-5562f1e59037
2013-03-21 08:40:26 +00:00
mindthegab
3f364593da [maven-release-plugin] prepare for next development iteration
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@678 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 11:11:42 +00:00
mindthegab
f6f3910f06 [maven-release-plugin] prepare release alfresco-lifecycle-aggregator-1.0.1
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@676 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 11:11:25 +00:00
mindthegab
58e55471ea updated compatibility with alfresco 4.1.2
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@675 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 11:10:41 +00:00
mindthegab
f3fe02bd6b [maven-release-plugin] rollback the release of alfresco-lifecycle-aggregator-1.0.1
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@674 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 11:09:04 +00:00
mindthegab
a5d942eeea [maven-release-plugin] prepare for next development iteration
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@672 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 11:00:21 +00:00
mindthegab
953656e2bd [maven-release-plugin] prepare release alfresco-lifecycle-aggregator-1.0.1
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@670 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 11:00:08 +00:00
mindthegab
7cb1ddae97 fixed typo
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@669 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 10:27:50 +00:00
mindthegab
8032c2a83c made release command overridable at release time, to skip site deploy if needed
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@668 04253f4f-3451-0410-a141-5562f1e59037
2013-02-14 10:19:33 +00:00
slanglois
6ce6a25bef Switch default Alfresco version to 4.2.c
Improve doc to add a filter in the archetype:generate command, so that only the newer archetypes are shown


git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@667 04253f4f-3451-0410-a141-5562f1e59037
2013-02-12 18:02:03 +00:00
slanglois
3dc65c84dd Issue #112: leave default update policy for snapshot repository in allinone archetype
Set credentials in distributionManagement for continuous build


git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@666 04253f4f-3451-0410-a141-5562f1e59037
2013-02-07 16:41:42 +00:00
slanglois
505d7f7659 Issue 106: Tune enforcer regexp to allow Alfresco Enterprise 4.1.2+
Upgrade default Alfresco version to 4.2.c


git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@665 04253f4f-3451-0410-a141-5562f1e59037
2013-01-31 18:25:01 +00:00
slanglois
13b215b1c1 Upgrade Maven plugins to latest versions + specify encoding
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@664 04253f4f-3451-0410-a141-5562f1e59037
2013-01-31 11:14:46 +00:00
rgauss
c7e12d32c6 - Added skipWarManifestCheck property which disables the check for a manifest file in warLocation
Fixes issue 109


git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@663 04253f4f-3451-0410-a141-5562f1e59037
2013-01-24 16:06:25 +00:00
rgauss
ed0bde637b Changed check for descriptor and manifest on WAR files only, not exploded dirs.
Fixes issue 107

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@662 04253f4f-3451-0410-a141-5562f1e59037
2013-01-24 02:04:03 +00:00
mindthegab
2ef8794fa1 -- fixed ga
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@661 04253f4f-3451-0410-a141-5562f1e59037
2012-11-06 02:20:53 +00:00
mindthegab
568fe5f476 -- added google analytics tracking code
-- upon release gaTrackingId should be passed on the command line or in settings

git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@660 04253f4f-3451-0410-a141-5562f1e59037
2012-11-06 02:14:09 +00:00
mindthegab
8966296c1d -- removed parent project from all components
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@659 04253f4f-3451-0410-a141-5562f1e59037
2012-11-05 02:32:30 +00:00
mindthegab
d051aeef80 [maven-release-plugin] prepare for next development iteration
git-svn-id: http://maven-alfresco-archetypes.googlecode.com/svn/trunk@658 04253f4f-3451-0410-a141-5562f1e59037
2012-11-05 02:16:07 +00:00
211 changed files with 7681 additions and 7275 deletions

14
.gitignore vendored Normal file
View File

@@ -0,0 +1,14 @@
**.idea
**.classpath
**.project
**.ipr
**.iml
**.log
**.log*
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.next
release.properties
**.settings
**bin

252
DOCS.txt
View File

@@ -1,252 +0,0 @@
This document needs updating...
**********************************
Disclaimer for maven-alfresco list
**********************************
This codebase is currently work in progress; the effort have been split in three directions:
a) The definition of 2 POM files that can handle versions and common build behaviors/features
b) The writing of an alfresco-maven-plugin to enable amp-to-war overlay provided by Alfresco
Repository built-in features (ModuleManagementTool) and replace the maven-amp-plugin (big
rewriting of the maven-war-plugin)
c) The definition of (initially 2) archetypes that show some simple project's configuration using
the parent POMs
Most of the build features have been successfully ported to a new structure, whose main advantage is
to keep pom.xml files extremely simple and readable (since a lot of logic have been moved to the parent).
Inherited behaviours are configurable simply defining specific properties in the project's or module's pom.xml
(see documentation below).
Here follows a list of build features that have not been ported yet:
- Maven SCM and release
- JBoss run
- Tomcat remote deployment
- Jetty Java source and resources reloading (Jetty currently runs .war files)
- Maven Site generation
- Maven reporting
- Maven distributionManagement
Apart from SCM and release, all the mentioned features are probably best suited for a more enterprise archetype,
using the Alfresco Web Integration POM as parent and adding more build features around Maven, Tomcat and JBoss.
******************
Alfresco Maven SDK
******************
The Maven SDK is an effort that have been developing in the last 5 years - mostly driven by community efforts on
Google Code (http://code.google.com/p/maven-alfresco-archetypes) - which delivers archetypes for building Alfresco
integration project with Maven; builds are based on artifacts that are deployed into maven.alfresco.com Repository
manually as a community effort.
The main advantages with the (currently official) Alfresco SDK follows:
- IDE-independent SDK, use IntelliJ, eMacs or any other IDE sto write your code
- No IDE manual configuration, all build-related features are provided by Apache Maven, which is the only
prerequisite to use this SDK
- Language independent, you don't like Maven? You can still use Ant, Ivy, Buildr, Gradle, Leiningen or any other build
system that is compatible with Maven artifact resolution mechanism; just configure maven.alfresco.com as (one of) your
Maven repositories and you're ready to go
- Javadoc and Sources support, provided by maven.alfresco.com related Maven artifacts; you don't need to manually
configure your IDE to attach (manually downloaded) sources to your (manually downloaded) binaries.
- Clean and readable, the build logic related with OOTB Alfresco features is wrapped in 50 lines of pom.xml
- Advanced build functionality, inherited by your parent POMs you can use embedded databases and j2ee
containers with (almost) no configuration at all, among other features exposed below.
- One mvn command to generate, one mvn command to run, this is all you need to do to have a local Alfresco running
on an empty laptop
- Supports community and enterprise flawlessly, allowing to switch one to another very easily
The following documentation aims to provide three different levels of complexity to tackle an Alfresco integration
project: simple, advanced and custom; the latter exposes in details the Maven Alfresco SDK features.
*************
Prerequisites
*************
The main and only prerequisite to follow reading this document is to have Apache Maven 3.0.3 (or higher) installed
on your machine; there is no preferred IDE nor web container and database requirements needed.
It is strongly advised to use the Apache Maven official binary distributions downloaded from maven.apache.org; avoid
OS-specific distributions as much as possible.
************
Use - Simple
************
If you're new to Alfresco, you probably want to know which is the impact of introducing such a technology within your
development team, run it locally, assess all development processes involved with the product and which
technologies/tools are best suited for those.
You can currently choose between two different flavors, depending on your final goal:
* If you want to assess efforts involved with AMP development, you can run the following commands:
1.
mvn archetype:generate \
-DarchetypeGroupId=org.alfresco.maven \
-DarchetypeArtifactId=quickstart-amp-archetype \
-DarchetypeVersion=1.0 \
-DgroupId=com.someco \
-DartifactId=alfresco-amp-quickstart \
-Dversion=1.0-SNAPSHOT \
-DarchetypeRepository=http://maven.alfresco.com/nexus/content/repositories/releases \
-DinteractiveMode=false
You can always switch Alfresco versions/editions by editing the <parent> coordinates of your generated pom.xml
2.
cd alfresco-amp-quickstart && MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m" mvn package -Drunamp
Browse to http://localhost:8080/amp-quickstart and you will find Alfresco Explorer Client running against a local
Alfresco Repository sitting on top of an H2 embedded database and loading your AMP package.
* If you want to customise Alfresco Explorer and/or Share clients, embed AMP packages/projects or simply run both
Alfresco Explorer and Share on the same machine, run the following commands:
1.
mvn archetype:generate \
-DarchetypeGroupId=org.alfresco.maven \
-DarchetypeArtifactId=quickstart-allinone-archetype \
-DarchetypeVersion=1.0 \
-DgroupId=com.someco \
-DartifactId=alfresco-allinone-quickstart \
-Dversion=1.0-SNAPSHOT \
-Dedition=community \
-DarchetypeRepository=http://maven.alfresco.com/nexus/content/repositories/releases \
-DinteractiveMode=false
2.
cd alfresco-allinone-quickstart && MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m" mvn package -Drun
Compared with the previous flavor, alfresco-allinone-quickstart is a Maven multi-module project, which also includes
an AMP project that gets 'overlaid' into both Alfresco and Share web applications.
Alfresco Explorer is available at http://localhost:8080/alfresco whereas Alfresco Share is available at
http://localhost:8080/share
************
Use - Custom
************
When the build logic becomes tough, integrating with third party technologies, introducing complex build scenarios,
you might want to have a lower integration level with Alfresco SDK; there are basically 2 big integration points
you can rely on, which are basically Alfresco-maintained POM files that provide:
- A list of Alfresco artifacts, including binaries, javadoc and sources, Maven plugins successfully tested against
the standard and supported build process; artifacts come with correct platform versions and editions
(community vs enterprise) according with the <groupId> and <version> tags parent coordinates.
You can simply define the following parent POM in your project's pom.xml:
<parent>
<groupId>org.alfresco.enterprise</groupId>
<artifactId>alfresco-platform-parent</artifactId>
<version>4.0.1</version>
</parent>
In Maven geek terms, this parent POM will define <dependencyManagement>, <pluginManagement> and <properties> elements
related with Alfresco-produced artifacts.
The main goal of this approach is to give you full access to Alfresco artifacts without needing to handle dependency
and plugin management inside your pom.xml.
Please note that Alfresco artifacts are not shipped with POM files at the moment, therefore transitive dependencies
are not handled; you will need to define them explicitly in your pom.xml (using <scope>provided</scope>
- A set of useful build features around Alfresco web integrations, which are also inherited by alfresco-platform-parent;
if you want to use it directly and skip alfresco-platform-parent, you can define:
<parent>
<groupId>org.alfresco.enterprise</groupId>
<artifactId>alfresco-developer-parent</artifactId>
<version>1</version>
</parent>
In this case you will have to re-define a list of properties to set your dependency versions:
<alfresco.version>4.0.1</alfresco.version>
<spring.version>3.0.5.RELEASE</spring.version>
<h2.version>1.3.158</h2.version>
<h2-support.version>1.2</h2-support.version>
<servlet.api.version>2.5</servlet.api.version>
<faces.version>1.1_02</faces.version>
<digester.version>1.6</digester.version>
<log4j.version>1.2.15</log4j.version>
Besides the alfresco-integration-parent items inherited, this parent POM provides 3 commonly used features that can
be easily enabled/disabled/configured:
* AMP overlay into an Alfresco (or Share) Extension
---
Activation: built-in
---
When your project (or sub-module) is a <packaging>war</packaging>, you can automatically include one or more
AMP files by defining the dependencies into the pom.xml, as follows:
<dependency>
<groupId>com.mycompany</groupId>
<artifactId>amp-module</artifactId>
<version>1.0-SNAPSHOT</version>
<type>amp</type>
</dependency>
The AMP files will be overlayed on top of your current WAR customizations, therefore
they can override the content of the original WAR.
-- oOo --
* Multi-environment property filtering
---
Activation: exists src/main/properties
---
You can enable multi-environment property filtering by simply creating the
src/main/properties/${env}/${webapp.resource.filter} file with your property values;
all files included in src/main/resources and src/main/properties will be filtered
with your properties defined; in order to switch between environments,
simply attach -Denv=yourenv to your mvn commands.
---
Properties
---
<env>local</env>
<webapp.resource.filter>alfresco-global.properties</webapp.resource.filter>
<webapp.resource.build.folder>${project.build.outputDirectory}</webapp.resource.build.folder>
<webapp.name>${project.artifactId}</webapp.name>
-- oOo --
* Jetty H2 configuration
---
Activation: exists jetty/jetty.xml
---
You can enable Jetty to run your application(s); by default Jetty will run all contexts
using jetty/jetty.xml as Jetty Server configuration, allowing to add the jndi resource
needed to start Alfresco Repository webapp; if you want to run multiple webapps - for
example share and alfresco - follow the example listed below:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<executions>
<execution>
<id>run</id>
<goals><goal>run</goal></goals>
<phase>package</phase>
<configuration>
<contextPath>/</contextPath>
<webAppSourceDirectory>.</webAppSourceDirectory>
<webXml>jetty/root-web.xml</webXml>
<contextHandlers>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${project.basedir}/../alfresco/target/alfresco.war</war>
<contextPath>/alfresco</contextPath>
</contextHandler>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${project.basedir}/../share/target/share.war</war>
<contextPath>/share</contextPath>
</contextHandler>
</contextHandlers>
</configuration>
</execution>
</executions>
</plugin>

155
KEYS Normal file
View File

@@ -0,0 +1,155 @@
This file contains the PGP keys of various developers.
Users: pgp < KEYS
gpg --import KEYS
Developers:
gpg --list-key <your email> and append it to this file.
gpg -a --export <your email> and append it to this file.
(gpg --list-key <your email>
&& gpg --armor --export <your email>) >> this file.
################################################################
# Gabriele Columbro
################################################################
pub 4096R/6FE5701E 2012-03-25
uid Gabriele Columbro (VALID CODE SIGNING KEY) <gabriele@apache.org>
sub 4096R/E97059F3 2012-03-25
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.10 (GNU/Linux)
mQINBE9u680BEADFHOMCFOnPeuSNLJw+KiKVFm9Waa9oWMxKpYhCP4bDA0sH85/W
ZKJDaPR+2p5JAoB0y3ZfxHfmhoLZRmLgP1oSJBfB2VgdbG1My4Oshd/h8Tr5pAJj
bulvC5urWcYD9eYNFVJtG28l7epnjx0NglA6WBk9Bx5+XGSLvxaQkCu6S7D9V+cw
2nJqZia7ul/J5xjGWy5aBZubwj1UT2YhZwxEmSjlBo0jrf8y4YScCz2VXJVs33p1
CHQESCuBRZ0dK2kCmRaU+2bhJy9+nFstHYVAygwbQ8Km4sqSpcjEAZTpKK/lspbH
c7TcZcFujLCCoHuAh4k0I/Qp3My0QqUpmdwsWQdbknP4MkQJlYB5GxnJnFzsA1Hg
fJwOa23b1lFNhZSdmY9NSM+2Ihg1XB4pb4Z0+uqLMAVR8owpuaJ329W+LJJutQyC
87Kc1KH4He8KuENGhQT16+NJlUFrRSYaST9NB9RbFURc1eUMgHHXjcJp9sny2YPY
bq89W0HtHSNH0My/akK47qcX1ddKGE8PTVdS5kDhS+w75f9Lf+gyV5HflzZSaaSQ
+rD/WZ8uTeQKNSYvupdv63i1FIOJd1Ip0C8fj/STwWdDRvq5UwiHsiGgw30WCNAy
VQ+OPJ+7DNm4pJEkcxno+WeTbCpZGysvFjouDPig/+a69IMPEYE2xQuz7wARAQAB
tEBHYWJyaWVsZSBDb2x1bWJybyAoVkFMSUQgQ09ERSBTSUdOSU5HIEtFWSkgPGdh
YnJpZWxlQGFwYWNoZS5vcmc+iQI4BBMBAgAiBQJPbuvNAhsDBgsJCAcDAgYVCAIJ
CgsEFgIDAQIeAQIXgAAKCRA1c7pOb+VwHnTxD/0V9Fnn7pjVWYkUi/62xh4DXfMO
urvsafeH5JXE3a6e856sFg8AV/w2ceJYqzZ5l46GkF/B9buParLQmnXTni/ClokU
IeRM/Faj964DXZRAdTiu06VnGxzTN5Dpo1rr/wccjamq/B19ta7xW+z+zfY9jby3
UUHkIV0itVIRZ3K3Tc7tssmj4ATkwvHlXWQo89cQcoTpBrJyClRsSWPQgefws38P
6J+PXUqBuw5JDH6WhOvovkWBZt0ryduCjHNat7JYYjLBzPX//rMj8c9xytFHCxaq
JUvS9BAdW5UE3mG8OBkvRhNqvPLrKUch9ETiYWetWf3trRUDQhHhngN/t9a7pVDx
vsP63fozPD58LK7Ete05emukYg18xGGhRixu10KgwbuAqJD2t6GUd2gjJBI/5Qua
99ImffhLoLNuv6w2XE2ePPkMLBOh4SdzOHJ23ffO8IDRG8yfQD9yT1dC+aHEKd6D
OA/pJGcjoXUubtoa0ARKL30gx6d4xXeiaRKHUP/tLHx5nxctGOPNYgwz4j4VyaR/
KNpFU3bZPR0NWAKNcjTO2MT4ZzBMOidWJjWM3D29ZYa23Lwxea7hpswL2PQgHthu
jqArjrBTuMLmUw/L4kGQDfOfrasBoYTHKK3J2WejczgaNmEd2Rd7LjJGJZBGdcBu
l98PjbR9xLxkm3ql0okEHAQQAQIABgUCT3l9MAAKCRCKr4jW2E5BrgLBIACvfl3Z
cgPoZy/SRLF6FojxgwzX7/3t45jZnQXxWvnuEb6cFjyXU+y3i/9x9yRs8B2EeW3v
uSEa8lsUo/QN08almF+QOzNMof+RGhHsPanlm8dW5iibdWfP+GsL0S5Mo6GhaFZW
SQUfYWsuqUGBmLp9aH3uMTkCvjq2iNZ0UoTm8ZQ+iJnNhfE2iMkH6U6WBEAr9PID
uFLVy2uw2kKKdPVpRntQuOyUKuCQC1ydN2kH/I01TwonFepBCjdEMtaW9tTZNJ5A
Z8nKOlXOX+zo1HNEiD6hGAqn2ZqotnzFKrx4AwhDb4Wt3N2Nc9YBM7noxlKQuPby
Pa9ydXmtIrRHjAHJeL0dY2BFfRb5zeUuiuz+zOY186LDCaH+txjPeudKxDv7uyNu
5XNAbRUQj06ZxhtPT/xvzpIcxuqOzAh/znZXM3RnOB6Wj3p4jXC/neEJwKL/yuEo
bZvIa/dnU5tI7uVhfrK3SKdi4Q+oQgYvTmy/mrISJB9p2npJAr+mrq7XpwZD77HT
ZxYMZKjY6aQ8KoTgR48JXKylxuEGidZJduVLGsHH3mF2YcENgKcPQCOI+uSHP432
Tt/7ARsbYV9lF+9XDn75UAQrOjlbhs/ovOlzhx+BAbmszZADwRbMB+CQl2N4ds3l
LhtkbqAfs2bjauw9NnSmNAhxFdnCmBnN96+GysfQOnxhUI6LT+S8S6bWsTinq1Xa
d7lXhGtyD1LtDpdzynLjQgis6v+45IvYUa6zoOkTunhM2A0jsZhmjk9ZpZHywyZF
K5nNZQy6Q6L5OmW1XNnxtob02d4sotNoAEYvrPo3QLDsL4UI3Z1DnrvW8K4DQBj7
4EkANks7o70pxYdMElhYy4rJ5rt25004jeYztuwE885T5CSHN+0aPdjkP5rZSkuU
90j7hOT2qDkFf/H81RZufDdgyVKzLRkAYKiSrZaqAXcqBEOMq6rYMitkgEP07FOP
6eFBImRpz0OINGz3hrVCNHbxng/TWke3wi05DBRcJIhNWu8P2QXdDaAEBORFunAT
NISbdt4/5p5DYOdxe9wlUECKdE2zDG++JTat30lsNfZi183QOQfGCd770kFrGcMY
DvpyUVT8BZqS9TSsS97Zhg6boRU9Etb8MORYJ2cGdXwjrUerFBmHebSmSZPKTMKF
rznEiwroUQQsIoTzbnd88KlgqbwCazGM2LfI0svONvNXbu7B7iKkcNU9M2LpRZu3
n5t7v/Nfilc3YssRNi5nFWQarmqP2qTkyr434OeFSuzO9yz5/BGPcWbvkBzWExMS
6854rMPAFh3g6YdyJnhjf9TaNNlMH9xKQgsL5C9Q4YGSGU9oklhSq3W5FSxT97E0
NhwVmN+yElh3FBswuQINBE9u680BEAC8CvXUxbns4X8dvxEcgb8ReDGTa2vVij0U
kBqDyHq1Yta1e6Qm34fNizcds/avbmBB8q8dTNMR1Ka4aPukc+M+oGOY4aKgQNCW
YfrdBVAdVZ9RCyZC9Jy3XlPoSBokLGxz4J212OdWTOzQTzIEfsVzAQmxGmnqv5yP
R+PKLGZvyRpwAjz12K4yZmztOte8mi/pQtKXzB45LggbHh39iO1nG6EKQLWyyoA2
olF9Eb+yHdZQOpLCLnqc7FS3Cbz80SVqGS5miU3CSp7GTBEA1wualxKvNNiPO2p2
MMnjMVcxZx1k3d4C7+uMGvtZiTqa7tmWODz1dfwolfYQ/E4TcxG2vzKatE07JG7X
3vVmfR2Bjb2ITN8Kj1ZdVeQkHgJvRx8B6glFQhv6lso5XUuoWt5Gm66wCyirjCDn
OLJKk6YkdSop8EweAy675VFoq3LSASyep72jrgT3AMf8U0nAgZSrwLMjBjSVzIRs
FNv30iCBXYy/bmSyfMEphjttKCYHnNjZS8fD+ka1zzXnOXglWNtDGDOdJ5zaIymW
R4FZlrQMjs4y564WMHJWG9exncSPHNPLLieGAng4oJjAXR92GgrTZQAcghTRGBOn
rRYzv9ob6n2wgnA8wR+Wmy0xcmF44xNht3mfD1qTO0P2Fdhdm4ZvXQBII0tXkwMl
OJ/BR732xQARAQABiQIfBBgBAgAJBQJPbuvNAhsMAAoJEDVzuk5v5XAeTZQP/2g9
1KOS1pia2gAOmFbuu0ep1THRxuLydcn6C306YmnL2l+o5z0YE4nPYiD9rd+PkWFm
0itE2WBBZkEloesUcjX/xsw7t6pdzd3W6nu1LXPcppOeHAc1ofrRWqKSmfD5k2lB
8dzuRKltU6b829wcDi0HlL+dP8G9pcJXz2cMs09QchOdvm/hQam9SHFwx9IDJvrt
nHB4kLfUTJ0Fs4FjtT+nfozXE+wXd23+HyNVQPX3rTO5IR4DOTDNSZ+vxqkE0BeF
6M4dDvMADBEgkEwpsRzioEp75biw5bq8YsDvYNGpyJOFt46bRWjrzOcUsIXMy4eQ
uTk/flFQs3ukw7q7DvSBVRokfjFHWr3FZC30xyRijJImW4F1Xqa3HphC3+4fSQjx
w652pOx0aZlBHtVByYBLYcrCGcJ8p6ijpPX60ur3a8ebdUHND912+mIGiQzhkHiK
VBvvfOrbWzcNwbxAsNncAfjr/3adPAjbyMH10+e+sNhLMJuYYgP8pVhp8BTKFJF9
hrGAueS2lH5DUpjZPqClR+txnAK+hVCuFogoWsdsbRHMLkqKqhnQjWnvRrU0ud9j
ytG/XwLK3RL7LTmPIC9RqlO1U1A3h5Ykw2INH/bB90lBxmydmp/PHpkhjEAEvzGW
r+ipOwsWpF6kLIHUT2LuPxLqTGQCrqYtJyTp61tE
=GUM9
-----END PGP PUBLIC KEY BLOCK-----
################################################################
# Alfresco Software, Inc - PGP key
################################################################
pub 4096R/DAD3B670 2014-10-20 [expires: 2015-10-20]
Key fingerprint = 6959 A697 47E2 7AC4 E1E7 1636 199D 99B1 DAD3 B670
uid Alfresco Software, Inc (GPG) <info@alfresco.com>
sub 4096R/A4B70B45 2014-10-20 [expires: 2015-10-20]
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.14 (GNU/Linux)
mQINBFRFM3EBEADveqoXdxufZiP+hK992UJO9OIumDts9SlirI4VviyRlCn/qc3X
5wzAAsTNRBJjsk3S3O3EfmK79GodIb0ebnQSbv6+EnwPK0uwS0ykoy7JrMUHVBY+
zI9AwGIe0UpCRXfPH3x0O1Psi1fcKGR/Qs2ouTnCpzDZRq3kFt7/iCXm6t8QpaxE
y4KNxT/S8MeGydslqgbEA4fCZ6RP9kzFs8tCNyv9WxHkcb0oos/nC2ihJy3HZATO
A2qeTxS5pf6O1hJuE7XRIRCPTN1j0uSAl4ebDKPn4uANz8MwYcZBz89lWVmP/wEz
AoN8jWjqb/SstURj+czjXoxhoxMaLDMjdw5RoJsLUmlfp2j9eaFbxmUl103wUL+O
R+6sk5pXHpvifjeI/AjNTaZe6WVfkgcUqkHmw0GUgdASgBLBDciGd+O4sXr/L/iZ
wxhdxcubWy4MbKcy7QlcS4Z4FwK6jjPQKjn+7PT3Wexh8SAX0661gntV7Rr/SYIY
edyRdtLd+SP+TuOn4wQY5x8ahHqGi4PDoSaCMAZ8jbQnbAXXeOlkBuyDm+Z4iGDC
OQgjvvQufB2ZA1ml9DjtZOWIdgUQfanGaO8TW+V5v+PFvfMkRFIMMyS8WEp6ePT/
IOBDxUBQ0BZ1BktkQ+Oifi179EyvghpePciUWX5oDf6AfW/QfLhnkVhQPQARAQAB
tDBBbGZyZXNjbyBTb2Z0d2FyZSwgSW5jIChHUEcpIDxpbmZvQGFsZnJlc2NvLmNv
bT6JAj4EEwECACgFAlRFM3ECGwMFCQHhM4AGCwkIBwMCBhUIAgkKCwQWAgMBAh4B
AheAAAoJEBmdmbHa07ZwTtYP/jdMOUFvUqAwaiDBap0+DqyyFgeWfa90b3O6LlAf
BeKin4lq8TEVL1CCehRSILAgd0nQQYHeJvLwpvZNl4t2TBFk5e/Xd4gHdszum4Ms
aJ0qc2G61ep5vE5z11Ca2vWLEG1Org+iVtZuMZcsCtPhFjyHE1PRU1s0ApoIXZxt
z35pgz5PSldPpOk4nuUKIhLLTpNLNd4fgbPiHhyqJloTMsOEycZ+W5Em2Ib2/kxx
0GIjAy5A9IlezALKengZ4NjHFwcddcP6+2rFgBTY/7KhhGNyOghwSIIJOdp0BQwD
bSN26e5WpYT+gja44QZ44KdMpOcxH8Qt0lJmjULizxcbYTPMsoPF3Jszm0E5auOQ
y2cixDEfmioqgJ4KKS6AIXd/yfLEvsGEU1Zz1a1yDQz12ZhzBa/GtoQRhzWErspR
7kMPiGKQEhQowB7vHfiCmVhx89RWPwZFFyLz92jS11ZGpeBlWF4hMSefQR7sFWLi
rYw0LOyMyFyz9P60ZKX18LHltxsrsteJA7zARcS0uv112O7wSTX1k44s5fiaWlVR
Ciuchcp0eTcsYa4Jiz4yZNnJhRi7tnsQJOXYF4IjGAxnJoBLSUUt2uEWtMg09m5F
vgrCNcc8HFy1hIIHy0l5CaLJY/5x9Z1Lg2dbwVP7+goTRogRGvpdjy7/eMlQEAgm
HMtsuQINBFRFM3EBEADCohKTxy3JYJ3dPzxhD/76nX0zkyvuhepVXAkpzjhWSx9r
9RQSB6WLnczlZVriQKVPR6RZ7fn4XhLim3v9e9c188R1WeUvuHWaJXDAvBWFarLu
y7kd1ZRpS0UWWE+k/WBruT5rEqjpW4Un/7WINsr972Ic7IFiv5ISUC7h/ylym5T1
w15WRZnMF96tLmMjzGdqJYrbu7Y4ZPYr5VwWnd9hE9Cal3YMMsfcXlIWOzw7BRDO
aWmMsWyFiVkwCeAZOSYthu4Qdo3bSlGo5C46JuRcdU1ZimZKztC1qlihiju7oWfa
3hJT/uWFu06IAdcI6lq4yEb+iG73BNUGNMDzpTeWLW7Q3IByZ/e9/DzFJcjsDf5N
jCzJGxAtEJ28egrZe6/Fk6yBwE0+nzUmOPU3qqi57aFFajfdV89SoQwKG83IpNJl
L9vbE62Iljm0DNK3VEotw9OMc6B3z6TfatVclqLFTH5Q+4rNcCytpK747loGVJcP
KFs1FzFj+hW2MkFcnY1JbuaSuyrhPVpg4Z1bjxLVLdlisYm0AL+n+z0tmFO45XJ2
mS06ckpqFAhk5HOOMOd/9+Qi3p9orE6dFM+TIWnxDphpws43O+FSYM8OJk7saGos
DNMvm9C0oz07MwMuthkLmSBsWmkZYXrvkUY1lrTdpyqqs11qllBZ1PsRATKeIQAR
AQABiQIlBBgBAgAPBQJURTNxAhsMBQkB4TOAAAoJEBmdmbHa07ZwQl4P/2FH+4Sa
JJgaNGoyyo1Oh1Xd1OMHf++V7FpXxHHmgEv6bTz3E8xHTMA7Zm1iBIPGrIo2loKe
49p3gbGFtvZLLT31Tg+usUN62QntKYOIiztdjsxzTskBgJH+A4Ucz7O1NsN6GQXF
QgGFlEpWApXCK8ogNp6ntwxGCyOFvZujuJjSFUZcpNEGhOYhYuKvo18qboP3RgVy
o74FPtPvh3YMz9DLRXeVbhhIq0oejek5z0aOXEjgZipVO4U7uDO5EVcG57jIVfiI
WM681KHG/Djx64GmSi9wo+P687Ib7+UHSzBTeEm9YVRNNSQFbuvxqq9XhDctkkbZ
m/QRbQXJFPQJcDOLLH06JNQ+/KvT8uwduiBFs2x77qKrVCxqCQU8XwY+KnyGouf9
sLdxDZwGoXFbnCyRKFH+fqoIMdcYzIT/VvGswTCNqSOvDxnSNO9REVbdsIJwenqt
QetRR7SVYKfcyLMCtMek3Fgst85khwP8tIYAEerE+XN04b1FfD3mjqvgBdUY7IDM
W1NVRTtjlX46ltNvtERO8JGYMqlRW/wpDXQzRxryNY7frXA+fhog2L53cOK/Fwc8
UcbLubQPkh/6+w4SybT2F8otOB1J8KZ0tzbTd5JxuX0V0AD8OjH+uuN67r5bQBk9
ARVlLqDOpHP01PW6WUQta2xAQ2mshuQZTX1H
=3Y/D
-----END PGP PUBLIC KEY BLOCK-----

201
LICENSE Normal file
View File

@@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "{}"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright {yyyy} {name of copyright owner}
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.

73
README.md Normal file
View File

@@ -0,0 +1,73 @@
# [![Alfresco SDK logo](https://github.com/Alfresco/alfresco-sdk/raw/master/src/site/resources/img/alfresco-maven-logo.jpg)](#features) Alfresco SDK
This is the home of the Alfresco SDK. The Alfresco SDK is used by developers to build extensions for the Alfresco content management system. It is based on [Apache Maven](http://maven.apache.org/), compatible with major IDEs and enables Rapid Application Development (RAD) and Test Driven Development (TDD).
## License
This project is released under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html). If you are an Enterprise customer check the [Support](#alfresco-enterprise-customers-and-partners-support) section.
## News
- 2015-05-20: SDK 2.1.0 released to Maven Central. Docs for [Community](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html), [Enterprise](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-intro.html), [Release notes](https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/latest/github-report.html)
- 2014-12-23: SDK 2.0.0 release to Maven Central. [Docs](http://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html), [Release Notes](https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/archive/2.0.0/github-report.htm)
- 2014-08-22: First SNAPSHOT of SDK 2.0.0 in the [OSS Sonatype Repository](https://oss.sonatype.org/content/repositories/snapshots/org/alfresco/maven/alfresco-sdk-parent/2.0.0-SNAPSHOT/)!
- 2014-07: Project fully migrated from [Google Code](https://code.google.com/p/maven-alfresco-archetypes).
## User Getting Started
### Latest Documentation
To get started with Alfresco SDK 2.1 (latest) visit the offical Alfresco Documentation for:
- [Alfresco Community 5.0.d and above](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html)
- [Alfresco Enterprise 5.0.1 and above](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-intro.html)
#### Previous versions Documentation
- Documentation for [Alfresco SDK 2.0](http://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html) (compatible with Alfresco 5.0.d Community and 5.0.0 Enterprise)
- Documentation for [Alfresco SDK 1.1.1](http://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-intro.html) (compatible with Alfresco 4.2)
### Samples
Sample extension projects that use the SDK, maintained by @ohej in the [Alfresco SDK Samples project](https://github.com/Alfresco/alfresco-sdk-samples/).
### Command reference
A list of supported features and commands, explanation of Maven profiles and commands is kept in the [Alfresco Official Docs](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-cmd-reference.html).
### Want to get up to speed quickly in Eclipse? Check out this video!
[![Alfresco SDK 2.1 howto](http://img.youtube.com/vi/utYZaVe9Nd0/0.jpg)](https://www.youtube.com/watch?v=utYZaVe9Nd0)
## Reporting Issues and Community Support
Report issues (and contribute!) [here](https://github.com/Alfresco/alfresco-sdk/issues?milestone=1&state=open). You can also join the [Alfresco list on Google Groups](https://groups.google.com/forum/#!forum/maven-alfresco) or join us on the [IRC Channel](http://chat.alfresco.com/).
## Alfresco Enterprise Customers and Partners Support
If you are an Alfresco Customer please check the [SDK Support status](http://www.alfresco.com/services/subscription/technical-support/product-support-status) for the version you are using and the [Compatibily Matrix](http://docs.alfresco.com/community/concepts/alfresco-sdk-compatibility.html) for the SDK / Alfresco compatibility. If your version is in Limited or Full Support, you can raise issues via the [Support Portal](http://support.alfresco.com).
## Maven repositories
- As of version 2.0-beta-1, The Alfresco SDK is released in [Maven Central](http://search.maven.org/#search|ga|1|alfresco-sdk). Previous versions are available in the [Alfresco Artifacts Repository](https://artifacts.alfresco.com/).
- Alfresco (Community and Enterprise) artifacts are hosted in the [Alfresco Artifacts Repository](https://artifacts.alfresco.com/).
- Alfresco Community artifacts (JARs, WARs, AMPs, poms) and SDK artifacts are publicly available.
*NOTE:* For Enterprise and Premiere licensed software access you need to get credential via the Alfresco Enterprise Support. See [Maven Alfresco Enterprise setup](http://docs.alfresco.com/5.0/concepts/alfresco-sdk-using-enterprise-edition.html).
### Alfresco Artifacts Repository
#### Alfresco Releases
You can use the following snippet in your pom.xml to access releases on Alfresco Artifact repository:
```xml
<repository>
<id>alfresco-public</id>
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
</repository>
```
#### SDK Snapshots
To test new unreleased (unsupported) features, you can use the following snippet in your pom.xml to access SDK nightlies (SNAPSHOTS) from the OSS Sonatype repository:
```xml
<repository>
<id>oss-sonatype-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>
```
## For Developers that want to contribute to the SDK
See the [Developers Wiki page](https://github.com/Alfresco/alfresco-sdk/wiki/Developer-Wiki).

View File

@@ -1,199 +0,0 @@
This document needs updating...
Archetypes using the SDK can be generated with:
mvn archetype:generate -DarchetypeCatalog=https://artifacts.alfresco.com/nexus/content/groups/public-snapshots/archetype-catalog.xml
**********
Disclaimer
**********
This codebase is currently work in progress; the effort have been split in three directions:
a) The definition of 2 POM files that can handle versions and common build behaviors/features
b) The writing of an alfresco-maven-plugin to enable amp-to-war overlay provided by Alfresco
Repository built-in features (ModuleManagementTool) and replace the maven-amp-plugin (big
rewriting of the maven-war-plugin)
c) The definition of (initially 2) archetypes that show some simple project's configuration using
the parent POMs
Most of the build features have been successfully ported to a new structure, whose main advantage is
to keep pom.xml files extremely simple and readable (since a lot of logic have been moved to the parent).
Inherited behaviours are configurable simply defining specific properties in the project's or module's pom.xml
(see documentation below).
Here follows a list of build features that have not been ported yet:
- Maven SCM and release
- JBoss run
- Tomcat remote deployment
- Jetty Java source and resources reloading (Jetty currently runs .war files)
- Maven Site generation
- Maven reporting
- Maven distributionManagement
Apart from SCM and release, all the mentioned features are probably best suited for a more enterprise archetype,
using the Alfresco Web Integration POM as parent and adding more build features around Maven, Tomcat and JBoss.
Regarding the POM files, I'd like to see them deployed on maven.alfresco.com, hopefully generated (by the
Alfresco build?) and tested for each Alfresco release.
--- oOo ---
*************
Prerequisites
*************
- Maven 3.0.3 (official binary distribution from maven.apache.org)
--- oOo ---
*************
Build and Run
*************
-----
Build
-----
All the steps that follow are necessary because neither POMs nor
alfresco-maven-plugin are yet available on maven.alfresco.com; as soon
as their implementation is consolidated, you will be able to skip
this first part and just enjoy the second.
---
mvn clean install
(with empty repository, Maven will download 365Mb)
---
---
Run
---
cd archetypes/quickstart-allinone-archetype
MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m" mvn clean package -Drun
-> http://localhost:8080/alfresco and http://localhost:8080/share
--- OR
cd archetypes/quickstart-amp-archetype
MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m" mvn clean package -Drun-amp
-> http://localhost:8080/quickstart-amp-archetype
---
--- oOo ---
**********
Archetypes
**********
---------------------------
ALFRESCO ALLINONE ARCHETYPE
---------------------------
- run mvn clean install to package all apps
- run mvn clean install -Prun to run the full platform embedded in Jetty/H2
---
---
ALFRESCO AMP ARCHETYPE
---
---
--- oOo ---
*********
POM files
*********
-------------------------------
ALFRESCO PLATFORM POM
-------------------------------
* Describes the Alfresco platform. Lives in the Alfresco SVN and gets deployed at every release.
* DependencyManagement for all Alfresco commonly used JAR/WAR/AMP artifacts
* IInherits alfresco-developer-parent POM
---
ALFRESCO DEVELOPER PARENT POM
---
* Alfresco Repository Log and storage cleaning
---
Activation: built-in
---
When mvn clean is invoked, all files produced by Maven runs must be removed; this is the list of
filesets inherited from alfresco-developer-parent:
* target/ (default behaviour)
* *.log
* ${alfresco.data.location}
---
Properties
---
<alfresco.data.location>alf_data_dev</alfresco.data.location>
---
---
* AMP overlay into an Alfresco (or Share) Extension
---
Activation: built-in
---
When your project (or sub-module) is a <packaging>war</packaging>, you can automatically include one or more
AMP files by defining the dependencies into the pom.xml, as follows:
<dependency>
<groupId>com.mycompany</groupId>
<artifactId>amp-module</artifactId>
<version>1.0-SNAPSHOT</version>
<type>amp</type>
</dependency>
The AMP files will be overlayed on top of your current WAR customizations, therefore
they can override the content of the original WAR.
---
---
* Multi-environment property filtering
---
Activation: exists src/main/properties
---
You can enable multi-environment property filtering by simply creating the
src/main/properties/${env}/${webapp.resource.filter} file with your property values;
all files included in src/main/resources and src/main/properties will be filtered
with your properties defined; in order to switch between environments,
simply attach -Denv=yourenv to your mvn commands.
---
Properties
---
<env>local</env>
<webapp.resource.filter>alfresco-global.properties</webapp.resource.filter>
<webapp.resource.build.folder>${project.build.outputDirectory}</webapp.resource.build.folder>
<webapp.name>${project.artifactId}</webapp.name>
---
---
* Jetty H2 configuration
---
Activation: exists jetty/jetty.xml
---
You can enable Jetty to run your application(s); by default Jetty will run all contexts
using jetty/jetty.xml as Jetty Server configuration, allowing to add the jndi resource
needed to start Alfresco Repository webapp; if you want to run multiple webapps - for
example share and alfresco - follow the example listed below:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<executions>
<execution>
<id>run</id>
<goals><goal>run</goal></goals>
<phase>package</phase>
<configuration>
<contextPath>/</contextPath>
<webAppSourceDirectory>.</webAppSourceDirectory>
<webXml>jetty/root-web.xml</webXml>
<contextHandlers>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${project.basedir}/../alfresco/target/alfresco.war</war>
<contextPath>/alfresco</contextPath>
</contextHandler>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${project.basedir}/../share/target/share.war</war>
<contextPath>/share</contextPath>
</contextHandler>
</contextHandlers>
</configuration>
</execution>
</executions>
</plugin>
---

View File

@@ -1,42 +0,0 @@
Short term (pre 4.x release):
-----------------------------
- Generate archetypes for sample projects
- Cleanup issues
- Release
- Testing against 1 Community and 1 Enterprise version
- Documentation, documentation, documentation
- Maven Site
- https://wiki.alfresco.com/index.php?title=Maven_Alfresco_SDK (from scratch)
- http://code.google.com/p/maven-alfresco-archetypes/
Mid term (post 4.x release):
----------------------------
- More archetypes
**************************************************
Enterprise Supported Archetypes (aka Advanced Use)
**************************************************
If you have built integration projects with Alfresco, you're familiar with Maven and you have a case study in mind,
wondering how to integrate it with your software development around the product, you can start from the Alfresco
Enterprise archetype suite:
1.
mvn archetype:generate \
-DarchetypeGroupId=org.alfresco.enterprise \
-DarchetypeArtifactId=supported-alfresco-archetype \
-DarchetypeVersion=1.0 \
-DgroupId=com.someco \
-DartifactId=alfresco-enterprise \
-Dversion=1.0-SNAPSHOT \
-DarchetypeRepository=http://maven.alfresco.com/nexus/content/repositories/releases \
-DinteractiveMode=false
2.
cd alfresco-enterprise && MAVEN_OPTS="-Xms256m -Xmx1G -XX:PermSize=300m" mvn package -Drun
Run the following command if you want to have a list of the available archetypes:
mvn archetype:generate \
-DarchetypeCatalog=http://maven.alfresco.com/nexus/content/repositories/releases/archetype-catalog.xml

View File

@@ -5,14 +5,54 @@
<groupId>org.alfresco.maven.archetype</groupId>
<artifactId>alfresco-allinone-archetype</artifactId>
<packaging>maven-archetype</packaging>
<name>All-in-One Archetype from Maven Alfresco SDK</name>
<description>Sample multi-module project for All-in-One development on the Alfresco plaftorm. Includes modules for: Repository, AMP, Share, Solr, Web Quick Start and embedded Jetty run</description>
<name>Maven Alfresco SDK - All-in-One Archetype</name>
<description>Sample multi-module project for All-in-One development on the Alfresco plaftorm. Includes modules for: Repository WAR overlay, Repository AMP, Share WAR overlay, Solr configuration, and embedded Tomcat runner</description>
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-lifecycle-aggregator</artifactId>
<version>1.0</version>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>2.1.1</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>archetype-resources/pom.xml</include>
<include>archetype-resources/run.sh</include>
<include>archetype-resources/run.bat</include>
<include>archetype-resources/runner/src/main/webapp/index.html</include>
<include>META-INF/maven/archetype-metadata.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>archetype-resources/pom.xml</exclude>
<exclude>archetype-resources/run.sh</exclude>
<exclude>archetype-resources/run.bat</exclude>
<exclude>archetype-resources/runner/src/main/webapp/index.html</exclude>
<exclude>META-INF/maven/archetype-metadata.xml</exclude>
</excludes>
<filtering>false</filtering>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<configuration>
<useDefaultDelimiters>false</useDefaultDelimiters>
<delimiters>
<delimiter>@@</delimiter>
</delimiters>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -1,154 +1,187 @@
<?xml version="1.0" encoding="UTF-8"?>
<archetype-descriptor xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd" name="quickstart-allinone-archetype"
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<requiredProperties>
<requiredProperty key="version">
<defaultValue>1.0-SNAPSHOT</defaultValue>
</requiredProperty>
<requiredProperty key="alfresco_target_groupId">
<defaultValue>org.alfresco</defaultValue>
</requiredProperty>
<requiredProperty key="alfresco_target_version">
<defaultValue>4.2.b</defaultValue>
</requiredProperty>
<requiredProperty key="package">
<defaultValue>(not used)</defaultValue>
</requiredProperty>
</requiredProperties>
<modules>
<module id="amp" dir="amp" name="amp">
<fileSets>
<fileSet filtered="false" packaged="false" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/amp</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/test/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/test/properties</directory>
<includes>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>jetty</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="alfresco" dir="alfresco" name="alfresco">
<fileSets>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/webapp</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/properties</directory>
<includes>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="solr" dir="solr" name="solr" filtered="false">
<fileSets>
<archetype-descriptor
xsi:schemaLocation="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0 http://maven.apache.org/xsd/archetype-descriptor-1.0.0.xsd"
name="All In One Archetype for Alfresco. Provides rapid development, IDE integration, and running embedded of Alfresco Repo, Share and Solr"
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<requiredProperties>
<requiredProperty key="version">
<defaultValue>1.0-SNAPSHOT</defaultValue>
</requiredProperty>
</requiredProperties>
<modules>
<module id="repo-amp" dir="repo-amp" name="repo-amp">
<fileSets>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/test/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/amp</directory>
<includes>
<include>**</include>
</includes>
<excludes>
<exclude>**/*-context.xml</exclude>
</excludes>
</fileSet>
<fileSet encoding="UTF-8" filtered="true" packaged="false">
<directory>src/main/amp</directory>
<includes>
<include>**/*-context.xml</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/test/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/test/properties</directory>
<includes>
<include>**/*.properties</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="share-amp" dir="share-amp" name="share-amp">
<fileSets>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/main/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="true" encoding="UTF-8">
<directory>src/test/java</directory>
<includes>
<include>**/*.java</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="false" encoding="UTF-8">
<directory>src/main/amp/config/alfresco/web-extension</directory>
<includes>
<include>__artifactId__-slingshot-application-context.xml</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="false" encoding="UTF-8">
<directory>src/main/amp/config/alfresco/web-extension/site-data/extensions</directory>
<includes>
<include>__artifactId__-example-widgets.xml</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/amp</directory>
<includes>
<include>**</include>
</includes>
<excludes>
<exclude>**/__artifactId__-slingshot-application-context.xml</exclude>
<exclude>**/__artifactId__-example-widgets.xml</exclude>
</excludes>
</fileSet>
<fileSet filtered="true" packaged="false" encoding="UTF-8">
<directory>src/test/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="repo" dir="repo" name="repo">
<fileSets>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/properties</directory>
<includes>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="true">
<directory>src/main/resources/alfresco/extension</directory>
<includes>
<include>dev-log4j.properties</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
<excludes>
<exclude>**/dev-log4j.properties</exclude>
</excludes>
</fileSet>
</fileSets>
</module>
<module id="solr4" dir="solr-config" name="solr4" filtered="false">
</module>
<module id="share" dir="share" name="share" filtered="false">
<fileSets>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet filtered="true" packaged="false" encoding="UTF-8">
<directory>src/test/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="runner" dir="runner" name="runner" filtered="false">
<fileSets>
<fileSet encoding="UTF-8" filtered="false">
<directory>tomcat</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>test-ng</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/webapp</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
</modules>
<fileSets>
<fileSet encoding="UTF-8">
<directory>src/main/solr-properties</directory>
<includes>
<include>**</include>
<include>**</include>
</includes>
<directory></directory>
<includes>
<include>run.sh</include>
<include>run.bat</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/webapp</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="share" dir="share" name="share" filtered="false">
<fileSets>
<fileSet encoding="UTF-8">
<directory>src/main/webapp</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8">
<directory>src/main/properties</directory>
<includes>
<include>**/*.properties</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="wcmqs" dir="wcmqs" name="share" filtered="false">
<fileSets>
<fileSet encoding="UTF-8">
<directory>src/main/webapp</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
<fileSet encoding="UTF-8" filtered="false">
<directory>src/main/webapp</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
<module id="runner" dir="runner" name="runner" filtered="false">
<fileSets>
<fileSet encoding="UTF-8">
<directory>jetty</directory>
<includes>
<include>**</include>
</includes>
</fileSet>
</fileSets>
</module>
</modules>
</fileSets>
</archetype-descriptor>

View File

@@ -1,87 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements. See the NOTICE file distributed with this work for additional
information regarding copyright ownership. The ASF licenses this file to
You 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. -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco Repository and Explorer Client</name>
<packaging>war</packaging>
<description>Alfresco Repository and Explorer Client</description>
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco</artifactId>
<type>war</type>
</dependency>
<!-- Demonstrating the dependency on the AMP developed in the 'amp' project -->
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>amp</artifactId>
<version>${project.version}</version>
<type>amp</type>
</dependency>
<!-- Demonstrating the usage of a well known GA AMP (Web Quick Start Repository component) -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-wcm-quickstart-repo</artifactId>
<version>${alfresco.version}</version>
<type>amp</type>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<!-- Here is can control the order of overlay of your (WAR, AMP, etc.) dependencies
| NOTE: At least one WAR dependency must be uncompressed first
| NOTE: In order to have a dependency effectively added to the WAR you need to
| explicitly mention it in the overlay section.
| NOTE: First-win resource strategy is used by the WAR plugin
-->
<overlays>
<!-- Current project customizations -->
<overlay/>
<!-- The Alfresco WAR -->
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco</artifactId>
<type>war</type>
<!-- To allow inclusion of META-INF -->
<excludes/>
</overlay>
<!-- Add / order your AMPs here -->
<overlay>
<groupId>${project.groupId}</groupId>
<artifactId>amp</artifactId>
<type>amp</type>
</overlay>
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-wcm-quickstart-repo</artifactId>
<type>amp</type>
</overlay>
</overlays>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -1,308 +0,0 @@
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You 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.
# RUN TIME PROPERTIES
# -------------------
# Sample custom content and index data location
# This will create alf_data Relative to appserver run folder
# In this default file we take the property from the POM (for compatbility with local jetty and jboss deployments) but it can also be edited here.
###############################
## Common Alfresco Properties #
###############################
dir.root=${alfresco.data.location}
# Allowed values are: NONE, AUTO, FULL
index.recovery.mode=FULL
index.subsystem.name=solr
solr.host=localhost
solr.port=8080
solr.secureComms=none
# Setting Solr backup for the future. Tweak this if needed (ideally in other env properties files)
solr.backup.alfresco.cronExpression=0 30 2 * * ? 2050
solr.backup.archive.cronExpression=0 30 3 * * ? 2050
solr.backup.alfresco.remoteBackupLocation=${dir.root}/solrBackup/alfresco
solr.backup.archive.remoteBackupLocation=${dir.root}/solrBackup/archive
# We are in the local DEV properties file, no need for Solr backup
solr.backup.alfresco.numberToKeep=0
solr.backup.archive.numberToKeep=0
# These jobs seem to require Lucene (Unsupported Operation with Solr) so we disasble them / set to future date
# See https://forums.alfresco.com/en/viewtopic.php?f=52&t=41597
# If you want to enable them (and so full WQS functionality), please also set index.subsystem.name=lucene
wcmqs.dynamicCollectionProcessor.schedule=0 30 2 * * ? 2060
wcmqs.feedbackProcessor.schedule=0 40 2 * * ? 2060
wcmqs.publishQueueProcessor.schedule=0 50 2 * * ? 2060
# Fail or not when there are node integrity checker errors
integrity.failOnError=true
# database connection properties
# MySQL connection (This is default and requires mysql-connector-java-5.0.3-bin.jar, which ships with the Alfresco server)
db.driver=${alfresco.db.datasource.class}
db.url=${alfresco.db.url}
db.username=${alfresco.db.username}
db.password=${alfresco.db.password}
db.pool.initial=10
db.pool.max=100
#
# Sample custom content and index data location
#
#dir.root=/srv/alfresco/alf_data
#dir.keystore=${dir.root}/keystore
#
# Sample database connection properties
#
#db.username=alfresco
#db.password=alfresco
#
# External locations
#-------------
#ooo.exe=soffice
#ooo.enabled=false
#jodconverter.officeHome=./OpenOffice.org
#jodconverter.portNumbers=8101
#jodconverter.enabled=true
#img.root=./ImageMagick
#swf.exe=./bin/pdf2swf
#
# Property to control whether schema updates are performed automatically.
# Updates must be enabled during upgrades as, apart from the static upgrade scripts,
# there are also auto-generated update scripts that will need to be executed. After
# upgrading to a new version, this can be disabled.
#
#db.schema.update=true
#
# MySQL connection
#
#db.driver=org.gjt.mm.mysql.Driver
#db.url=jdbc:mysql://localhost/alfresco?useUnicode=yes&characterEncoding=UTF-8
#
# Oracle connection
#
#db.driver=oracle.jdbc.OracleDriver
#db.url=jdbc:oracle:thin:@localhost:1521:alfresco
#
# SQLServer connection
# Requires jTDS driver version 1.2.5 and SNAPSHOT isolation mode
# Enable TCP protocol on fixed port 1433
# Prepare the database with:
# ALTER DATABASE alfresco SET ALLOW_SNAPSHOT_ISOLATION ON;
#
#db.driver=net.sourceforge.jtds.jdbc.Driver
#db.url=jdbc:jtds:sqlserver://localhost:1433/alfresco
#db.txn.isolation=4096
#
# PostgreSQL connection (requires postgresql-8.2-504.jdbc3.jar or equivalent)
#
#db.driver=org.postgresql.Driver
#db.url=jdbc:postgresql://localhost:5432/alfresco
#
# DB2 connection
#
#db.driver=com.ibm.db2.jcc.DB2Driver
#db.url=jdbc:db2://localhost:50000/alfresco:retrieveMessagesFromServerOnGetMessage=true;
#
# Index Recovery Mode
#-------------
#index.recovery.mode=AUTO
#
# Outbound Email Configuration
#-------------
#mail.host=
#mail.port=25
#mail.username=anonymous
#mail.password=
#mail.encoding=UTF-8
#mail.from.default=alfresco@alfresco.org
#mail.smtp.auth=false
#
# Alfresco Email Service and Email Server
#-------------
# Enable/Disable the inbound email service. The service could be used by processes other than
# the Email Server (e.g. direct RMI access) so this flag is independent of the Email Service.
#-------------
#email.inbound.enabled=true
# Email Server properties
#-------------
#email.server.enabled=true
#email.server.port=25
#email.server.domain=alfresco.com
#email.inbound.unknownUser=anonymous
# A comma separated list of email REGEX patterns of allowed senders.
# If there are any values in the list then all sender email addresses
# must match. For example:
# .*\@alfresco\.com, .*\@alfresco\.org
# Allow anyone:
#-------------
#email.server.allowed.senders=.*
#
# The default authentication chain
# To configure external authentication subsystems see:
# http://wiki.alfresco.com/wiki/Alfresco_Authentication_Subsystems
#-------------
#authentication.chain=alfrescoNtlm1:alfrescoNtlm
#
# URL Generation Parameters (The ${localname} token is replaced by the local server name)
#-------------
#alfresco.context=alfresco
#alfresco.host=${localname}
#alfresco.port=8080
#alfresco.protocol=http
#
#share.context=share
#share.host=${localname}
#share.port=8080
#share.protocol=http
#imap.server.enabled=true
#imap.server.port=143
#imap.server.host=localhost
# Default value of alfresco.rmi.services.host is 0.0.0.0 which means 'listen on all adapters'.
# This allows connections to JMX both remotely and locally.
#
alfresco.rmi.services.host=0.0.0.0
#
# RMI service ports for the individual services.
# These seven services are available remotely.
#
# Assign individual ports for each service for best performance
# or run several services on the same port. You can even run everything on 50500 if needed.
#
# Select 0 to use a random unused port.
#
#avm.rmi.service.port=50501
#avmsync.rmi.service.port=50502
#attribute.rmi.service.port=50503
#authentication.rmi.service.port=50504
#repo.rmi.service.port=50505
#action.rmi.service.port=50506
#wcm-deployment-receiver.rmi.service.port=50507
#monitor.rmi.service.port=50508
# Dialect is autodetected starting from 3.2
# H2 dialect
#hibernate.dialect=org.hibernate.dialect.H2Dialect
# Property to control whether schema updates are performed automatically.
# Updates must be enabled during upgrades as, apart from the static upgrade scripts,
# there are also auto-generated update scripts that will need to be executed. After
# upgrading to a new version, this can be disabled.
#db.schema.update=true
# File servers related properties
# For local builds we disable CIFS and FTP. Edit the following property to reenable them
smb.server.enabled=false
smb.server.name=CFS_SHARE_LOCAL
smb.server.domain=mycompany.com
smb.server.bindto=127.0.0.1
smb.tcpip.port=1445
netbios.session.port=1139
netbios.name.port=1137
netbios.datagram.port=1138
ftp.server.enabled=false
ftp.port=1121
ftp.authenticator=alfresco
# This properties file is used to configure LDAP authentication
# NB: The following LDAP related properties are read only in case -Denteprise mvn build property is specified
# Wheter to allow silent deletion of users in the Alfresco UI (note: users will be then resynced in the next synchronization)
ldap.authentication.allowDeleteUser=true
# LDAP JNDI provider
ldap.authentication.provider=com.sun.jndi.ldap.LdapCtxFactory
# Url and protocol for LDAP server to carry authentication against
ldap.authentication.url=ldap://ldap.mycompany.com:636
# can be (simple, ssl)
ldap.authentication.protcol=ssl
# Credentials with full access to the directoty used
ldap.authentication.adminUser=ou=Admin,ou=Services,o=Company
ldap.authentication.adminPassword=secret
# Wheter to allow unauthenticated guest a read only login
ldap.authentication.guestLogin.allowed=false
# Wheter users can be created on the fly upon successful external (e.g. LDAP) authentication. Useful to avoid user synchronization in case just uid and pwd are needed for a user
server.transaction.allow-writes=true
# Wheter user names are case sensitive
user.name.caseSensitive=true
# Wheter the synchronization process has to process duplicated users (e.g. synced users and users coming from the sync)
personService.processDuplicates=true
# Which action to take when processin duplicates. One of: LEAVE, SPLIT, DELETE
personService.duplicateMode=DELETE
# Which of the users (in case of SPLIT duplicates policy) should be considered valid
personService.lastIsBest=true
# Wheter auto created users should be considered when processing duplicates
personService.includeAutoCreated=true
# The query to find the people to import
ldap.synchronisation.personQuery=(objectclass=inetOrgPerson)
# The search base of the query to find people to import
ldap.synchronisation.personSearchBase=ou=Identities,ou=mycompany,o=com
# The attribute name on people objects found in LDAP to use as the uid in Alfresco
ldap.synchronisation.userIdAttributeName=cn
# The attribute on person objects in LDAP to map to the first name property in Alfresco
ldap.synchronisation.userFirstNameAttributeName=givenName
# The attribute on person objects in LDAP to map to the last name property in Alfresco
ldap.synchronisation.userLastNameAttributeName=sn
# The attribute on person objects in LDAP to map to the email property in Alfresco
ldap.synchronisation.userEmailAttributeName=cn
# The attribute on person objects in LDAP to map to the organizational id property in Alfresco
ldap.synchronisation.userOrganizationalIdAttributeName=maildomain
# The default home folder provider to use for people created via LDAP import
ldap.synchronisation.defaultHomeFolderProvider=companyHomeFolderProvider
# The query to find group objects
ldap.synchronisation.groupQuery=(objectclass=AlfrescoGroup)
# The search base to use to find group objects
ldap.synchronisation.groupSearchBase=ou=AlfrescoGroups,ou=mycompany,o=com
# The attribute on LDAP group objects to map to the gid property in Alfrecso
ldap.synchronisation.groupIdAttributeName=cn
# The group type in LDAP
ldap.synchronisation.groupType=AlfrescoGroup
# The person type in LDAP
ldap.synchronisation.personType=inetOrgPerson
# The attribute in LDAP on group objects that defines the DN for its members
ldap.synchronisation.groupMemberAttributeName=member
# The cron expression defining when people imports should take place (e.g. every evening at 22:00 hours)
ldap.synchronisation.import.person.cron=0 0 22 * * ?
# The cron expression defining when group imports should take place (e.g. every evening at 21:45 hours)
ldap.synchronisation.import.group.cron=0 45 21 * * ?
# Should all groups be cleared out at import time?
# - this is safe as groups are not used in Alfresco for other things (unlike person objects which you should never clear out during an import)
# - setting this to true means old group definitions will be tidied up.
ldap.synchronisation.import.group.clearAllChildren=false

View File

@@ -1,2 +0,0 @@
# You can add here custom log4j classes. This will be merged with the main log4j.properties
# See http://wiki.alfresco.com/wiki/Developing_an_Alfresco_Module#Best_Log4j_Configuration_Practices

View File

@@ -1,265 +0,0 @@
# This is a full override of Alfresco 4.2.b log4j.properties
# This file overwrites the alfresco.war log4j.properties
# Set root logger level to error
log4j.rootLogger=${app.log.root.level}, Console, File
###### Console appender definition #######
# All outputs currently set to be a ConsoleAppender.
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
# use log4j NDC to replace %x with tenant domain / username
log4j.appender.Console.layout.ConversionPattern=%d{ISO8601} %x %-5p [%c{3}] [%t] %m%n
#log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n
###### File appender definition #######
log4j.appender.File=org.apache.log4j.DailyRollingFileAppender
log4j.appender.File.File=${app.log.dir}alfresco.log
log4j.appender.File.Append=true
log4j.appender.File.DatePattern='.'yyyy-MM-dd
log4j.appender.File.layout=org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n
###### Hibernate specific appender definition #######
#log4j.appender.file=org.apache.log4j.FileAppender
#log4j.appender.file.File=hibernate.log
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
###### Log level overrides #######
# Commented-in loggers will be exposed as JMX MBeans (refer to org.alfresco.repo.admin.Log4JHierarchyInit)
# Hence, generally useful loggers should be listed with at least ERROR level to allow simple runtime
# control of the level via a suitable JMX Console. Also, any other loggers can be added transiently via
# Log4j addLoggerMBean as long as the logger exists and has been loaded.
# Hibernate
log4j.logger.org.hibernate=error
log4j.logger.org.hibernate.util.JDBCExceptionReporter=fatal
log4j.logger.org.hibernate.event.def.AbstractFlushingEventListener=fatal
log4j.logger.org.hibernate.type=warn
log4j.logger.org.hibernate.cfg.SettingsFactory=warn
# Spring
log4j.logger.org.springframework=warn
# Turn off Spring remoting warnings that should really be info or debug.
log4j.logger.org.springframework.remoting.support=error
log4j.logger.org.springframework.util=error
# Axis/WSS4J
log4j.logger.org.apache.axis=info
log4j.logger.org.apache.ws=info
# CXF
log4j.logger.org.apache.cxf=error
# MyFaces
log4j.logger.org.apache.myfaces.util.DebugUtils=info
log4j.logger.org.apache.myfaces.el.VariableResolverImpl=error
log4j.logger.org.apache.myfaces.application.jsp.JspViewHandlerImpl=error
log4j.logger.org.apache.myfaces.taglib=error
# OpenOfficeConnection
log4j.logger.net.sf.jooreports.openoffice.connection=fatal
# log prepared statement cache activity ###
log4j.logger.org.hibernate.ps.PreparedStatementCache=info
# Alfresco
log4j.logger.org.alfresco=error
log4j.logger.org.alfresco.repo.admin=info
log4j.logger.org.alfresco.repo.cache.TransactionalCache=warn
log4j.logger.org.alfresco.repo.model.filefolder=warn
log4j.logger.org.alfresco.repo.tenant=info
log4j.logger.org.alfresco.repo.avm=info
log4j.logger.org.alfresco.config=warn
log4j.logger.org.alfresco.config.JndiObjectFactoryBean=warn
log4j.logger.org.alfresco.config.JBossEnabledWebApplicationContext=warn
log4j.logger.org.alfresco.repo.management.subsystems=warn
log4j.logger.org.alfresco.repo.management.subsystems.ChildApplicationContextFactory=info
log4j.logger.org.alfresco.repo.management.subsystems.ChildApplicationContextFactory$ChildApplicationContext=warn
log4j.logger.org.alfresco.repo.security.sync=info
log4j.logger.org.alfresco.repo.security.person=info
log4j.logger.org.alfresco.sample=info
log4j.logger.org.alfresco.web=info
#log4j.logger.org.alfresco.web.app.AlfrescoNavigationHandler=debug
#log4j.logger.org.alfresco.web.ui.repo.component.UIActions=debug
#log4j.logger.org.alfresco.web.ui.repo.tag.PageTag=debug
#log4j.logger.org.alfresco.web.bean.clipboard=debug
log4j.logger.org.alfresco.repo.webservice=info
log4j.logger.org.alfresco.service.descriptor.DescriptorService=info
#log4j.logger.org.alfresco.web.page=debug
log4j.logger.org.alfresco.repo.importer.ImporterBootstrap=error
#log4j.logger.org.alfresco.repo.importer.ImporterBootstrap=info
log4j.logger.org.alfresco.web.ui.common.Utils=error
#log4j.logger.org.alfresco.web.ui.common.Utils=info
log4j.logger.org.alfresco.repo.admin.patch.PatchExecuter=info
log4j.logger.org.alfresco.repo.domain.patch.ibatis.PatchDAOImpl=info
# Specific patches
log4j.logger.org.alfresco.repo.admin.patch.impl.DeploymentMigrationPatch=info
log4j.logger.org.alfresco.repo.version.VersionMigrator=info
log4j.logger.org.alfresco.repo.admin.patch.impl.ResetWCMToGroupBasedPermissionsPatch=info
log4j.logger.org.alfresco.repo.module.ModuleServiceImpl=info
log4j.logger.org.alfresco.repo.domain.schema.SchemaBootstrap=info
log4j.logger.org.alfresco.repo.admin.ConfigurationChecker=info
log4j.logger.org.alfresco.repo.node.index.AbstractReindexComponent=warn
log4j.logger.org.alfresco.repo.node.index.IndexTransactionTracker=warn
log4j.logger.org.alfresco.repo.node.index.FullIndexRecoveryComponent=info
log4j.logger.org.alfresco.repo.node.index.AVMFullIndexRecoveryComponent=info
log4j.logger.org.alfresco.util.OpenOfficeConnectionTester=info
log4j.logger.org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl=warn
log4j.logger.org.alfresco.repo.domain.hibernate.DirtySessionMethodInterceptor=warn
log4j.logger.org.alfresco.repo.transaction.RetryingTransactionHelper=warn
log4j.logger.org.alfresco.util.transaction.SpringAwareUserTransaction.trace=warn
log4j.logger.org.alfresco.util.AbstractTriggerBean=warn
log4j.logger.org.alfresco.enterprise.repo.cache.cluster.KeepAliveHeartbeatReceiver=info
log4j.logger.org.alfresco.repo.version.Version2ServiceImpl=warn
#log4j.logger.org.alfresco.web.app.DebugPhaseListener=debug
log4j.logger.org.alfresco.repo.workflow=info
# CIFS server debugging
log4j.logger.org.alfresco.smb.protocol=error
#log4j.logger.org.alfresco.smb.protocol.auth=debug
#log4j.logger.org.alfresco.acegi=debug
# FTP server debugging
log4j.logger.org.alfresco.ftp.protocol=error
#log4j.logger.org.alfresco.ftp.server=debug
# WebDAV debugging
#log4j.logger.org.alfresco.webdav.protocol=debug
log4j.logger.org.alfresco.webdav.protocol=error
# NTLM servlet filters
#log4j.logger.org.alfresco.web.app.servlet.NTLMAuthenticationFilter=debug
#log4j.logger.org.alfresco.repo.webdav.auth.NTLMAuthenticationFilter=debug
# Kerberos servlet filters
#log4j.logger.org.alfresco.web.app.servlet.KerberosAuthenticationFilter=debug
#log4j.logger.org.alfresco.repo.webdav.auth.KerberosAuthenticationFilter=debug
# File servers
log4j.logger.org.alfresco.fileserver=warn
# Repo filesystem debug logging
#log4j.logger.org.alfresco.filesys.repo.ContentDiskDriver=debug
# AVM filesystem debug logging
#log4j.logger.org.alfresco.filesys.avm.AVMDiskDriver=debug
# Integrity message threshold - if 'failOnViolation' is off, then WARNINGS are generated
log4j.logger.org.alfresco.repo.node.integrity=ERROR
# Indexer debugging
log4j.logger.org.alfresco.repo.search.Indexer=error
#log4j.logger.org.alfresco.repo.search.Indexer=debug
log4j.logger.org.alfresco.repo.search.impl.lucene.index=error
log4j.logger.org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl=warn
#log4j.logger.org.alfresco.repo.search.impl.lucene.index=DEBUG
# Audit debugging
# log4j.logger.org.alfresco.repo.audit=DEBUG
# log4j.logger.org.alfresco.repo.audit.model=DEBUG
# Forms debugging
# log4j.logger.org.alfresco.web.forms=debug
# log4j.logger.org.chiba.xml.xforms=debug
log4j.logger.org.alfresco.web.forms.xforms.XFormsBean=error
log4j.logger.org.alfresco.web.forms.XSLTRenderingEngine=error
# Property sheet and modelling debugging
# change to error to hide the warnings about missing properties and associations
log4j.logger.alfresco.missingProperties=warn
log4j.logger.org.alfresco.web.ui.repo.component.property.UIChildAssociation=warn
log4j.logger.org.alfresco.web.ui.repo.component.property.UIAssociation=warn
#log4j.logger.org.alfresco.web.ui.repo.component.property=debug
# Dictionary/Model debugging
log4j.logger.org.alfresco.repo.dictionary=warn
log4j.logger.org.alfresco.repo.dictionary.types.period=warn
# Virtualization Server Registry
log4j.logger.org.alfresco.mbeans.VirtServerRegistry=error
# Spring context runtime property setter
log4j.logger.org.alfresco.util.RuntimeSystemPropertiesSetter=info
# Debugging options for clustering
log4j.logger.org.alfresco.repo.content.ReplicatingContentStore=error
log4j.logger.org.alfresco.repo.content.replication=error
#log4j.logger.org.alfresco.repo.deploy.DeploymentServiceImpl=debug
# Activity service
log4j.logger.org.alfresco.repo.activities=warn
# User usage tracking
log4j.logger.org.alfresco.repo.usage=info
# Sharepoint
log4j.logger.org.alfresco.module.vti=info
# Forms Engine
log4j.logger.org.alfresco.repo.forms=info
log4j.logger.org.alfresco.web.config.forms=info
log4j.logger.org.alfresco.web.scripts.forms=info
# CMIS
log4j.logger.org.alfresco.opencmis=error
log4j.logger.org.alfresco.opencmis.AlfrescoCmisServiceInterceptor=error
log4j.logger.org.alfresco.cmis=error
log4j.logger.org.alfresco.cmis.dictionary=warn
log4j.logger.org.apache.chemistry.opencmis=info
# IMAP
log4j.logger.org.alfresco.repo.imap=info
# JBPM
# Note: non-fatal errors (eg. logged during job execution) should be handled by Alfresco's retrying transaction handler
log4j.logger.org.jbpm.graph.def.GraphElement=fatal
#log4j.logger.org.alfresco.repo.googledocs=debug
###### Scripting #######
# Web Framework
log4j.logger.org.springframework.extensions.webscripts=info
log4j.logger.org.springframework.extensions.webscripts.ScriptLogger=warn
log4j.logger.org.springframework.extensions.webscripts.ScriptDebugger=off
# Repository
log4j.logger.org.alfresco.repo.web.scripts=warn
log4j.logger.org.alfresco.repo.web.scripts.BaseWebScriptTest=info
log4j.logger.org.alfresco.repo.web.scripts.AlfrescoRhinoScriptDebugger=off
log4j.logger.org.alfresco.repo.jscript=error
log4j.logger.org.alfresco.repo.jscript.ScriptLogger=warn
log4j.logger.org.alfresco.repo.cmis.rest.CMISTest=info
log4j.logger.org.alfresco.repo.avm.actions=info
# Freemarker
# Note the freemarker.runtime logger is used to log non-fatal errors that are handled by Alfresco's retrying transaction handler
log4j.logger.freemarker.runtime=
# Metadata extraction
log4j.logger.org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter=warn
# Reduces PDFont error level due to ALF-7105
log4j.logger.org.apache.pdfbox.pdmodel.font.PDSimpleFont=fatal
log4j.logger.org.apache.pdfbox.pdmodel.font.PDFont=fatal
log4j.logger.org.apache.pdfbox.pdmodel.font.PDCIDFont=fatal
# no index support
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexIndexer=fatal
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexSearchService=fatal

View File

@@ -1,911 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Alfresco Web Client</display-name>
<description>Alfresco Web Client</description>
<context-param>
<param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<context-param>
<param-name>javax.faces.PARTIAL_STATE_SAVING_METHOD</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>javax.faces.CONFIG_FILES</param-name>
<param-value>/WEB-INF/faces-config-app.xml,/WEB-INF/faces-config-beans.xml,/WEB-INF/faces-config-navigation.xml,/WEB-INF/faces-config-common.xml,/WEB-INF/faces-config-repo.xml,/WEB-INF/faces-config-wcm.xml,/WEB-INF/faces-config-custom.xml</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>
<param-value>false</param-value>
<description>This is an EXPERIMENTAL feature, so leave it off for now!</description>
</context-param>
<context-param>
<param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
<param-value>false</param-value>
<description>Stop MyFaces from Serializing the state to the session</description>
</context-param>
<!-- TODO: Change this to false for production -->
<context-param>
<param-name>org.apache.myfaces.PRETTY_HTML</param-name>
<param-value>true</param-value>
<description>
If true, rendered HTML code will be formatted, so that it is "human readable".
i.e. additional line separators and whitespace will be written, that do not
influence the HTML code.
Default: "true"
</description>
</context-param>
<context-param>
<param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
<param-value>false</param-value>
<description>
If true, a javascript function will be rendered that is able to restore the
former vertical scroll on every request. Convenient feature if you have pages
with long lists and you do not want the browser page to always jump to the top
if you trigger a link or button action that stays on the same page.
Default: "false"
</description>
</context-param>
<!-- Spring Application Context location -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/web-application-context.xml</param-value>
<description>Spring config file location</description>
</context-param>
<context-param>
<param-name>log4jExposeWebAppRoot</param-name>
<param-value>false</param-value>
<description>Do not try to resolve web app root as file</description>
</context-param>
<!-- These were previously init params for the WebDAV servlet,
but since they are also needed to MT-enable the
ExternalAccess servlet, I have made them context wide. -->
<context-param>
<param-name>store</param-name>
<param-value>workspace://SpacesStore</param-value>
</context-param>
<context-param>
<param-name>rootPath</param-name>
<param-value>/app:company_home</param-value>
</context-param>
<context-param>
<param-name>org.apache.myfaces.ERROR_HANDLING</param-name>
<param-value>false</param-value>
</context-param>
<!-- Activiti context param placeholder -->
<context-param>
<param-name>com.ibm.ws.jsf.loadExternalDtd</param-name>
<param-value>false</param-value>
<description>Sets "http://apache.org/xml/features/nonvalidating/load-external-dtd" feature on the SAXParser to false if this parameter is false</description>
</context-param>
<filter>
<filter-name>Authentication Filter</filter-name>
<description>Authentication filter mapped only to faces URLs. Other URLs generally use proprietary means to talk to the AuthenticationComponent</description>
<filter-class>org.alfresco.repo.web.filter.beans.BeanProxyFilter</filter-class>
<init-param>
<param-name>beanName</param-name>
<param-value>AuthenticationFilter</param-value>
</init-param>
</filter>
<filter>
<filter-name>Global Authentication Filter</filter-name>
<description>Authentication filter mapped to all authenticated URLs. Mainly for SSO support</description>
<filter-class>org.alfresco.repo.web.filter.beans.BeanProxyFilter</filter-class>
<init-param>
<param-name>beanName</param-name>
<param-value>GlobalAuthenticationFilter</param-value>
</init-param>
</filter>
<filter>
<filter-name>WebScript Authentication Filter</filter-name>
<description>Authentication filter mapped to web script URLs. Mainly for SSO support</description>
<filter-class>org.alfresco.repo.web.filter.beans.BeanProxyFilter</filter-class>
<init-param>
<param-name>beanName</param-name>
<param-value>WebscriptAuthenticationFilter</param-value>
</init-param>
</filter>
<filter>
<filter-name>WebDAV Authentication Filter</filter-name>
<filter-class>org.alfresco.repo.web.filter.beans.BeanProxyFilter</filter-class>
<init-param>
<param-name>beanName</param-name>
<param-value>WebDavAuthenticationFilter</param-value>
</init-param>
</filter>
<filter>
<filter-name>Admin Authentication Filter</filter-name>
<filter-class>org.alfresco.web.app.servlet.AdminAuthenticationFilter</filter-class>
</filter>
<filter>
<filter-name>CacheExpiresFilter</filter-name>
<description>Set HTTP cache Expires header 30 days forward for a mapping.</description>
<filter-class>org.alfresco.web.scripts.servlet.StaticAssetCacheFilter</filter-class>
<init-param>
<param-name>expires</param-name>
<param-value>30</param-value>
<description>Add an Expires Header 30 days forward</description>
</init-param>
</filter>
<filter>
<filter-name>Global Localization Filter</filter-name>
<description>Sets fallback default locale for ALL requests</description>
<filter-class>org.alfresco.web.app.servlet.GlobalLocalizationFilter</filter-class>
</filter>
<filter>
<filter-name>JSF Session Synchronized Filter</filter-name>
<filter-class>org.alfresco.repo.web.filter.beans.SessionSynchronizedFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Global Localization Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/navigate/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/command/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/download/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/template/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/n/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/c/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/t/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/d/*</url-pattern>
</filter-mapping>
<!-- The WebScript Authentication filter sits in front of web service URLs in addition to the global authentication filter -->
<filter-mapping>
<filter-name>WebScript Authentication Filter</filter-name>
<url-pattern>/wcservice/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>WebScript Authentication Filter</filter-name>
<url-pattern>/wcs/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/wcservice/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/wcs/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/ajax/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Global Authentication Filter</filter-name>
<url-pattern>/faces/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Authentication Filter</filter-name>
<url-pattern>/faces/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>WebDAV Authentication Filter</filter-name>
<url-pattern>/webdav/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Admin Authentication Filter</filter-name>
<url-pattern>/faces/jsp/admin/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Admin Authentication Filter</filter-name>
<url-pattern>/faces/jsp/categories/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Admin Authentication Filter</filter-name>
<url-pattern>/faces/jsp/groups/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Admin Authentication Filter</filter-name>
<url-pattern>/faces/jsp/users/delete-user.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Admin Authentication Filter</filter-name>
<url-pattern>/faces/jsp/users/users.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Admin Authentication Filter</filter-name>
<url-pattern>/faces/jsp/admin/system-info.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>JSF Session Synchronized Filter</filter-name>
<url-pattern>/faces/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.jpg</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.png</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.gif</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.css</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<!-- Spring Context Loader listener - can disable loading of context if runtime config changes are needed -->
<listener>
<listener-class>org.alfresco.web.app.ContextLoaderListener</listener-class>
</listener>
<!-- Web Application Context listener - session create/destroy debugging and bootstrap Spring init -->
<listener>
<listener-class>org.alfresco.web.app.ContextListener</listener-class>
</listener>
<!-- WebDAV session listener - ensures that no locked resources is left after session expires -->
<listener>
<listener-class>org.alfresco.repo.webdav.WebDAVSessionListener</listener-class>
</listener>
<!-- Web Services context listener for OpenCMIS -->
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
<!-- Activiti listener placeholder -->
<!-- Faces Servlet -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>uploadFile</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.UploadFileServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>uploadContent</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.UploadContentServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>downloadContent</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.DownloadContentServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>downloadRawContent</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.DownloadRawContentServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>guestDownloadContent</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.GuestDownloadContentServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>guestTemplateContent</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.GuestTemplateContentServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>externalAccess</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.ExternalAccessServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>templateContent</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.TemplateContentServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>commandServlet</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.CommandServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ajaxServlet</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.ajax.AjaxServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>axis</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
<load-on-startup>5</load-on-startup>
</servlet>
<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>6</load-on-startup>
</servlet>
<servlet>
<servlet-name>WebDAV</servlet-name>
<servlet-class>org.alfresco.repo.webdav.WebDAVServlet</servlet-class>
<load-on-startup>5</load-on-startup>
</servlet>
<servlet>
<servlet-name>apiServlet</servlet-name>
<servlet-class>org.springframework.extensions.webscripts.servlet.WebScriptServlet</servlet-class>
<init-param>
<param-name>authenticator</param-name>
<param-value>webscripts.authenticator.basic</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>wcapiServlet</servlet-name>
<servlet-class>org.springframework.extensions.webscripts.servlet.WebScriptServlet</servlet-class>
<init-param>
<param-name>authenticator</param-name>
<param-value>webscripts.authenticator.webclient</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>portalapiServlet</servlet-name>
<servlet-class>org.springframework.extensions.webscripts.servlet.WebScriptServlet</servlet-class>
<init-param>
<param-name>authenticator</param-name>
<param-value>webscripts.authenticator.webclient</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>facebookServlet</servlet-name>
<servlet-class>org.alfresco.repo.web.scripts.facebook.FacebookServlet</servlet-class>
<init-param>
<param-name>authenticator</param-name>
<param-value>webscripts.authenticator.facebook</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>fbapiServlet</servlet-name>
<servlet-class>org.alfresco.repo.web.scripts.facebook.FacebookAPIServlet</servlet-class>
<init-param>
<param-name>authenticator</param-name>
<param-value>webscripts.authenticator.facebook</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>proxyServlet</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.HTTPProxyServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>workflowDefinitionImageServlet</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.WorkflowDefinitionImageServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>JBPMDeployProcessServlet</servlet-name>
<servlet-class>org.alfresco.web.app.servlet.JBPMDeployProcessServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>CMISFileShareServlet</servlet-name>
<servlet-class>org.apache.chemistry.opencmis.browser.BrowseServlet</servlet-class>
<init-param>
<param-name>auxroot</param-name>
<param-value>cmisfs/browser/</param-value>
</init-param>
<init-param>
<param-name>allow</param-name>
<param-value>http.*</param-value>
</init-param>
<init-param>
<param-name>stylesheet:application/atomsvc+xml</param-name>
<param-value>/cmisfs/stylesheets/service.xsl</param-value>
</init-param>
<init-param>
<param-name>stylesheet:application/atom+xml;type=feed</param-name>
<param-value>/cmisfs/stylesheets/feed.xsl</param-value>
</init-param>
<init-param>
<param-name>stylesheet:application/cmistree+xml</param-name>
<param-value>/cmisfs/stylesheets/feed.xsl</param-value>
</init-param>
<init-param>
<param-name>stylesheet:application/atom+xml;type=entry</param-name>
<param-value>/cmisfs/stylesheets/entry.xsl</param-value>
</init-param>
<init-param>
<param-name>stylesheet:application/cmisallowableactions+xml</param-name>
<param-value>/cmisfs/stylesheets/actions.xsl</param-value>
</init-param>
<init-param>
<param-name>stylesheet:application/cmisacl+xml</param-name>
<param-value>/cmisfs/stylesheets/acl.xsl</param-value>
</init-param>
<init-param>
<param-name>override-stylesheet:renditions</param-name>
<param-value>/cmisfs/stylesheets/renditions.xsl</param-value>
</init-param>
<init-param>
<param-name>override-stylesheet:relationships</param-name>
<param-value>/cmisfs/stylesheets/relationships.xsl</param-value>
</init-param>
<init-param>
<param-name>override-stylesheet:thumbnails</param-name>
<param-value>/cmisfs/stylesheets/thumbnails.xsl</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>cmisws</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
<load-on-startup>7</load-on-startup>
</servlet>
<servlet>
<servlet-name>cmisatom</servlet-name>
<servlet-class>org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet</servlet-class>
<init-param>
<param-name>callContextHandler</param-name>
<param-value>org.apache.chemistry.opencmis.server.shared.BasicAuthCallContextHandler</param-value>
</init-param>
<load-on-startup>8</load-on-startup>
</servlet>
<servlet>
<servlet-name>cmisbrowser</servlet-name>
<servlet-class>org.apache.chemistry.opencmis.server.impl.browser.CmisBrowserBindingServlet</servlet-class>
<init-param>
<param-name>callContextHandler</param-name>
<param-value>org.apache.chemistry.opencmis.server.shared.BasicAuthCallContextHandler</param-value>
</init-param>
<load-on-startup>8</load-on-startup>
</servlet>
<servlet>
<servlet-name>cmistck</servlet-name>
<servlet-class>org.apache.chemistry.opencmis.tck.runner.WebRunnerServlet</servlet-class>
<load-on-startup>8</load-on-startup>
</servlet>
<servlet>
<servlet-name>authenticatorServlet</servlet-name>
<servlet-class>org.alfresco.repo.web.scripts.servlet.AuthenticatorServlet</servlet-class>
</servlet>
<!-- Activiti servlet placeholder -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>uploadFile</servlet-name>
<url-pattern>/uploadFileServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>uploadContent</servlet-name>
<url-pattern>/upload/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>downloadContent</servlet-name>
<url-pattern>/download/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>downloadContent</servlet-name>
<url-pattern>/d/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>downloadRawContent</servlet-name>
<url-pattern>/dr</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>guestDownloadContent</servlet-name>
<url-pattern>/guestDownload/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>guestDownloadContent</servlet-name>
<url-pattern>/gd/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>templateContent</servlet-name>
<url-pattern>/template/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>templateContent</servlet-name>
<url-pattern>/t/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>guestTemplateContent</servlet-name>
<url-pattern>/guestTemplate/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>guestTemplateContent</servlet-name>
<url-pattern>/gt/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>externalAccess</servlet-name>
<url-pattern>/navigate/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>externalAccess</servlet-name>
<url-pattern>/n/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>commandServlet</servlet-name>
<url-pattern>/command/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>commandServlet</servlet-name>
<url-pattern>/c/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ajaxServlet</servlet-name>
<url-pattern>/ajax/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>axis</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/cmis/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>WebDAV</servlet-name>
<url-pattern>/webdav/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>apiServlet</servlet-name>
<url-pattern>/service/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>apiServlet</servlet-name>
<url-pattern>/s/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>wcapiServlet</servlet-name>
<url-pattern>/wcservice/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>wcapiServlet</servlet-name>
<url-pattern>/wcs/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>portalapiServlet</servlet-name>
<url-pattern>/168service/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>portalapiServlet</servlet-name>
<url-pattern>/168s/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>facebookServlet</servlet-name>
<url-pattern>/facebook/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>facebookServlet</servlet-name>
<url-pattern>/fb/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>fbapiServlet</servlet-name>
<url-pattern>/fbservice/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>fbapiServlet</servlet-name>
<url-pattern>/fbs/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>proxyServlet</servlet-name>
<url-pattern>/proxy</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>JBPMDeployProcessServlet</servlet-name>
<url-pattern>/jbpm/deployprocess</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>workflowDefinitionImageServlet</servlet-name>
<url-pattern>/workflowdefinitionimage/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>CMISFileShareServlet</servlet-name>
<url-pattern>/cmisbrowse</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cmisws</servlet-name>
<url-pattern>/cmisws/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cmisatom</servlet-name>
<url-pattern>/cmisatom/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>cmisbrowser</servlet-name>
<url-pattern>/cmisbrowser/*</url-pattern>
</servlet-mapping>
<!-- The CMIS TCK is deactivated by default. -->
<!-- CMISTCK
<servlet-mapping>
<servlet-name>cmistck</servlet-name>
<url-pattern>/cmistck</url-pattern>
</servlet-mapping>
CMISTCK -->
<!-- Activiti servlet mapping placeholder -->
<session-config>
<session-timeout>60</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/jsp/error.jsp</location>
</error-page>
<resource-ref>
<description>The Alfresco database connection</description>
<res-ref-name>jdbc/dataSource</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Unshareable</res-sharing-scope>
</resource-ref>
<!--
<security-constraint>
<web-resource-collection>
<web-resource-name>SOLR</web-resource-name>
<url-pattern>/service/api/solr/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>repoclient</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>SOLR</web-resource-name>
<url-pattern>/s/api/solr/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>repoclient</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>SOLR</web-resource-name>
<url-pattern>/wcservice/api/solr/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>repoclient</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>SOLR</web-resource-name>
<url-pattern>/wcs/api/solr/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>repoclient</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Repository</realm-name>
</login-config>
<security-role>
<role-name>repoclient</role-name>
</security-role>
-->
<env-entry>
<description>A flag that globally enables or disables startup of the major Alfresco subsystems.</description>
<env-entry-name>properties/startup.enable</env-entry-name>
<env-entry-value>true</env-entry-value>
<env-entry-type>java.lang.Boolean</env-entry-type>
</env-entry>
<env-entry>
<description>The filesystem directory below which content and index data is stored. Should be on a shared disk
if this is a clustered installation.</description>
<env-entry-name>properties/dir.root</env-entry-name>
<env-entry-value/> <!-- Empty value included for JBoss compatibility -->
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
<env-entry>
<description>The fully qualified name of a org.hibernate.dialect.Dialect subclass that allows Hibernate to
generate SQL optimized for a particular relational database. Choose from org.hibernate.dialect.DerbyDialect,
org.hibernate.dialect.MySQLInnoDBDialect,
org.alfresco.repo.domain.hibernate.dialect.AlfrescoOracle9Dialect,
org.alfresco.repo.domain.hibernate.dialect.AlfrescoSybaseAnywhereDialect,
org.alfresco.repo.domain.hibernate.dialect.AlfrescoSQLServerDialect, org.hibernate.dialect.PostgreSQLDialect</description>
<env-entry-name>properties/hibernate.dialect</env-entry-name>
<env-entry-value/> <!-- Empty value included for JBoss compatibility -->
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
<env-entry>
<description>Mapping from tokens in Hibernate queries to SQL tokens. For PostgreSQL, set this to "true
TRUE, false FALSE".</description>
<env-entry-name>properties/hibernate.query.substitutions</env-entry-name>
<env-entry-value/> <!-- Empty value included for JBoss compatibility -->
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
<env-entry>
<description>Enable use of JDBC3 PreparedStatement.getGeneratedKeys() to retrieve natively generated keys
after insert. Requires JDBC3+ driver. Set to false if your driver has problems with the Hibernate identifier
generators. By default, tries to determine the driver capabilities using connection metadata. </description>
<env-entry-name>properties/hibernate.jdbc.use_get_generated_keys</env-entry-name>
<env-entry-value/> <!-- Empty value included for JBoss compatibility -->
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
<env-entry>
<description>Qualify unqualified table names with the given schema/tablespace in generated SQL. It may be
necessary to set this when the target database has more than one schema.</description>
<env-entry-name>properties/hibernate.default_schema</env-entry-name>
<env-entry-value/> <!-- Empty value included for JBoss compatibility -->
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
</web-app>

View File

@@ -1,16 +0,0 @@
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure id="Server" class="org.mortbay.jetty.Server">
<New id="myDataSource"
class="org.mortbay.jetty.plus.naming.Resource">
<Arg>jdbc/dataSource</Arg>
<Arg>
<New class="${alfresco.db.datasource.class}">
<Set name="URL">${alfresco.db.url}</Set>
<Set name="User">${alfresco.db.username}</Set>
<Set name="Password">${alfresco.db.password}</Set>
</New>
</Arg>
</New>
</Configure>

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco AMP Module</name>
<packaging>amp</packaging>
<description>This is a sample AMP project, depended upon by the alfresco WAR module</description>
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<!--
Following dependencies are needed for compiling
Java code in src/main/java; <scope>provided</scope>
is inherited for each of the following; for more
info, please refer to alfresco-integration-parent
POM definition
@TODO - document
-->
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-repository</artifactId>
</dependency>
</dependencies>
<properties>
<!-- This property allow to switch Repo AMP vs Share AMP.
Set alfresco.client.war=share to run this AMP against Share
-->
<alfresco.client.war>alfresco</alfresco.client.war>
</properties>
</project>

View File

@@ -1,26 +0,0 @@
package org.alfresco.demoamp;
import java.util.logging.Logger;
import org.alfresco.repo.module.AbstractModuleComponent;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* A basic component that will be started for this module.
* This is a sample taken from Alfresco SDK
*
* @author Derek Hulley
*/
public class DemoComponent extends AbstractModuleComponent
{
Log log = LogFactory.getLog(DemoComponent.class);
@Override
protected void executeInternal() throws Throwable
{
System.out.println("DemoComponent has been executed");
log.debug("Test debug logging is working");
log.info("This should not be outputted by default");
}
}

View File

@@ -1,66 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>${groupId}</groupId>
<artifactId>${artifactId}</artifactId>
<version>${version}</version>
<name>Quickstart of Alfresco and Share with DB and runner embedded</name>
<description>This All-in-One project allows to manage all the components involved in Alfresco development (Repo, Share, Solr, AMPs) in one project</description>
<packaging>pom</packaging>
<name>Alfresco Repository and Share Quickstart with database and an embedded Tomcat runner.</name>
<description>This All-in-One project allows to manage all the components involved in Alfresco development (Repo, Share, Solr4, AMPs) in one project
</description>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-parent</artifactId>
<version>1.0</version>
<version>@@alfresco.sdk.parent.version@@</version>
</parent>
<!--
| SDK properties have sensible defaults in the SDK parent,
| but you can override the properties below to use another version.
| For more available properties see the alfresco-sdk-parent POM.
<!--
SDK properties have sensible defaults in the SDK parent,
but you can override the properties below to use another version.
For more available properties see the alfresco-sdk-parent POM.
-->
<properties>
<alfresco.groupId>${alfresco_target_groupId}</alfresco.groupId>
<alfresco.version>${alfresco_target_version}</alfresco.version>
<app.log.root.level>WARN</app.log.root.level>
<alfresco.data.location>alf_data_dev</alfresco.data.location>
<!-- This controls which properties will be picked in src/test/properties for embedded run -->
<!-- The following are default values for data location, Alfresco Community version, and Records Management Module version.
Uncomment if you need to change (Note. current default version for Enterprise edition is @@alfresco.enterprise.default.version@@)
<alfresco.version>@@alfresco.community.default.version@@</alfresco.version>
<alfresco.rm.version>@@alfresco.rm.version@@</alfresco.rm.version>
<alfresco.data.location>/absolute/path/to/alf_data_dev</alfresco.data.location> -->
<!-- This control the root logging level for all apps uncomment and change, defaults to WARN
<app.log.root.level>WARN</app.log.root.level>
-->
<!-- Set the enviroment to use, this controls which properties will be picked in src/test/properties
for embedded run, defaults to the 'local' environment. See SDK Parent POM for more info.
<env>local</env>
-->
<!-- The Alfresco Share web application is accessible via this URL -->
<share.client.url>http://localhost:8080/share</share.client.url>
</properties>
<!-- Here we realize the connection with the Alfresco selected platform (e.g.version and edition) -->
<dependencyManagement>
<dependencies>
<!-- This will import the dependencyManagement for all artifacts in the selected Alfresco plaftorm
(see http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Importing_Dependencies)
NOTE: You still need to define dependencies in your POM, but you can omit version as it's enforced by this dependencyManagement.
NOTE: It defaults to the latest version this SDK pom has been tested with, but alfresco version can/should be overridden in your project's pom
-->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-platform-distribution</artifactId>
<version>${alfresco.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<!--
No more repos are needed since they will be inherited by the parent POM.
This is needed to download the alfresco-plaftorm POM.
-->
<repositories>
<repository>
<id>alfresco-artifacts</id>
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
</repository>
<repository>
<id>alfresco-artifacts-snapshots</id>
<url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url>
<snapshots>
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
</repositories>
<!-- Here we realize the connection with the Alfresco selected platform (e.g.version and edition) -->
<dependencyManagement>
<dependencies>
<!-- This will import the dependencyManagement for all artifacts in the selected Alfresco plaftorm
(see http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Importing_Dependencies)
NOTE: You still need to define dependencies in your POM, but you can omit version as it's enforced by this dependencyManagement.
NOTE: It defaults to the latest version this SDK pom has been tested with, but alfresco version can/should be overridden in your project's pom
-->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-platform-distribution</artifactId>
<version>${alfresco.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<!-- Compress JavaScript files and store as *-min.js -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.alfresco.maven.plugin</groupId>
<artifactId>alfresco-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<!-- Invoke your build with -Prun to run the multimodule project and enable rapid dev mode in your IDE.
See 'run' profile in the sub modules pom.xml for further behavioral details.
-->
<id>run</id>
<properties>
<!-- While running in rapid dev mode with -Prun, we don't want amp web resources
to be added to the war, so we can load them directly from the AMP project (see
runner/tomcat/context-*.xml for more details) -->
<maven.alfresco.includeWebResources>false</maven.alfresco.includeWebResources>
</properties>
</profile>
</profiles>
</project>

View File

@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco Repository AMP Module</name>
<packaging>amp</packaging>
<description>This is a sample Alfresco repository AMP project, depended upon by the alfresco WAR aggregator</description>
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<properties>
<!-- Property overrides are mostly done in parent pom -->
</properties>
<!-- Following dependencies are needed for compiling Java code in src/main/java;
<scope>provided</scope> is inherited for each of the following;
for more info, please refer to alfresco-platform-distribution POM -->
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-repository</artifactId>
</dependency>
<!-- Uncomment if you are using RM (Records Management) module, brings in RM related classes -->
<!--
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-rm</artifactId>
<version>${alfresco.rm.version}</version>
<classifier>classes</classifier>
</dependency>
-->
</dependencies>
<profiles>
<!--
Brings in the extra Enterprise specific repository classes,
if the 'enterprise' profile has been activated, needs to be activated manually. -->
<profile>
<id>enterprise</id>
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-enterprise-repository</artifactId>
<version>${alfresco.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
</profile>
<!-- If we are running in embedded Tomcat skip unit tests -->
<profile>
<id>run</id>
<properties>
<skipTests>true</skipTests>
</properties>
</profile>
</profiles>
</project>

View File

@@ -0,0 +1,7 @@
<webscript>
<shortname>Hello World Sample Webscript</shortname>
<description>Hands back a greeting</description>
<url>/sample/helloworld</url>
<authentication>user</authentication>
<format default="html"></format>
</webscript>

View File

@@ -0,0 +1,5 @@
## This Alfresco Repo Configuration file should be used for custom properties that are introduced by this module.
## Define default values for all properties here.
## System Administrators can override these values in environment specific configurations in
## alfresco/tomcat/shared/classes/alfresco-global.properties.
##

View File

@@ -0,0 +1,27 @@
#set( $symbol_pound = '#' )
#set( $symbol_dollar = '$' )
#set( $symbol_escape = '\' )
<?xml version='1.0' encoding='UTF-8'?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<!-- The bootstrap-context.xml file is used for patch definitions, importers,
workflow, and loading custom content models. -->
<!-- Registration of new models -->
<bean id="${package}.dictionaryBootstrap" parent="dictionaryModelBootstrap" depends-on="dictionaryBootstrap">
<property name="models">
<list>
<value>alfresco/module/${project.artifactId}/model/content-model.xml</value>
<value>alfresco/module/${project.artifactId}/model/workflow-model.xml</value>
</list>
</property>
</bean>
</beans>

View File

@@ -0,0 +1,42 @@
#set( $symbol_pound = '#' )
#set( $symbol_dollar = '$' )
#set( $symbol_escape = '\' )
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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.
-->
<beans>
<!-- A simple class that is initialized by Spring -->
<bean id="${package}.exampleBean" class="${package}.demoamp.Demo" init-method="init" />
<!-- A simple module component that will be executed once.
Note. this module component will only be executed once, and then there will be an entry for it in the Repo.
So doing for example $ mvn clean install -Prun twice will only execute this component the first time.
You need to remove /alf_data_dev for it to be executed again. -->
<bean id="${package}.exampleComponent" class="${package}.demoamp.DemoComponent" parent="module.baseComponent" >
<property name="moduleId" value="${artifactId}" /> <!-- See module.properties -->
<property name="name" value="exampleComponent" />
<property name="description" value="A demonstration component" />
<property name="sinceVersion" value="1.0" />
<property name="appliesFromVersion" value="1.0" />
<property name="nodeService" ref="NodeService" />
<property name="nodeLocatorService" ref="nodeLocatorService" />
</bean>
</beans>

View File

@@ -1,25 +1,27 @@
<?xml version='1.0' encoding='UTF-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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.
-->
#set( $symbol_pound = '#' )
#set( $symbol_dollar = '$' )
#set( $symbol_escape = '\' )
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<beans>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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
<import resource="classpath:alfresco/module/${artifactId}/context/service-context.xml" />
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.
-->
<beans>
<bean id="webscript.helloworld.get"
class="${package}.demoamp.HelloWorldWebScript"
parent="webscript">
</bean>
</beans>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<model name="myc:contentModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
<!-- Optional meta-data about the model -->
<description>Document Model for Repo Extension X</description>
<author>My Name</author>
<version>1.0</version>
<imports>
<!-- Import Alfresco Dictionary Definitions -->
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
<!-- Import Alfresco Content Domain Model Definitions -->
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
<!-- Import Alfresco System Model Definitions -->
<import uri="http://www.alfresco.org/model/system/1.0" prefix="sys"/>
</imports>
<!-- Custom namespace for your domain -->
<namespaces>
<namespace uri="http://www.mycompany.com/model/content/1.0" prefix="myc"/>
</namespaces>
<!-- ===============================================================================================================
Constraints, Types, and Aspects go here...
-->
</model>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<model name="myw:workflowModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
<!-- Optional meta-data about the model -->
<description>Workflow Model for Repo Extension X</description>
<author>My Name</author>
<version>1.0</version>
<imports>
<!-- Import Alfresco Dictionary Definitions -->
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d"/>
<!-- Import Alfresco Content Domain Model Definitions -->
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
<!-- Import Alfresco Workflow Model Definitions -->
<import uri="http://www.alfresco.org/model/bpm/1.0" prefix="bpm"/>
</imports>
<!-- Custom namespace for your domain -->
<namespaces>
<namespace uri="http://www.mycompany.com/model/workflow/1.0" prefix="myw"/>
</namespaces>
<!-- ===============================================================================================================
Constraints, Types, and Aspects go here...
-->
</model>

View File

@@ -1,5 +1,4 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<?xml version='1.0' encoding='UTF-8'?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -16,19 +15,14 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
<beans>
<!-- A simple class that is initialized by Spring -->
<bean id="changeMe.exampleBean" class="org.alfresco.demoamp.Demo" init-method="init" />
<!-- A simple module component that will be executed once -->
<bean id="changeMe.exampleComponent" class="org.alfresco.demoamp.DemoComponent" parent="module.baseComponent" >
<property name="moduleId" value="${project.artifactId}" /> <!-- See module.properties -->
<property name="name" value="exampleComponent" />
<property name="description" value="A demonstration component" />
<property name="sinceVersion" value="2.0" />
<property name="appliesFromVersion" value="2.0" />
</bean>
</beans>
-->
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<beans>
<!-- This is filtered by Maven at build time, so that module name is single sourced. -->
<import resource="classpath:alfresco/module/${project.artifactId}/context/service-context.xml" />
<import resource="classpath:alfresco/module/${project.artifactId}/context/bootstrap-context.xml" />
<import resource="classpath:alfresco/module/${project.artifactId}/context/webscript-context.xml" />
</beans>

View File

@@ -13,4 +13,5 @@
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.
-->
-->
Test jsp. Change me!

View File

@@ -1,8 +1,11 @@
package org.alfresco.demoamp;
#set( $symbol_pound = '#' )
#set( $symbol_dollar = '$' )
#set( $symbol_escape = '\' )
package ${package}.demoamp;
/**
* This class does nothing except dump some output to <i>system.out</i>.
* This is a sample taken from Alfresco SDK
* This is a sample taken from Maven Alfresco SDK
*
* @author Derek Hulley
*/

View File

@@ -1,80 +1,78 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
/*
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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.alfresco.demoamp;
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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 ${package}.demoamp;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.module.AbstractModuleComponent;
import org.alfresco.repo.nodelocator.NodeLocatorService;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.NodeService;
import org.alfresco.service.cmr.repository.StoreRef;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* A basic component that will be started for this module.
* Uses the NodeLocatorService to easily find nodes and the
* Uses the NodeLocatorService to easily find nodes and the
* NodeService to display them
*
*
* @author Gabriele Columbro
* @author Maurizio Pillitu
*/
public class DemoComponent extends AbstractModuleComponent
{
public class DemoComponent extends AbstractModuleComponent {
Log log = LogFactory.getLog(DemoComponent.class);
private NodeService nodeService;
private NodeLocatorService nodeLocatorService;
public void setNodeService(NodeService nodeService) {
this.nodeService = nodeService;
}
public void setNodeLocatorService(NodeLocatorService nodeLocatorService) {
this.nodeLocatorService = nodeLocatorService;
}
/**
* Bogus component execution
* Bogus component execution
*/
@Override
protected void executeInternal() throws Throwable
{
protected void executeInternal() throws Throwable {
System.out.println("DemoComponent has been executed");
log.debug("Test debug logging. Congratulation your AMP is working");
log.info("This is only for information purposed. Better remove me from the log in Production");
}
/**
* This is a demo service interaction with Alfresco Foundation API.
* This sample method returns the number of child nodes of a certain type
* This sample method returns the number of child nodes of a certain type
* under a certain node.
*
*
* @return
*/
public int childNodesCount(NodeRef nodeRef)
{
public int childNodesCount(NodeRef nodeRef) {
return nodeService.countChildAssocs(nodeRef, true);
}
/**
* Returns the NodeRef of "Company Home"
*
*
* @return
*/
public NodeRef getCompanyHome()

View File

@@ -0,0 +1,43 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
/*
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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 ${package}.demoamp;
import org.springframework.extensions.webscripts.Cache;
import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptRequest;
import java.util.HashMap;
import java.util.Map;
/**
* A demonstration Java controller for the Hello World Web Script.
*
* @author martin.bergljung@alfresco.com
* @since 2.1.0
*/
public class HelloWorldWebScript extends DeclarativeWebScript {
protected Map<String, Object> executeImpl(
WebScriptRequest req, Status status, Cache cache) {
Map<String, Object> model = new HashMap<String, Object>();
model.put("fromJava", "HelloFromJava");
return model;
}
}

View File

@@ -0,0 +1,86 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
package ${package}.demoamp.test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import ${package}.demoamp.DemoComponent;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.security.authentication.AuthenticationUtil;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.NodeService;
import org.apache.log4j.Logger;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.tradeshift.test.remote.Remote;
import com.tradeshift.test.remote.RemoteTestRunner;
/**
* A simple class demonstrating how to run out-of-container tests
* loading Alfresco application context.
*
* This class uses the RemoteTestRunner to try and connect to
* localhost:4578 and send the test name and method to be executed on
* a running Alfresco. One or more hostnames can be configured in the @Remote
* annotation.
*
* If there is no available remote server to run the test, it falls
* back on local running of JUnits.
*
* For proper functioning the test class file must match exactly
* the one deployed in the webapp (either via JRebel or static deployment)
* otherwise "incompatible magic value XXXXX" class error loading issues will arise.
*
* @author Gabriele Columbro
* @author Maurizio Pillitu
*
*/
@RunWith(RemoteTestRunner.class)
@Remote(runnerClass=SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:alfresco/application-context.xml")
public class DemoComponentTest {
private static final String ADMIN_USER_NAME = "admin";
static Logger log = Logger.getLogger(DemoComponentTest.class);
@Autowired
protected DemoComponent demoComponent;
@Autowired
@Qualifier("NodeService")
protected NodeService nodeService;
@Test
public void testWiring() {
assertNotNull(demoComponent);
}
@Test
public void testGetCompanyHome() {
AuthenticationUtil.setFullyAuthenticatedUser(ADMIN_USER_NAME);
NodeRef companyHome = demoComponent.getCompanyHome();
assertNotNull(companyHome);
String companyHomeName = (String) nodeService.getProperty(companyHome, ContentModel.PROP_NAME);
assertNotNull(companyHomeName);
assertEquals("Company Home", companyHomeName);
}
@Test
public void testChildNodesCount() {
AuthenticationUtil.setFullyAuthenticatedUser(ADMIN_USER_NAME);
NodeRef companyHome = demoComponent.getCompanyHome();
int childNodeCount = demoComponent.childNodesCount(companyHome);
assertNotNull(childNodeCount);
// There are 7 folders by default under Company Home
assertEquals(7, childNodeCount);
}
}

View File

@@ -13,23 +13,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# RUN TIME PROPERTIES
# -------------------
# Sample custom content and index data location
# This will create alf_data Relative to appserver run folder
# In this default file we take the property from the POM (for compatbility with local jetty and jboss deployments) but it can also be edited here.
########################################################################################################################
# Alfresco configuration for running locally
#
# Configuration when running Tomcat embedded from Maven.
# This will create the alf_data_dev directory relative to Tomcat run folder.
# Property values from the POM but it can also be edited here.
########################################################################################################################
dir.root=${alfresco.data.location}
# Allowed values are: NONE, AUTO, FULL
index.recovery.mode=NONE
# This is default. Allowed values are: solr, lucene, noindex
index.subsystem.name=solr
#dir.keystore=.
#keystore.password=storepassword
#metadata.password=metapassword
# Use Solr4 as that is used by default with Alfresco 5
index.subsystem.name=solr4
solr.host=localhost
solr.port=8080
solr.secureComms=none
# Fail or not when there are node integrity checker errors
integrity.failOnError=true
@@ -41,17 +38,9 @@ db.username=${alfresco.db.username}
db.password=${alfresco.db.password}
db.pool.initial=10
db.pool.max=100
hibernate.dialect=org.hibernate.dialect.H2Dialect
# File servers related properties
# For local builds we disable CIFS and FTP. Edit the following property to reenable them
smb.server.enabled=false
smb.server.name=CFS_SHARE_LOCAL
smb.server.domain=mycompany.com
smb.server.bindto=127.0.0.1
smb.tcpip.port=1445
netbios.session.port=1139
netbios.name.port=1137
netbios.datagram.port=1138
ftp.server.enables=false
ftp.port=1121
ftp.authenticator=alfresco
# For local runs we disable CIFS and FTP
cifs.enabled=false
ftp.enabled=false

View File

@@ -0,0 +1,53 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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.
-->
<beans>
<!-- This disables javascript compilation so that webscripts can be hot reloaded -->
<bean id="javaScriptProcessor" class="org.alfresco.repo.jscript.RhinoScriptProcessor" init-method="register">
<property name="name">
<value>javascript</value>
</property>
<property name="extension">
<value>js</value>
</property>
<!-- compile javascript and cache compiled scripts -->
<property name="compile">
<value>false</value>
</property>
<!-- allow sharing of sealed scopes for performance -->
<!-- disable to give each script it's own new scope which can be extended -->
<property name="shareSealedScopes">
<value>true</value>
</property>
<property name="scriptService">
<ref bean="scriptService"/>
</property>
<!-- Creates ScriptNodes which require the ServiceRegistry -->
<property name="serviceRegistry">
<ref bean="ServiceRegistry"/>
</property>
<property name="storeUrl">
<value>${spaces.store}</value>
</property>
<property name="storePath">
<value>${spaces.company_home.childname}</value>
</property>
</bean>
</beans>

View File

@@ -0,0 +1,184 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements. See the NOTICE file distributed with this work for additional
information regarding copyright ownership. The ASF licenses this file to
You 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. -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco Repository WAR Aggregator</name>
<packaging>war</packaging>
<description>Alfresco Repository aggregator, installs your repository AMPs in the Alfresco WAR for aggregation and easy deployment purposes</description>
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<properties>
<!-- During development we set log root level to Debug,
this will be applicable to the log configuration in
repo/src/main/resources/alfresco/extension/dev-log4j.properties,
such as DemoComponent logging. -->
<app.log.root.level>DEBUG</app.log.root.level>
</properties>
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>${alfresco.repo.artifactId}</artifactId>
<version>${alfresco.version}</version>
<type>war</type>
</dependency>
<!-- Demonstrating the dependency / installation of the repo AMP developed in the 'repo-amp' module -->
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>repo-amp</artifactId>
<version>${project.version}</version>
<type>amp</type>
</dependency>
<!-- Uncomment if you are using SPP (SharePoint Protocol Support) for Online Edit etc -->
<!--
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-spp</artifactId>
<version>${alfresco.version}</version>
<type>amp</type>
</dependency>
-->
<!-- Uncomment if you are using the RM (Records Management) module. -->
<!--
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-rm</artifactId>
<version>${alfresco.rm.version}</version>
<type>amp</type>
</dependency>
-->
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<!-- Here is can control the order of overlay of your (WAR, AMP, etc.) dependencies
| NOTE: At least one WAR dependency must be uncompressed first
| NOTE: In order to have a dependency effectively added to the WAR you need to
| explicitly mention it in the overlay section.
| NOTE: First-win resource strategy is used by the WAR plugin
-->
<overlays>
<!-- Current project customizations. This is normally empty, since customizations come from the AMPs -->
<overlay/>
<!-- The Alfresco WAR -->
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>${alfresco.repo.artifactId}</artifactId>
<type>war</type>
<!-- To allow inclusion of META-INF -->
<excludes/>
</overlay>
<!-- Add / sort your AMPs here -->
<overlay>
<groupId>${project.groupId}</groupId>
<artifactId>repo-amp</artifactId>
<type>amp</type>
</overlay>
<!-- Uncomment if you are using SPP -->
<!--
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-spp</artifactId>
<type>amp</type>
</overlay>
-->
<!-- Uncomment if you are using RM -->
<!--
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-rm</artifactId>
<type>amp</type>
</overlay>
-->
</overlays>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<!-- Overrides the run profile to disable securecomms and add rapid development configuration -->
<profile>
<id>run</id>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<executions>
<execution>
<id>prepare-exploded-war</id>
<goals>
<goal>exploded</goal>
</goals>
<phase>prepare-package</phase>
</execution>
<execution>
<id>default-war</id>
<configuration>
<webXml>${project.build.directory}/${project.build.finalName}-nossl/WEB-INF/web.xml</webXml>
</configuration>
</execution>
</executions>
</plugin>
<!-- Replaces web.xml where applicable, commenting out the security-constraints -->
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<executions>
<execution>
<id>disable-securecomms</id>
<phase>prepare-package</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<ignoreErrors>true</ignoreErrors>
<file>${project.build.directory}/${project.build.finalName}/WEB-INF/web.xml</file>
<outputDir>${project.build.directory}/${project.build.finalName}-nossl/WEB-INF/</outputDir>
<preserveDir>false</preserveDir>
<replacements>
<replacement>
<token><![CDATA[<!-- Toggle securecomms placeholder start -->]]></token>
<value><![CDATA[<!--]]></value>
</replacement>
<replacement>
<token><![CDATA[<!-- Toggle securecomms placeholder end -->]]></token>
<value><![CDATA[-->]]></value>
</replacement>
</replacements>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-rad</artifactId>
<version>${maven.alfresco.version}</version>
</dependency>
</dependencies>
</profile>
</profiles>
</project>

View File

@@ -0,0 +1,78 @@
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You 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.
# RUN TIME PROPERTIES
# -------------------
########################################################################################################################
# Alfresco configuration for running locally
#
# Configuration when running Tomcat embedded from Maven.
# This will create the alf_data_dev directory relative to Tomcat run folder.
# Property values from the POM but it can also be edited here.
########################################################################################################################
dir.root=${alfresco.data.location}
# Alfresco Repo Webapp (alfresco.war) context, ports etc
alfresco.context=alfresco
alfresco.host=localhost
alfresco.port=8080
alfresco.protocol=http
# Alfresco Share Webapp (share.war) context, ports etc
share.context=share
share.host=localhost
share.port=8080
share.protocol=http
# Use Solr4 as that is used by default with Alfresco 5
index.subsystem.name=solr4
solr.host=localhost
solr.port=8080
solr.secureComms=none
# Setting Solr backup for the future. Tweak this if needed (ideally in other env properties files)
solr.backup.alfresco.cronExpression=0 30 2 * * ? 2050
solr.backup.archive.cronExpression=0 30 3 * * ? 2050
solr.backup.alfresco.remoteBackupLocation=${dir.root}/solr4Backup/alfresco
solr.backup.archive.remoteBackupLocation=${dir.root}/solr4Backup/archive
# We are in the local DEV properties file, no need for Solr backup
solr.backup.alfresco.numberToKeep=0
solr.backup.archive.numberToKeep=0
# These jobs seem to require Lucene (Unsupported Operation with Solr) so we disable them / set to future date
# See https://forums.alfresco.com/en/viewtopic.php?f=52&t=41597
# If you want to enable them (and so full WQS functionality), please also set index.subsystem.name=lucene
wcmqs.dynamicCollectionProcessor.schedule=0 30 2 * * ? 2060
wcmqs.feedbackProcessor.schedule=0 40 2 * * ? 2060
wcmqs.publishQueueProcessor.schedule=0 50 2 * * ? 2060
# Fail or not when there are node integrity checker errors
integrity.failOnError=true
# Database connection properties
db.driver=${alfresco.db.datasource.class}
db.url=${alfresco.db.url}
db.username=${alfresco.db.username}
db.password=${alfresco.db.password}
db.pool.initial=10
db.pool.max=100
hibernate.dialect=org.hibernate.dialect.H2Dialect
# File servers related properties
# For local runs we disable CIFS and FTP
cifs.enabled=false
ftp.enabled=false

View File

@@ -0,0 +1,6 @@
#set( $symbol_pound = '#' )
#set( $symbol_dollar = '$' )
#set( $symbol_escape = '\' )
# You can add here custom log4j classes. This will be merged with the main log4j.properties
# See http://wiki.alfresco.com/wiki/Developing_an_Alfresco_Module#Best_Log4j_Configuration_Practices
log4j.logger.${package}.demoamp.DemoComponent=${app.log.root.level}

View File

@@ -0,0 +1,15 @@
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Dev environment startup script for Alfresco Community ::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off
set springloadedfile=%HOME%\.m2\repository\org\springframework\springloaded\@@springloaded.version@@\springloaded-@@springloaded.version@@.jar
if not exist %springloadedfile% (
mvn validate -Psetup
)
set MAVEN_OPTS=-javaagent:"%springloadedfile%" -noverify -Xms256m -Xmx2G
mvn clean install -Prun -nsu
:: mvn install -Prun

View File

@@ -0,0 +1,9 @@
#!/bin/bash
# Downloads the spring-loaded lib if not existing and runs the full all-in-one
# (Alfresco + Share + Solr) using the runner project
springloadedfile=~/.m2/repository/org/springframework/springloaded/@@springloaded.version@@/springloaded-@@springloaded.version@@.jar
if [ ! -f $springloadedfile ]; then
mvn validate -Psetup
fi
MAVEN_OPTS="-javaagent:$springloadedfile -noverify -Xms256m -Xmx2G" mvn clean install -Prun

View File

@@ -1,34 +0,0 @@
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure id="Server" class="org.mortbay.jetty.Server">
<New id="myDataSource" class="org.mortbay.jetty.plus.naming.Resource">
<Arg>jdbc/dataSource</Arg>
<Arg>
<New class="${alfresco.db.datasource.class}">
<Set name="URL">${alfresco.db.url}</Set>
<Set name="User">${alfresco.db.username}</Set>
<Set name="Password">${alfresco.db.password}</Set>
</New>
</Arg>
</New>
<Call name="addConnector">
<Arg>
<New class="org.mortbay.jetty.nio.SelectChannelConnector">
<Set name="host">
<Property name="jetty.host" default="${runner.host}" />
</Set>
<Set name="port">
<Property name="jetty.port" default="${runner.port}" />
</Set>
<Set name="maxIdleTime">300000</Set>
<Set name="Acceptors">2</Set>
<Set name="statsOn">false</Set>
<Set name="confidentialPort">8443</Set>
<Set name="lowResourcesConnections">20000</Set>
<Set name="lowResourcesMaxIdleTime">5000</Set>
</New>
</Arg>
</Call>
</Configure>

View File

@@ -1,10 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Alfresco Runner</display-name>
<description>Alfresco Runner</description>
</web-app>

View File

@@ -2,9 +2,9 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco and Share Runner</name>
<name>Alfresco, Share and Solr4 Tomcat Runner</name>
<packaging>pom</packaging>
<description>Alfresco and Share Runner</description>
<description>Alfresco, Share and Solr4 Tomcat Runner</description>
<parent>
<groupId>${groupId}</groupId>
@@ -15,62 +15,407 @@
<profiles>
<profile>
<id>run</id>
<activation>
<property>
<name>run</name>
</property>
</activation>
<!-- TODO: figure out a way to define these properties in a parent POM, they are now also duplicated
in the solr-config/pom.xml -->
<properties>
<alfresco.solr.dir>${project.basedir}/../solr/solr_home</alfresco.solr.dir>
<runner.host>127.0.0.1</runner.host>
<runner.port>8080</runner.port>
<alfresco.solr.dir>${alfresco.data.location}/solr4</alfresco.solr.dir>
<alfresco.solr.home.dir>${alfresco.solr.dir}/config</alfresco.solr.home.dir>
<alfresco.solr.data.dir>${alfresco.solr.dir}/data</alfresco.solr.data.dir>
</properties>
<build>
<plugins>
<!-- Copy and filter webapp context files - output dir is runner/target/contexts -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>run</id>
<goals><goal>run</goal></goals>
<phase>integration-test</phase>
<id>copy-tomcat-resources</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/contexts</outputDirectory>
<resources>
<resource>
<directory>tomcat</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!-- Run Tomcat 7 embedded with Alfresco.war and Share.war contexts.
The solr4.war is fetched directly from the Maven repo, it is not built like the other WARs.
Plugin version is picked up from alfresco-sdk-parent.pom pluginManagement definition,
which also brings in the H2 database lib -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<executions>
<execution>
<id>run-wars</id>
<goals>
<goal>run</goal>
</goals>
<phase>pre-integration-test</phase>
</execution>
</executions>
<configuration>
<!-- Following 3 properties set an empty ROOT context,
which is mandatory to run jetty:run plugin -->
<contextPath>/</contextPath>
<webAppSourceDirectory>.</webAppSourceDirectory>
<webXml>jetty/root-web.xml</webXml>
<contextHandlers>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${project.basedir}/../alfresco/target/alfresco.war</war>
<contextPath>/alfresco</contextPath>
</contextHandler>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${alfresco.solr.dir}/apache-solr-1.4.1-overlay.war</war>
<contextPath>/solr</contextPath>
</contextHandler>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${project.basedir}/../share/target/share.war</war>
<contextPath>/share</contextPath>
</contextHandler>
<contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">
<war>${project.basedir}/../wcmqs/target/wcmqs.war</war>
<contextPath>/wcmqs</contextPath>
</contextHandler>
</contextHandlers>
<ignorePackaging>true</ignorePackaging>
<!-- Make sure Catalina classes are picked up when we got virtual webapp contexts with classpaths -->
<useSeparateTomcatClassLoader>true</useSeparateTomcatClassLoader>
<path>/</path>
<systemProperties>
<systemProperty>
<name>solr.solr.home</name>
<value>${alfresco.solr.dir}</value>
</systemProperty>
<solr.solr.home>${alfresco.solr.home.dir}</solr.solr.home>
</systemProperties>
<!-- Should this class loader delegate to the parent class loader before searching its
own repositories (i.e. the usual Java2 delegation model) -->
<!-- Prevent parent classloader delegation, each webapp loads.
If set to true then you will get a truckload of Solr logging as
the alf_data_dev/solr4/config/log4j-solr.properties file is not picked up.
This also fixes issues with the Google Guava Library, which this tomcat plugin uses
version 10.0.1 of but Solr uses 14.0.1 -->
<delegate>false</delegate>
<webapps>
<webapp>
<groupId>${project.groupId}</groupId>
<artifactId>repo</artifactId>
<version>${project.version}</version>
<type>war</type>
<!-- Make sure webapp is loaded with context and everything,
if set to 'false' then you will get 404 when trying to access the webapp from browser -->
<asWebapp>true</asWebapp>
<contextPath>/alfresco</contextPath>
<contextFile>${project.build.directory}/contexts/context-repo.xml</contextFile>
</webapp>
<webapp>
<groupId>${project.groupId}</groupId>
<artifactId>share</artifactId>
<version>${project.version}</version>
<type>war</type>
<asWebapp>true</asWebapp>
<contextPath>/share</contextPath>
<contextFile>${project.build.directory}/contexts/context-share.xml</contextFile>
</webapp>
<webapp>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-solr4</artifactId>
<version>${alfresco.version}</version>
<type>war</type>
<asWebapp>true</asWebapp>
<contextPath>/solr4</contextPath>
<contextFile>${project.build.directory}/contexts/context-solr.xml</contextFile>
</webapp>
</webapps>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<!-- Runs Share User Interface regression tests using Alfresco Share PO (Page Object) vanilla Selenium / Webdrone (WebDriver wrapper).
NOTE: Assumes an already running Alfresco + Share at the default location ${share.client.url}
(e.g. by invoking:
$ mvn clean install -Prun,regression-testing
to run a specific test do:
$ mvn clean install -Prun,regression-testing -Dit.test=LoginPageTest
-->
<profile>
<id>regression-testing</id>
<properties>
<!-- Re-configure Tomcat 7 Plugin (see run profile) to fork so we can run tests in parallel -->
<!-- Note. the fork option does not fork a new JVM. Rather it is run in a thread created by the
Maven Launcher class (org.codehaus.plexus.classworlds.launcher.Launcher) that is invoked by the mvn command. -->
<maven.tomcat.fork>true</maven.tomcat.fork>
<!-- Make sure we are actually testing something -->
<skipTests>false</skipTests>
</properties>
<build>
<plugins>
<!-- Need to unpack the tests becuase of Jiras: -->
<!-- https://jira.codehaus.org/browse/SUREFIRE-997 -->
<!-- https://jira.codehaus.org/browse/SUREFIRE-1024 -->
<!-- Workaround for classloading issue in share-po (need to unpack it)-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>prepare-regression-test-resources</id>
<phase>pre-integration-test</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifact>${alfresco.groupId}:share-po:${alfresco.version}:jar:tests</artifact>
<outputDirectory>${project.build.directory}/testng-resources</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<suiteXmlFiles>
<!-- Smaller test suite for Share, essential stuff like Login, Navigation, DocLib, and Search -->
<!-- Currently using our own config to be able to comment out one test class
<suiteXmlFile>${project.build.directory}/testng-resources/testng-alfresco-share.xml</suiteXmlFile> -->
<suiteXmlFile>${project.basedir}/test-ng/testng-alfresco-share.xml</suiteXmlFile>
</suiteXmlFiles>
<testClassesDirectory>${project.build.directory}/testng-resources</testClassesDirectory>
<systemPropertyVariables>
<!-- Where is the Alfresco Share Webapp that we are testing -->
<share.target>${share.client.url}</share.target>
</systemPropertyVariables>
<!-- The out-of-the-box Alfresco Share PO test classes does not follow the *IT.java
naming convention, they use *Test.java, so need to add that -->
<includes>
<include>**/*Test.java</include>
</includes>
</configuration>
<executions>
<execution>
<id>regression-tests</id>
<phase>integration-test</phase>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
<execution>
<id>verify-tests</id>
<phase>verify</phase>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<!-- Bring in the Share Page Objects (PO) used in the regression tests -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share-po</artifactId>
<version>${alfresco.version}</version>
<scope>test</scope>
<!-- Exclude version 2.39.0 of selenium that does not work with latest FF browsers, we include
version 2.45 later on here in this profile -->
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Bring in the Share Page Object (PO) regression tests that comes with Alfresco.
These tests cover the Alfresco Share Web Application -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share-po</artifactId>
<version>${alfresco.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
<!-- Exclude version 2.39.0 of selenium that does not work with latest FF browsers, we include
version 2.45 later on here in this profile -->
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Make sure we are running with newer selenium that works with newest FF (newer than 2.39.0) -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.45.0-alfresco</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>2.45.0-alfresco</version>
<exclusions>
<exclusion>
<groupId>org.mortbay.jetty</groupId>
<artifactId>servlet-api-2.5</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Test NG is defined with test scope in share-po, so need it here too -->
<!-- Alfresco code creates a wrapper around Test NG -->
<dependency>
<groupId>org.alfresco.test</groupId>
<artifactId>alfresco-testng</artifactId>
<version>1.1</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</profile>
<!-- Runs functional domain specific tests using Alfresco Share PO (Page Object) vanilla Selenium / Webdrone (WebDriver wrapper).
NOTE: Assumes an already running Alfresco + Share at the default location ${share.client.url}
(e.g. by invoking:
$ mvn clean install -Prun,functional-testing
to run a specific test do:
$ mvn clean install -Prun,functional-testing -Dit.test=DemoPageTestIT
-->
<profile>
<id>functional-testing</id>
<properties>
<!-- Re-configure Tomcat 7 Plugin (see run profile) to fork so we can run tests in parallel -->
<!-- Note. the fork option does not fork a new JVM. Rather it is run in a thread created by the
Maven Launcher class (org.codehaus.plexus.classworlds.launcher.Launcher) that is invoked by the mvn command. -->
<maven.tomcat.fork>true</maven.tomcat.fork>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>${project.parent.basedir}/share-amp/target/test-classes/testng.xml</suiteXmlFile>
</suiteXmlFiles>
<testClassesDirectory>${project.parent.basedir}/share-amp/target/test-classes</testClassesDirectory>
<systemPropertyVariables>
<!-- Where is the Alfresco Share Webapp that we are testing -->
<share.target>${share.client.url}</share.target>
</systemPropertyVariables>
</configuration>
<executions>
<execution>
<id>functional-tests</id>
<phase>integration-test</phase>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
<execution>
<id>verify-tests</id>
<phase>verify</phase>
<goals>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<!-- Bring in the Share Page Objects (PO) used in our functional tests.
Without it TestNG cannot load our test class when it uses page objects such as LoginPage -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share-po</artifactId>
<version>${alfresco.version}</version>
<scope>test</scope>
<!-- Exclude version 2.39.0 of selenium that does not work with latest FF browsers, we include
version 2.45 later on here in this profile -->
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Bring in the Share Page Object (PO) Tests that comes with Alfresco. It has
the org.alfresco.po.share.AbstractTest class that our custom tests extend.
Without it TestNG cannot load our test class -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share-po</artifactId>
<version>${alfresco.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
<!-- Exclude version 2.39.0 of selenium that does not work with latest FF browsers, we include
version 2.45 later on here in this profile -->
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Make sure we are running with newer selenium that works with newest FF (newer than 2.39.0) -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.45.0-alfresco</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>2.45.0-alfresco</version>
<exclusions>
<exclusion>
<groupId>org.mortbay.jetty</groupId>
<artifactId>servlet-api-2.5</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Test NG is defined with test scope in share-po, so need it here too -->
<!-- Alfresco code creates a wrapper around Test NG -->
<dependency>
<groupId>org.alfresco.test</groupId>
<artifactId>alfresco-testng</artifactId>
<version>1.1</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</profile>
</profiles>
</project>

View File

@@ -0,0 +1,24 @@
<html>
<head>
<title>Alfresco SDK @@alfresco.sdk.parent.version@@ - Running Alfresco ${alfresco.version}</title>
</head>
<body style="font: 13px/1.231 Open Sans,arial,helvetica,clean,sans-serif;">
<img alt="Maven Alfresco SDK" src="https://github.com/Alfresco/alfresco-sdk/raw/master/src/site/resources/img/alfresco-maven-logo.jpg">
<p>Congratulations, you are successfully running the <a href="https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-sdk-aggregator/latest/archetypes/alfresco-allinone-archetype/index.html">All in One project from the <a href="https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-sdk-aggregator/latest/index.html">Alfresco SDK @@alfresco.sdk.parent.version@@</a>, powered by <a href="http://maven.apache.org/">Apache Maven</a>!
<br/>
You can access the Alfresco components running embedded below:</p>
<ul>
<li><a href="/share">Alfresco Share</a></li>
<li><a href="/alfresco">Alfresco Repository</a></li>
<li><a href="/solr4">Alfresco Solr4</a></li>
</ul>
<p><b>Resources:</b></p>
<ul>
<li><a href="http://docs.alfresco.com">Alfresco Documentation</a></li>
<li><a href="https://support.alfresco.com">Alfresco Enterprise Support portal</a></li>
<li><a href="https://github.com/Alfresco/alfresco-sdk/fork">Fork and contribute to this SDK!</a></li>
<li><a href="https://issues.alfresco.com/jira/browse/ALF">Report an Alfresco issue</a></li>
<li><a href="https://github.com/Alfresco/alfresco-sdk/issues/new">Report an SDK issue</a></li>
</ul>
</body>
</html>

View File

@@ -0,0 +1,79 @@
<?xml version="1.0"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite thread-count="1" parallel="tests" preserve-order="true" verbose="6" name="Alfresco Share UI Basic Regression Test">
<groups>
<run>
<include name="unit"/>
<include name="alfresco-one"/>
<exclude name=".*Bug42"/>
<exclude name=".*Bug"/>
<exclude name="chromeOnly"/>
<exclude name="Hybrid"/>
<exclude name="download"/>
<exclude name="communityIssue"/>
</run>
</groups>
<test name="LoginPageTest">
<classes>
<class name="org.alfresco.po.share.LoginPageTest" />
</classes>
</test>
<test name="NavigationBarTest">
<classes>
<class name="org.alfresco.po.share.NavigationBarTest" />
</classes>
</test>
<test name="LiveSearchDropdownTest">
<classes>
<class name="org.alfresco.po.share.search.LiveSearchDropdownTest" />
</classes>
</test>
<test name="FacetedSearchResultsPageTest">
<classes>
<class name="org.alfresco.po.share.search.FacetedSearchResultsPageTest" />
</classes>
</test>
<test name="DocumentDetailsPageTest">
<classes>
<class name="org.alfresco.po.share.site.document.DocumentDetailsPageTest"/>
</classes>
</test>
<!-- TODO: fix this, currently does not work
<test name="DocumentLibraryPageTest">
<classes>
<class name="org.alfresco.po.share.site.document.DocumentLibraryPageTest"/>
</classes>
</test>
-->
<test name="FileDirectoryInfoTest">
<classes>
<class name="org.alfresco.po.share.site.document.FileDirectoryInfoTest">
<methods>
<!-- these currently take longer than 60 seconds for page rendering... -->
<exclude name="test107TagsForFolder" />
<exclude name="test114TagsForFile" />
</methods>
</class>
</classes>
</test>
<test name="FolderDetailsPageTest">
<classes>
<class name="org.alfresco.po.share.site.document.FolderDetailsPageTest"/>
</classes>
</test>
<test name="ManagePermissionsTest">
<classes>
<class name="org.alfresco.po.share.site.document.ManagePermissionsTest"/>
</classes>
</test>
<test name="InviteMembersPageTest">
<classes>
<class name="org.alfresco.po.share.site.InviteMembersPageTest" />
</classes>
</test>
<test name="SiteFinderPageTest">
<classes>
<class name="org.alfresco.po.share.site.SiteFinderPageTest" />
</classes>
</test>
</suite>

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ===================================================================================================================
This context file is used only in a development IDE for rapid development,
it is never released with the Alfresco.war
IMPORTANT: If an AMP or JAR extension is added to the Alfresco WAR,
then you need to add the paths below for this new extension.
=================================================================================================================-->
<!-- Pick up static resource files from ../repo/target/repo.
The Alfresco.war 5.0 does not have a webapp (it used to have Alfresco Explorer but not anymore)
that we will access, so this docBase might not be needed -->
<Context docBase="${project.parent.basedir}/alfresco-war/target/${project.build.finalName}">
<!-- Pick up static resource files from AMPs and other directories (this should not include docBase) -->
<Resources className="org.apache.naming.resources.VirtualDirContext"
extraResourcePaths="/=${project.parent.basedir}/repo-amp/target/repo-amp/web" />
<!-- IMPORTANT! The extraResourcePaths string need to be on one continues line, so if we add another Repo AMP,
it would look something like this:
<Resources className="org.apache.naming.resources.VirtualDirContext"
extraResourcePaths="/=${project.parent.basedir}/repo-amp/target/repo-amp/web,/=${project.parent.basedir}/component-a-repo/target/component-a-repo/web" />
-->
<!-- Configure where the Alfresco (alfresco.war) web application can load classes, test classes, and config files -->
<!-- Setup the virtual class path like this:
1) target/classes
2) target/${project.build.finalName}/config
3) target/test-classes
This way mvn compile can be invoked and all changes will be picked up
-->
<Loader className="org.apache.catalina.loader.VirtualWebappLoader"
searchVirtualFirst="true"
virtualClasspath="${project.parent.basedir}/repo-amp/target/classes;
${project.parent.basedir}/repo-amp/target/repo-amp/config;
${project.parent.basedir}/repo-amp/target/test-classes" />
<!-- Load from all directories, not just when the META-INF directory is found in exploded JAR -->
<JarScanner scanAllDirectories="true" />
</Context>

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ===================================================================================================================
This context file is used only in a development IDE for rapid development,
it is never released with the Share.war
IMPORTANT: If an AMP or JAR extension is added to the Share WAR,
then you need to add the paths below for this new extension.
=================================================================================================================-->
<Context>
<!-- Pick up static resource files from any Share extensions, being it a JAR or an AMP
(this should not include docBase) -->
<Resources className="org.apache.naming.resources.VirtualDirContext"
extraResourcePaths="/=${project.parent.basedir}/share-amp/target/share-amp/web" />
<!-- IMPORTANT! The extraResourcePaths string need to be on one continues line, so if we add another Share AMP,
it would look something like this:
<Resources className="org.apache.naming.resources.VirtualDirContext"
extraResourcePaths="/=${project.parent.basedir}/share-amp/target/share-amp/web,/=${project.parent.basedir}/component-a-share/target/component-a-share/web" />
-->
<!-- Configure where the Share (share.war) web application can load classes, config, and test classes (in that order) -->
<!-- Setup the virtual class path like this:
1) share-amp/target/classes
2) share-amp/target/${project.build.finalName}/config
3) share-amp/target/test-classes
4) Add other AMP paths here....
5) share/target/test-classes (loads the share-config-custom.xml used during test runs)
This way mvn compile can be invoked and all changes will be picked up
-->
<Loader className="org.apache.catalina.loader.VirtualWebappLoader"
searchVirtualFirst="true"
virtualClasspath="${project.parent.basedir}/share-amp/target/classes;
${project.parent.basedir}/share-amp/target/share-amp/config;
${project.parent.basedir}/share-amp/target/test-classes;
${project.parent.basedir}/share/target/test-classes" />
<!-- Load from all directories, not just when the META-INF directory is found in exploded JAR -->
<JarScanner scanAllDirectories="true" />
</Context>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<Context>
<Environment name="solr/home" type="java.lang.String" value="${alfresco.solr.home.dir}/" override="true"/>
<Environment name="solr/model/dir" type="java.lang.String" value="${alfresco.solr.home.dir}/alfrescoModels/" override="true"/>
<Environment name="solr/content/dir" type="java.lang.String" value="${alfresco.solr.data.dir}/content/" override="true"/>
<!-- Pick up static resource files from any Solr extensions, being it a JAR or an AMP,
by default there are no extensions, just the standard Solr webapp files.
(this should not include docBase)-->
<Resources className="org.apache.naming.resources.VirtualDirContext"
extraResourcePaths="/=${project.parent.basedir}/runner/target/tomcat/webapps/alfresco-solr4" />
<!-- Configure where the Solr (solr4.war) web application can load classes, test classes, and config -->
<!-- Solr is not customized by default so just points to standard Solr classes. -->
<!-- Setup the virtual class path like this:
1) target/classes
3) target/test-classes
This way mvn compile can be invoked and all changes will be picked up-->
<Loader className="org.apache.catalina.loader.VirtualWebappLoader"
searchVirtualFirst="true"
virtualClasspath="${project.parent.basedir}/runner/target/tomcat/webapps/alfresco-solr4/WEB-INF/classes" />
<!-- Load from all directories, not just when the META-INF directory is found in exploded JAR -->
<JarScanner scanAllDirectories="true" />
</Context>

View File

@@ -0,0 +1,107 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco Share AMP Module</name>
<packaging>amp</packaging>
<description>This is a sample Alfresco Share AMP project, depended upon by the share WAR module</description>
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<!--
SDK properties have sensible defaults in the SDK parent,
but you can override the properties below to use another version.
For more available properties see the alfresco-sdk-parent POM.
-->
<properties>
<!-- Defines the target WAR artifactId to run this amp, only used with the -Pamp-to-war switch
Allowed values: alfresco | share. In this case it's configured to use OOTB share -->
<app.amp.client.war.artifactId>share</app.amp.client.war.artifactId>
<!-- Defines the log level used in log4j.properties -->
<app.log.root.level>WARN</app.log.root.level>
</properties>
<!-- Following dependencies are needed for compiling Java code in src/main/java;
<scope>provided</scope> is inherited for each of the following;
for more info, please refer to alfresco-platform-distribution POM -->
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share</artifactId>
<version>${alfresco.version}</version>
<classifier>classes</classifier>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.extensions.surf</groupId>
<artifactId>spring-surf-api</artifactId>
<scope>provided</scope>
</dependency>
<!--===============================================================
The following dependencies are needed to be able to compile the
custom functional tests that are based on Page Objects (PO)
===============================================================-->
<!-- Bring in the Share Page Objects (PO) used in our functional tests.
It contains page objects such as LoginPage -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share-po</artifactId>
<version>${alfresco.version}</version>
<scope>test</scope>
</dependency>
<!-- Bring in the Share Page Object (PO) Tests that comes with Alfresco. It has
the org.alfresco.po.share.AbstractTest class that our custom tests extend. -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share-po</artifactId>
<version>${alfresco.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
<!-- Exclude version 2.39.0 of selenium that does not work with latest FF browsers, we include
version 2.45 later on here -->
<exclusions>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
</exclusion>
<exclusion>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Bring in newer selenium version -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.45.0-alfresco</version>
<scope>test</scope>
</dependency>
<!-- Test NG is defined with test scope in share-po, so need it here too -->
<!-- Alfresco code creates a wrapper around Test NG -->
<dependency>
<groupId>org.alfresco.test</groupId>
<artifactId>alfresco-testng</artifactId>
<version>1.1</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,29 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
<?xml version='1.0' encoding='UTF-8'?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<!--
Define beans related to this Share extension here, such as
evaluators and resource bootstrapping.
Note. Any configuration related to the whole Share.war webapp
(i.e. not specific to this share extension) should be
placed in the alfresco-allinone/share/src/main/resources/alfresco/web-extension/custom-slingshot-application-context.xml file
-->
<!-- Add module specific messages and labels -->
<bean id="${package}.${artifactId}.resources"
class="org.springframework.extensions.surf.util.ResourceBundleBootstrapComponent">
<property name="resourceBundles">
<list>
<value>alfresco.web-extension.messages.${artifactId}</value>
</list>
</property>
</bean>
</beans>

View File

@@ -0,0 +1,9 @@
# This file should contain messages and labels specific to this share extension
# Put here things like:
# Content Model Aspect and Type Labels
# Form field labels
# Doc lib Action labels and messages
# Doc Lib Action Forms labels
#

View File

@@ -0,0 +1,23 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
<extension>
<modules>
<module>
<id>${artifactId} - Example Aikau Widgets</id>
<version>1.0</version>
<auto-deploy>true</auto-deploy>
<configurations>
<config evaluator="string-compare" condition="WebFramework" replace="false">
<web-framework>
<dojo-pages>
<packages>
<package name="example" location="js/example"/>
</packages>
</dojo-pages>
</web-framework>
</config>
</configurations>
</module>
</modules>
</extension>

View File

@@ -0,0 +1,6 @@
<webscript>
<shortname>Simple Page</shortname>
<description>Simple page definition</description>
<family>Share</family>
<url>/simple-page</url>
</webscript>

View File

@@ -0,0 +1,29 @@
model.jsonModel = {
widgets: [{
id: "SET_PAGE_TITLE",
name: "alfresco/header/SetTitle",
config: {
title: "This is a simple page"
}
},
{
id: "MY_HORIZONTAL_WIDGET_LAYOUT",
name: "alfresco/layout/HorizontalWidgets",
config: {
widgetWidth: 50,
widgets: [
{
id: "DEMO_SIMPLE_LOGO",
name: "alfresco/logo/Logo",
config: {
logoClasses: "alfresco-logo-only"
}
},
{
id: "DEMO_SIMPLE_MSG",
name: "example/widgets/TemplateWidget"
}
]
}
}]
};

View File

@@ -0,0 +1,6 @@
## If you are overriding out-of-the-box Alfresco web scripts, put these files here
## in the correct org.alfresco... package.
## If you are defining a new custom web script, add it under
## resources/alfresco/web-extension/site-webscripts/{your domain path}.
##

View File

@@ -0,0 +1,14 @@
# Custom AMP to WAR location mappings
#
# The following property can be used to include the standard set of mappings.
# The contents of this file will override any defaults. The default is
# 'true', i.e. the default mappings will be augmented or modified by values in
# this file.
#
include.default=true
#
# Custom mappings. If 'include.default' is false, then this is the complete set.
#
/web=/

View File

@@ -0,0 +1,48 @@
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You 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.
# SDK Sample module
# ==== Beginning of Alfresco required/optional properties ====== #
# NB: These properties are filtered at build time by Maven, single
# sourcing from POM properties
module.id=${project.artifactId}
#module.aliases=myModule-123, my-module
module.title=${project.name}
module.description=${project.description}
module.version=${noSnapshotVersion}
# The following optional properties can be used to prevent the module from being added
# to inappropriate versions of the WAR file.
# module.repo.version.min=2.0
# module.repo.version.max=2.1
# FIXME: This dependencies should come out of mvn dependencies on amp
# The following describe dependencies on other modules
# Depends on net.sf.myproject.module.SupportModuleA version ${version} or later
# module.depends.net.sf.myproject.module.SupportModuleA=${version}-*
# Depends on net.sf.myproject.module.SupportModuleA version ${version} to 2.0
# module.depends.net.sf.myproject.module.SupportModuleB=${version}-2.0
# Depends on net.sf.myproject.module.SupportModuleC - any version
# module.depends.net.sf.myproject.module.SupportModuleB=*
# ==== End of Alfresco required/optional properties ======= #
# ==== Beginning of module required properties/optional ====== #

View File

@@ -0,0 +1,20 @@
define(["dojo/_base/declare",
"dijit/_WidgetBase",
"alfresco/core/Core",
"dijit/_TemplatedMixin",
"dojo/text!./templates/TemplateWidget.html"
],
function(declare, _Widget, Core, _Templated, template) {
return declare([_Widget, Core, _Templated], {
templateString: template,
i18nRequirements: [ {i18nFile: "./i18n/TemplateWidget.properties"} ],
cssRequirements: [{cssFile:"./css/TemplateWidget.css"}],
buildRendering: function example_widgets_TemplateWidget__buildRendering() {
this.greeting = this.message('hello-label');
this.inherited(arguments);
}
});
});

View File

@@ -0,0 +1,5 @@
.my-template-widget {
border: 1px #000000 solid;
padding: 1em;
width: 100px;
}

View File

@@ -0,0 +1,14 @@
<!-- Share configuration related to this particular Share module extension, such as:
- Doclib action config
- Form config
- Aspect and Type config
Note. Any configuration related to the whole Share.war webapp
(i.e. not specific to this share extension) should be
placed in the environment specific config:
alfresco-allinone/share/src/main/resources/alfresco/web-extension/share-config-custom.xml file
-->
<alfresco-config>
</alfresco-config>

View File

@@ -0,0 +1,92 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
/*
* Copyright (C) 2005-2015 Alfresco Software Limited.
* This file is part of Alfresco
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
package ${package}.demoamp;
import ${package}.demoamp.po.DemoPage;
import org.alfresco.po.share.AbstractTest;
import org.alfresco.po.share.LoginPage;
import org.alfresco.po.share.PeopleFinderPage;
import org.testng.Assert;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
/**
* Functional test that demonstrates how to write and
* extend an alfresco share page object.
* This test shows the interaction with page objects
* brought from share-po project along with newly created ones
* that are present in the Demo amp.
*
* @author Michael Suzuki
* @since 2.0.1
*/
public class DemoPageTestIT extends AbstractTest {
DemoPage page;
@BeforeClass(groups = {"alfresco-one"})
public void prepare() throws Exception {
// Navigate to share
drone.navigateTo(shareUrl + "/page/hdp/ws/simple-page");
// Reuse Alfresco Share login page object from share-po lib.
LoginPage loginPage = new LoginPage(drone);
loginPage.loginAs(username, password);
}
@BeforeMethod
public void loadPage() {
// Goto demo page
drone.navigateTo(shareUrl + "/page/hdp/ws/simple-page");
page = new DemoPage(drone);
}
@Test
public void findLogo() {
Assert.assertTrue(page.isSimpleLogoDisplayed());
}
@Test
public void messageIsDisplayed() {
page.render();
String msg = page.getMessage();
Assert.assertNotNull(msg);
Assert.assertEquals("Hello from i18n!", msg);
}
/**
* Example of test reusing methods in abstract share page objects.
*/
@Test
public void titleDisplayed() {
// Invoke render when ready to use page object.
page.render();
Assert.assertNotNull(page);
Assert.assertTrue(page.getTitle().contains("This is a simple page"));
}
/**
* Test that show how we are able to reuse share page objects
* objects in particular the navigation object.
*/
@Test
public void navigate() {
Assert.assertNotNull(page.getNav());
PeopleFinderPage peoppleFinderPage = page.getNav().selectPeople().render();
Assert.assertNotNull(peoppleFinderPage);
}
}

View File

@@ -0,0 +1,88 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
/*
* Copyright (C) 2005-2015 Alfresco Software Limited.
* This file is part of Alfresco
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
package ${package}.demoamp.po;
import org.alfresco.po.share.SharePage;
import org.alfresco.webdrone.RenderTime;
import org.alfresco.webdrone.WebDrone;
import org.openqa.selenium.By;
import org.openqa.selenium.NoSuchElementException;
/**
* Demo of simple share page object that encapsulates the demo of simple page.
*
* @author Michael Suzuki
* @since 2.0.1
*/
public class DemoPage extends SharePage {
private By SIMPLE_DEMO_LOGO = By.id("DEMO_SIMPLE_LOGO");
private By SIMPLE_DEMO_MESSAGE = By.id("DEMO_SIMPLE_MSG");
public DemoPage(WebDrone drone) {
super(drone);
}
@SuppressWarnings("unchecked")
@Override
public DemoPage render() {
return render(new RenderTime(maxPageLoadingTime));
}
@SuppressWarnings("unchecked")
@Override
public DemoPage render(RenderTime timer) {
while (true) {
timer.start();
try {
if (isSimpleLogoDisplayed() && isMessageDisplayed()) {
break;
}
} catch (NoSuchElementException nse) {
} finally {
timer.end();
}
}
return this;
}
@SuppressWarnings("unchecked")
@Override
public DemoPage render(long time) {
return render(new RenderTime(time));
}
public boolean isSimpleLogoDisplayed() {
try {
return drone.find(SIMPLE_DEMO_LOGO).isDisplayed();
} catch (NoSuchElementException se) {
}
return false;
}
public boolean isMessageDisplayed() {
try {
return drone.find(SIMPLE_DEMO_MESSAGE).isDisplayed();
} catch (NoSuchElementException se) {
}
return false;
}
public String getMessage() {
return drone.find(SIMPLE_DEMO_MESSAGE).getText();
}
}

View File

@@ -0,0 +1,12 @@
#set($symbol_pound='#')
#set($symbol_dollar='$')
#set($symbol_escape='\' )
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Custom Share AMP Page Object Tests" parallel="false">
<test name="DemoPageTest">
<classes>
<class name="${package}.demoamp.DemoPageTestIT"/>
</classes>
</test>
</suite>

View File

@@ -3,9 +3,9 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco Share Client</name>
<name>Alfresco Share WAR Aggregator</name>
<packaging>war</packaging>
<description>Alfresco Share Client</description>
<description>Alfresco Share aggregator, installs your Share AMPs in the Share WAR for aggregation and easy deployment purposes</description>
<parent>
<groupId>${groupId}</groupId>
@@ -13,21 +13,37 @@
<version>${version}</version>
</parent>
<properties>
<!-- Used in share-config-custom.xml when testing.
By default points to standard location (local) of Alfresco Repository -->
<alfresco.repo.url>http://localhost:8080/alfresco</alfresco.repo.url>
</properties>
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share</artifactId>
<artifactId>${alfresco.share.artifactId}</artifactId>
<version>${alfresco.version}</version>
<type>war</type>
</dependency>
<!-- Demonstrating the usage of a well known GA AMP (Web Quick Start
Share component) -->
<!-- Demonstrating the dependency / installation of the share AMP developed in the 'share-amp' module -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-wcm-quickstart-share</artifactId>
<version>${alfresco.version}</version>
<groupId>${project.groupId}</groupId>
<artifactId>share-amp</artifactId>
<version>${project.version}</version>
<type>amp</type>
</dependency>
<!-- Uncomment if you are using RM (Records Management) module -->
<!--
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-rm-share</artifactId>
<version>${alfresco.rm.version}</version>
<type>amp</type>
</dependency>
-->
</dependencies>
<build>
<plugins>
<plugin>
@@ -45,17 +61,25 @@
<!-- The Share WAR -->
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>share</artifactId>
<artifactId>${alfresco.share.artifactId}</artifactId>
<type>war</type>
<!-- To allow inclusion of META-INF -->
<excludes/>
</overlay>
<!-- Add / order your AMPs here -->
<!-- Add / sort your AMPs here -->
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-wcm-quickstart-share</artifactId>
<groupId>${project.groupId}</groupId>
<artifactId>share-amp</artifactId>
<type>amp</type>
</overlay>
<!-- Uncomment if you are using RM module -->
<!--
<overlay>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-rm-share</artifactId>
<type>amp</type>
</overlay>
-->
</overlays>
</configuration>
</plugin>

View File

@@ -1,8 +0,0 @@
# SHARE client environment dependent properties (local build)
share.server.scheme=http
share.server.name=localhost
share.server.port=${jetty.port}
alfresco.server.scheme=http
alfresco.server.name=localhost
alfresco.server.port=${jetty.port}
alfresco.webapp.name=alfresco

View File

@@ -1,12 +1,18 @@
<!-- Alfresco 5.0.d custom-slingshot-application-context.xml sample
Note. Any configuration related to a specific Share extension
(such as evaluator bean and message resource bean) should be
placed in the specific extension config file, such as for example
alfresco-allinone/share-amp/src/main/amp/config/alfresco/web-extension/custom-slingshot-application-context.xml
-->
<?xml version='1.0' encoding='UTF-8'?>
<!-- This is a sample configuration file from Alfresco Community 4.2.b - Please adapt to your version -->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:hz="http://www.hazelcast.com/schema/config"
xmlns:hz="http://www.hazelcast.com/schema/spring"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.hazelcast.com/schema/config
http://www.hazelcast.com/schema/config/hazelcast-spring.xsd">
http://www.hazelcast.com/schema/spring
http://www.hazelcast.com/schema/spring/hazelcast-spring-2.4.xsd">
<!--
Hazelcast distributed messaging configuration - Share web-tier cluster config (3.4.8 and 4.0.1)
@@ -47,6 +53,7 @@
<bean id="webframework.factory.requestcontext.servlet" class="org.alfresco.web.site.ClusterAwareRequestContextFactory" parent="webframework.factory.base">
<property name="linkBuilderFactory" ref="webframework.factory.linkbuilder.servlet" />
<property name="extensibilityModuleHandler" ref="webscripts.extensibility.handler" />
<property name="dependencyHandler" ref="dependency.handler" />
<property name="clusterObjectPersister" ref="webframework.slingshot.persister.remote" />
</bean>
-->

View File

@@ -1,4 +1,11 @@
<!-- This is a sample configuration file from Alfresco Community 4.2.b - Please adapt to your version -->
<!-- Alfresco 5.0.d share-config-custom.xml sample.
Note:
Any configuration related to a specific Share AMP extension
(such as doclib action config and form config)
should be added to that extension's custom config
(i.e. into the share-amp/src/main/resources/META-INF/share-config-custom.xml)
-->
<alfresco-config>
<!-- Global config section -->
@@ -37,6 +44,62 @@
</web-framework>
</config>
<!-- Disable the CSRF Token Filter -->
<!--
<config evaluator="string-compare" condition="CSRFPolicy" replace="true">
<filter/>
</config>
-->
<!--
To run the CSRF Token Filter behind 1 or more proxies that do not rewrite the Origin or Referere headers:
1. Copy the "CSRFPolicy" default config in share-security-config.xml and paste it into this file.
2. Replace the old config by setting the <config> element's "replace" attribute to "true" like below:
<config evaluator="string-compare" condition="CSRFPolicy" replace="true">
3. To every <action name="assertReferer"> element add the following child element
<param name="referer">http://www.proxy1.com/.*|http://www.proxy2.com/.*</param>
4. To every <action name="assertOrigin"> element add the following child element
<param name="origin">http://www.proxy1.com|http://www.proxy2.com</param>
-->
<!--
Remove the default wildcard setting and use instead a strict whitelist of the only domains that shall be allowed
to be used inside iframes (i.e. in the WebView dashlet on the dashboards)
-->
<!--
<config evaluator="string-compare" condition="IFramePolicy" replace="true">
<cross-domain>
<url>http://www.trusted-domain-1.com/</url>
<url>http://www.trusted-domain-2.com/</url>
</cross-domain>
</config>
-->
<!-- Turn off header that stops Share from being displayed in iframes on pages from other domains -->
<!--
<config evaluator="string-compare" condition="SecurityHeadersPolicy">
<headers>
<header>
<name>X-Frame-Options</name>
<enabled>false</enabled>
</header>
</headers>
</config>
-->
<!-- Prevent browser communication over HTTP (for HTTPS servers) -->
<!--
<config evaluator="string-compare" condition="SecurityHeadersPolicy">
<headers>
<header>
<name>Strict-Transport-Security</name>
<value>max-age=31536000</value>
</header>
</headers>
</config>
-->
<config evaluator="string-compare" condition="Replication">
<share-urls>
<!--
@@ -63,7 +126,12 @@
<!--
Optionally limit the number of folders shown in treeview throughout Share.
-->
<maximum-folder-count>-1</maximum-folder-count>
<maximum-folder-count>1000</maximum-folder-count>
<!--
Default timeout in milliseconds for folder Tree component to recieve response from Repository
-->
<timeout>7000</timeout>
</tree>
<!--
@@ -86,9 +154,11 @@
<aspect name="emailserver:aliasable" />
<aspect name="cm:taggable" />
<aspect name="app:inlineeditable" />
<aspect name="gd:googleEditable" />
<aspect name="cm:geographic" />
<aspect name="exif:exif" />
<aspect name="audio:audio" />
<aspect name="cm:indexControl" />
<aspect name="dp:restrictable" />
</visible>
<!-- Aspects that a user can add. Same as "visible" if left empty -->
@@ -117,6 +187,10 @@
<type name="cm:folder">
</type>
<type name="trx:transferTarget">
<subtype name="trx:fileTransferTarget" />
</type>
</types>
<!--
@@ -139,8 +213,8 @@
The I18N label is created from the "type" attribute, e.g. google-docs.doc=Google Docs&trade; Document
-->
<creatable-types>
<creatable type="doc">application/msword</creatable>
<creatable type="xls">application/vnd.ms-excel</creatable>
<creatable type="doc">application/vnd.openxmlformats-officedocument.wordprocessingml.document</creatable>
<creatable type="xls">application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</creatable>
<creatable type="ppt">application/vnd.ms-powerpoint</creatable>
</creatable-types>
</google-docs>
@@ -209,14 +283,19 @@
This is a relatively expensive operation, so should be set to "false" for Repositories with broad folder structures.
-->
<evaluate-child-folders>false</evaluate-child-folders>
<!--
Optionally limit the number of folders shown in treeview throughout Share.
-->
<maximum-folder-count>500</maximum-folder-count>
</tree>
<!--
Whether the link to the Repository Library appears in the header component or not.
-->
<visible>true</visible>
</config>
<!-- Kerberos settings -->
<!-- To enable kerberos rename this condition to "Kerberos" -->
<config evaluator="string-compare" condition="KerberosDisabled" replace="true">
@@ -243,11 +322,21 @@
JAAS login configuration entry name.
-->
<config-entry>ShareHTTP</config-entry>
<!--
A Boolean which when true strips the @domain sufix from Kerberos authenticated usernames.
Use together with stripUsernameSuffix property in alfresco-global.properties file.
-->
<stripUserNameSuffix>true</stripUserNameSuffix>
</kerberos>
</config>
<!-- example port config used to access remote Alfresco server (default is 8080) -->
<!-- Uncomment and modify the URL to Activiti Admin Console if required. -->
<!--
<config evaluator="string-compare" condition="ActivitiAdmin" replace="true">
<activiti-admin-url>http://localhost:8080/alfresco/activiti-admin</activiti-admin-url>
</config>
-->
<config evaluator="string-compare" condition="Remote">
<remote>
<endpoint>
@@ -277,20 +366,21 @@
<basic-auth>true</basic-auth>
<identity>user</identity>
</endpoint>
<endpoint>
<id>activiti-admin</id>
<name>Activiti Admin UI - user access</name>
<description>Access to Activiti Admin UI, that requires user authentication</description>
<connector-id>activiti-admin-connector</connector-id>
<endpoint-url>http://localhost:8080/alfresco/activiti-admin</endpoint-url>
<id>alfresco-api</id>
<parent-id>alfresco</parent-id>
<name>Alfresco Public API - user access</name>
<description>Access to Alfresco Repository Public API that require user authentication.
This makes use of the authentication that is provided by parent 'alfresco' endpoint.</description>
<connector-id>alfresco</connector-id>
<endpoint-url>http://localhost:8080/alfresco/api</endpoint-url>
<identity>user</identity>
</endpoint>
</remote>
</config>
-->
<!--
<!--
Overriding endpoints to reference an Alfresco server with external SSO enabled
NOTE: If utilising a load balancer between web-tier and repository cluster, the "sticky
sessions" feature of your load balancer must be used.
@@ -299,12 +389,23 @@
*Optional* keystore contains SSL client certificate + trusted CAs.
Used to authenticate share to an external SSO system such as CAS
Remove the keystore section if not required i.e. for NTLM.
NOTE: For Kerberos SSO rename the "KerberosDisabled" condition above to "Kerberos"
NOTE: For external SSO, switch the endpoint connector to "AlfrescoHeader" and set
the userHeader to the name of the HTTP header that the external SSO
NOTE: For external SSO, switch the endpoint connector to "alfrescoHeader" and set
the userHeader value to the name of the HTTP header that the external SSO
uses to provide the authenticated user name.
NOTE: For external SSO, Share now supports the "userIdPattern" mechanism as is available
on the repository config for External Authentication sub-system. Add the following
element to your "alfrescoHeader" connector config:
<userIdPattern>^ignore-(\w+)-ignore</userIdPattern>
This is an example, ensure the Id pattern matches your repository config.
NOTE: For external SSO, Share now supports stateless (no Http Session or sticky session)
connection to the repository when using the alfrescoHeader remote user connector.
e.g. You can change endpoint config to use the faster /service URL instead of the
/wcs URL if you are using External Authentication and then remove sticky session config
from your proxy between Share and Alfresco. Note that this is also faster because Share
will no longer call the /touch REST API before every remote call to the repository.
-->
<!--
<config evaluator="string-compare" condition="Remote">
@@ -314,14 +415,14 @@
<type>pkcs12</type>
<password>alfresco-system</password>
</keystore>
<connector>
<id>alfrescoCookie</id>
<name>Alfresco Connector</name>
<description>Connects to an Alfresco instance using cookie-based authentication</description>
<class>org.alfresco.web.site.servlet.SlingshotAlfrescoConnector</class>
</connector>
<connector>
<id>alfrescoHeader</id>
<name>Alfresco Connector</name>
@@ -339,8 +440,50 @@
<identity>user</identity>
<external-auth>true</external-auth>
</endpoint>
<endpoint>
<id>alfresco-feed</id>
<parent-id>alfresco</parent-id>
<name>Alfresco Feed</name>
<description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description>
<connector-id>alfrescoHeader</connector-id>
<endpoint-url>http://localhost:8080/alfresco/wcs</endpoint-url>
<identity>user</identity>
<external-auth>true</external-auth>
</endpoint>
<endpoint>
<id>alfresco-api</id>
<parent-id>alfresco</parent-id>
<name>Alfresco Public API - user access</name>
<description>Access to Alfresco Repository Public API that require user authentication.
This makes use of the authentication that is provided by parent 'alfresco' endpoint.</description>
<connector-id>alfrescoHeader</connector-id>
<endpoint-url>http://localhost:8080/alfresco/api</endpoint-url>
<identity>user</identity>
<external-auth>true</external-auth>
</endpoint>
</remote>
</config>
-->
<!-- Cookie settings -->
<!-- To disable alfUsername2 cookie set enableCookie value to "false" -->
<!--
<plug-ins>
<element-readers>
<element-reader element-name="cookie" class="org.alfresco.web.config.cookie.CookieElementReader"/>
</element-readers>
</plug-ins>
<config evaluator="string-compare" condition="Cookie" replace="true">
<cookie>
<enableCookie>false</enableCookie>
<cookies-to-remove>
<cookie-to-remove>alfUsername3</cookie-to-remove>
<cookie-to-remove>alfLogin</cookie-to-remove>
</cookies-to-remove>
</cookie>
</config>
-->
</alfresco-config>

View File

@@ -1,5 +1,5 @@
# Set root logger level to error
log4j.rootLogger=${app.log.root.level}, Console, File
log4j.rootLogger=error, Console, File
###### Console appender definition #######
@@ -17,27 +17,7 @@ log4j.appender.File.File=${app.log.dir}share.log
log4j.appender.File.Append=true
log4j.appender.File.DatePattern='.'yyyy-MM-dd
log4j.appender.File.layout=org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n
###### Hibernate specific appender definition #######
#log4j.appender.file=org.apache.log4j.FileAppender
#log4j.appender.file.File=hibernate.log
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
###### Log level overrides #######
# Commented-in loggers will be exposed as JMX MBeans (refer to org.alfresco.repo.admin.Log4JHierarchyInit)
# Hence, generally useful loggers should be listed with at least ERROR level to allow simple runtime
# control of the level via a suitable JMX Console. Also, any other loggers can be added transiently via
# Log4j addLoggerMBean as long as the logger exists and has been loaded.
# Hibernate
log4j.logger.org.hibernate=error
log4j.logger.org.hibernate.util.JDBCExceptionReporter=fatal
log4j.logger.org.hibernate.event.def.AbstractFlushingEventListener=fatal
log4j.logger.org.hibernate.type=warn
log4j.logger.org.hibernate.cfg.SettingsFactory=warn
log4j.appender.File.layout.ConversionPattern=%d{yyyy-MM-dd} %d{ABSOLUTE} %-5p [%c] [%t] %m%n
# Spring
log4j.logger.org.springframework=warn
@@ -45,218 +25,23 @@ log4j.logger.org.springframework=warn
log4j.logger.org.springframework.remoting.support=error
log4j.logger.org.springframework.util=error
# Axis/WSS4J
log4j.logger.org.apache.axis=info
log4j.logger.org.apache.ws=info
# CXF
log4j.logger.org.apache.cxf=error
# MyFaces
log4j.logger.org.apache.myfaces.util.DebugUtils=info
log4j.logger.org.apache.myfaces.el.VariableResolverImpl=error
log4j.logger.org.apache.myfaces.application.jsp.JspViewHandlerImpl=error
log4j.logger.org.apache.myfaces.taglib=error
# OpenOfficeConnection
log4j.logger.net.sf.jooreports.openoffice.connection=fatal
# log prepared statement cache activity ###
log4j.logger.org.hibernate.ps.PreparedStatementCache=info
# Alfresco
log4j.logger.org.alfresco=error
log4j.logger.org.alfresco.repo.admin=info
log4j.logger.org.alfresco.repo.cache.TransactionalCache=warn
log4j.logger.org.alfresco.repo.model.filefolder=warn
log4j.logger.org.alfresco.repo.tenant=info
log4j.logger.org.alfresco.repo.avm=info
log4j.logger.org.alfresco.config=warn
log4j.logger.org.alfresco.config.JndiObjectFactoryBean=warn
log4j.logger.org.alfresco.config.JBossEnabledWebApplicationContext=warn
log4j.logger.org.alfresco.repo.management.subsystems=warn
log4j.logger.org.alfresco.repo.management.subsystems.ChildApplicationContextFactory=info
log4j.logger.org.alfresco.repo.management.subsystems.ChildApplicationContextFactory$ChildApplicationContext=warn
log4j.logger.org.alfresco.repo.security.sync=info
log4j.logger.org.alfresco.repo.security.person=info
log4j.logger.org.alfresco.sample=info
log4j.logger.org.alfresco.web=info
#log4j.logger.org.alfresco.web.app.AlfrescoNavigationHandler=debug
#log4j.logger.org.alfresco.web.ui.repo.component.UIActions=debug
#log4j.logger.org.alfresco.web.ui.repo.tag.PageTag=debug
#log4j.logger.org.alfresco.web.bean.clipboard=debug
log4j.logger.org.alfresco.repo.webservice=info
log4j.logger.org.alfresco.service.descriptor.DescriptorService=info
#log4j.logger.org.alfresco.web.page=debug
log4j.logger.org.alfresco.repo.importer.ImporterBootstrap=error
#log4j.logger.org.alfresco.repo.importer.ImporterBootstrap=info
log4j.logger.org.alfresco.web.ui.common.Utils=error
#log4j.logger.org.alfresco.web.ui.common.Utils=info
log4j.logger.org.alfresco.repo.admin.patch.PatchExecuter=info
log4j.logger.org.alfresco.repo.domain.patch.ibatis.PatchDAOImpl=info
# Specific patches
log4j.logger.org.alfresco.repo.admin.patch.impl.DeploymentMigrationPatch=info
log4j.logger.org.alfresco.repo.version.VersionMigrator=info
log4j.logger.org.alfresco.repo.admin.patch.impl.ResetWCMToGroupBasedPermissionsPatch=info
log4j.logger.org.alfresco.repo.module.ModuleServiceImpl=info
log4j.logger.org.alfresco.repo.domain.schema.SchemaBootstrap=info
log4j.logger.org.alfresco.repo.admin.ConfigurationChecker=info
log4j.logger.org.alfresco.repo.node.index.AbstractReindexComponent=warn
log4j.logger.org.alfresco.repo.node.index.IndexTransactionTracker=warn
log4j.logger.org.alfresco.repo.node.index.FullIndexRecoveryComponent=info
log4j.logger.org.alfresco.repo.node.index.AVMFullIndexRecoveryComponent=info
log4j.logger.org.alfresco.util.OpenOfficeConnectionTester=info
log4j.logger.org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl=warn
log4j.logger.org.alfresco.repo.domain.hibernate.DirtySessionMethodInterceptor=warn
log4j.logger.org.alfresco.repo.transaction.RetryingTransactionHelper=warn
log4j.logger.org.alfresco.util.transaction.SpringAwareUserTransaction.trace=warn
log4j.logger.org.alfresco.util.AbstractTriggerBean=warn
log4j.logger.org.alfresco.enterprise.repo.cache.cluster.KeepAliveHeartbeatReceiver=info
log4j.logger.org.alfresco.repo.version.Version2ServiceImpl=warn
#log4j.logger.org.alfresco.web.app.DebugPhaseListener=debug
log4j.logger.org.alfresco.repo.workflow=info
# CIFS server debugging
log4j.logger.org.alfresco.smb.protocol=error
#log4j.logger.org.alfresco.smb.protocol.auth=debug
#log4j.logger.org.alfresco.acegi=debug
# FTP server debugging
log4j.logger.org.alfresco.ftp.protocol=error
#log4j.logger.org.alfresco.ftp.server=debug
# WebDAV debugging
#log4j.logger.org.alfresco.webdav.protocol=debug
log4j.logger.org.alfresco.webdav.protocol=error
# NTLM servlet filters
#log4j.logger.org.alfresco.web.app.servlet.NTLMAuthenticationFilter=debug
#log4j.logger.org.alfresco.repo.webdav.auth.NTLMAuthenticationFilter=debug
# Kerberos servlet filters
#log4j.logger.org.alfresco.web.app.servlet.KerberosAuthenticationFilter=debug
#log4j.logger.org.alfresco.repo.webdav.auth.KerberosAuthenticationFilter=debug
# File servers
log4j.logger.org.alfresco.fileserver=warn
# Repo filesystem debug logging
#log4j.logger.org.alfresco.filesys.repo.ContentDiskDriver=debug
# AVM filesystem debug logging
#log4j.logger.org.alfresco.filesys.avm.AVMDiskDriver=debug
# Integrity message threshold - if 'failOnViolation' is off, then WARNINGS are generated
log4j.logger.org.alfresco.repo.node.integrity=ERROR
# Indexer debugging
log4j.logger.org.alfresco.repo.search.Indexer=error
#log4j.logger.org.alfresco.repo.search.Indexer=debug
log4j.logger.org.alfresco.repo.search.impl.lucene.index=error
log4j.logger.org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl=warn
#log4j.logger.org.alfresco.repo.search.impl.lucene.index=DEBUG
# Audit debugging
# log4j.logger.org.alfresco.repo.audit=DEBUG
# log4j.logger.org.alfresco.repo.audit.model=DEBUG
# Forms debugging
# log4j.logger.org.alfresco.web.forms=debug
# log4j.logger.org.chiba.xml.xforms=debug
log4j.logger.org.alfresco.web.forms.xforms.XFormsBean=error
log4j.logger.org.alfresco.web.forms.XSLTRenderingEngine=error
# Property sheet and modelling debugging
# change to error to hide the warnings about missing properties and associations
log4j.logger.alfresco.missingProperties=warn
log4j.logger.org.alfresco.web.ui.repo.component.property.UIChildAssociation=warn
log4j.logger.org.alfresco.web.ui.repo.component.property.UIAssociation=warn
#log4j.logger.org.alfresco.web.ui.repo.component.property=debug
# Dictionary/Model debugging
log4j.logger.org.alfresco.repo.dictionary=warn
log4j.logger.org.alfresco.repo.dictionary.types.period=warn
# Virtualization Server Registry
log4j.logger.org.alfresco.mbeans.VirtServerRegistry=error
# Spring context runtime property setter
log4j.logger.org.alfresco.util.RuntimeSystemPropertiesSetter=info
# Debugging options for clustering
log4j.logger.org.alfresco.repo.content.ReplicatingContentStore=error
log4j.logger.org.alfresco.repo.content.replication=error
#log4j.logger.org.alfresco.repo.deploy.DeploymentServiceImpl=debug
# Activity service
log4j.logger.org.alfresco.repo.activities=warn
# User usage tracking
log4j.logger.org.alfresco.repo.usage=info
# Sharepoint
log4j.logger.org.alfresco.module.vti=info
# Forms Engine
log4j.logger.org.alfresco.repo.forms=info
log4j.logger.org.alfresco.web.config.forms=info
log4j.logger.org.alfresco.web.scripts.forms=info
# CMIS
log4j.logger.org.alfresco.opencmis=error
log4j.logger.org.alfresco.opencmis.AlfrescoCmisServiceInterceptor=error
log4j.logger.org.alfresco.cmis=error
log4j.logger.org.alfresco.cmis.dictionary=warn
log4j.logger.org.apache.chemistry.opencmis=info
# IMAP
log4j.logger.org.alfresco.repo.imap=info
# JBPM
# Note: non-fatal errors (eg. logged during job execution) should be handled by Alfresco's retrying transaction handler
log4j.logger.org.jbpm.graph.def.GraphElement=fatal
#log4j.logger.org.alfresco.repo.googledocs=debug
###### Scripting #######
# Web Framework
log4j.logger.org.springframework.extensions.webscripts=info
log4j.logger.org.springframework.extensions.webscripts.ScriptLogger=warn
log4j.logger.org.springframework.extensions.webscripts.ScriptDebugger=off
# Repository
log4j.logger.org.alfresco.repo.web.scripts=warn
log4j.logger.org.alfresco.repo.web.scripts.BaseWebScriptTest=info
log4j.logger.org.alfresco.repo.web.scripts.AlfrescoRhinoScriptDebugger=off
log4j.logger.org.alfresco.repo.jscript=error
log4j.logger.org.alfresco.repo.jscript.ScriptLogger=warn
log4j.logger.org.alfresco.repo.cmis.rest.CMISTest=info
log4j.logger.org.alfresco.repo.avm.actions=info
# Freemarker
# Note the freemarker.runtime logger is used to log non-fatal errors that are handled by Alfresco's retrying transaction handler
log4j.logger.freemarker.runtime=
# Metadata extraction
log4j.logger.org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter=warn
# Reduces PDFont error level due to ALF-7105
log4j.logger.org.apache.pdfbox.pdmodel.font.PDSimpleFont=fatal
log4j.logger.org.apache.pdfbox.pdmodel.font.PDFont=fatal
log4j.logger.org.apache.pdfbox.pdmodel.font.PDCIDFont=fatal
# no index support
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexIndexer=fatal
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexSearchService=fatal
log4j.logger.freemarker.runtime=

View File

@@ -1,167 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<!-- This is a sample from Alfresco Share 4.2.b to demonstrate how to override web.xml in your project.
| Uncomment this file to overlay to the webapp.
| NOTE: you will need to change/update this if you use a different Alfresco version / edition
-->
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
<display-name>Alfresco Project Slingshot</display-name>
<description>Alfresco Project Slingshot application</description>
<context-param>
<param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
<param-value>true</param-value>
</context-param>
<!-- Spring Application Context location and context class -->
<context-param>
<description>Spring config file location</description>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/web-application-config.xml</param-value>
</context-param>
<filter>
<description>Set HTTP cache Expires header 30 days forward for a mapping.</description>
<filter-name>CacheExpiresFilter</filter-name>
<filter-class>org.alfresco.web.scripts.servlet.StaticAssetCacheFilter</filter-class>
<init-param>
<description>Add an Expires Header 30 days forward</description>
<param-name>expires</param-name>
<param-value>30</param-value>
</init-param>
</filter>
<filter>
<description>MT authentication support - NOTE: does not support portlets</description>
<filter-name>MTAuthentationFilter</filter-name>
<filter-class>org.alfresco.web.site.servlet.MTAuthenticationFilter</filter-class>
</filter>
<filter>
<description>Redirects view and service URLs to the dispatcher servlet.</description>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter>
<description>Share SSO authentication support filter.</description>
<filter-name>Authentication Filter</filter-name>
<filter-class>org.alfresco.web.site.servlet.SSOAuthenticationFilter</filter-class>
<init-param>
<param-name>endpoint</param-name>
<param-value>alfresco</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.jpg</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.png</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.gif</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.css</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>CacheExpiresFilter</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Authentication Filter</filter-name>
<url-pattern>/page/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Authentication Filter</filter-name>
<url-pattern>/p/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Authentication Filter</filter-name>
<url-pattern>/proxy/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/proxy/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/service/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/feedservice/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/res/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/system/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>MTAuthentationFilter</filter-name>
<url-pattern>/page/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>MTAuthentationFilter</filter-name>
<url-pattern>/p/*</url-pattern>
</filter-mapping>
<!-- Spring Context Loader listener - the name of the default global context is passed to the DispatcherServlet
in the servlet definition below - this is to allow the NTLM filter etc. to find the single app context -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>Spring Surf Dispatcher Servlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextAttribute</param-name>
<param-value>org.springframework.web.context.WebApplicationContext.ROOT</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Spring Surf Dispatcher Servlet</servlet-name>
<url-pattern>/page/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Spring Surf Dispatcher Servlet</servlet-name>
<url-pattern>/p/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>60</session-timeout>
</session-config>
<!-- welcome file list precedence order is index.jsp -->
<welcome-file-list>
<welcome-file>page</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<error-page>
<error-code>500</error-code>
<location>/error500.jsp</location>
</error-page>
</web-app>

View File

@@ -0,0 +1,93 @@
<alfresco-config>
<config evaluator="string-compare" condition="WebFramework">
<web-framework>
<autowire>
<!-- Changing this to 'development' currently breaks the Admin Console.
Instead we make a POST to clear Share dependency caches, see 'clear-caches-refresh-ws' profile. -->
<mode>production</mode> <!-- not really need in the long run, used for YUI - deprecate -->
</autowire>
<!--
We don't need to do this when we have the new refresh mojos in the Alfresco plug-in.
If resource caching has been disabled then all the dependency caches will be cleared
before processing the Aikau jsonModel request...
(i.e. this.dojoDependencyHandler.clearCaches() )
For more information see the Aikau source code: https://github.com/Alfresco/Aikau
-->
<disable-resource-caching>false</disable-resource-caching>
</web-framework>
</config>
<!-- Global config section -->
<config replace="true">
<flags>
<!--
Developer debugging setting to turn on DEBUG mode for client scripts in the browser
-->
<client-debug>true</client-debug>
<!--
LOGGING can always be toggled at runtime when in DEBUG mode (Ctrl, Ctrl, Shift, Shift).
This flag automatically activates logging on page load.
-->
<client-debug-autologging>false</client-debug-autologging>
</flags>
</config>
<!--
Disable CSRF completely for now
It seems Share has issues on 4.2.x with the embedded tomcat and CSRFPolicy
-->
<config evaluator="string-compare" condition="CSRFPolicy" replace="true">
<filter/>
</config>
<!--
Change so it is picked up from property where the Alfresco Repo Webapp is running
(e.g. http://localhost:8080/alfresco)
-->
<config evaluator="string-compare" condition="Remote">
<remote>
<endpoint>
<id>alfresco-noauth</id>
<name>Alfresco - unauthenticated access</name>
<description>Access to Alfresco Repository WebScripts that do not require authentication</description>
<connector-id>alfresco</connector-id>
<endpoint-url>${alfresco.repo.url}/s</endpoint-url>
<identity>none</identity>
</endpoint>
<endpoint>
<id>alfresco</id>
<name>Alfresco - user access</name>
<description>Access to Alfresco Repository WebScripts that require user authentication</description>
<connector-id>alfresco</connector-id>
<endpoint-url>${alfresco.repo.url}/s</endpoint-url>
<identity>user</identity>
</endpoint>
<endpoint>
<id>alfresco-feed</id>
<name>Alfresco Feed</name>
<description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description>
<connector-id>http</connector-id>
<endpoint-url>${alfresco.repo.url}/s</endpoint-url>
<basic-auth>true</basic-auth>
<identity>user</identity>
</endpoint>
<endpoint>
<id>activiti-admin</id>
<name>Activiti Admin UI - user access</name>
<description>Access to Activiti Admin UI, that requires user authentication</description>
<connector-id>activiti-admin-connector</connector-id>
<endpoint-url>${alfresco.repo.url}/activiti-admin</endpoint-url>
<identity>user</identity>
</endpoint>
</remote>
</config>
</alfresco-config>

View File

@@ -0,0 +1,52 @@
# This file is copied from Alfresco Share 5.0.d
# Overrides tomcat/webapps/share/WEB-INF/classes/log4j,properties
# and sets new file location from property and log level from property.
#
# Set root logger level to error
log4j.rootLogger=${app.log.root.level}, Console, File
###### Console appender definition #######
# All outputs currently set to be a ConsoleAppender.
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
# use log4j NDC to replace %x with tenant domain / username
log4j.appender.Console.layout.ConversionPattern=%d{ISO8601} %x %-5p [%c{3}] [%t] %m%n
#log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n
###### File appender definition #######
log4j.appender.File=org.apache.log4j.DailyRollingFileAppender
log4j.appender.File.File=${app.log.dir}alfresco.log
log4j.appender.File.Append=true
log4j.appender.File.DatePattern='.'yyyy-MM-dd
log4j.appender.File.layout=org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern=%d{yyyy-MM-dd} %d{ABSOLUTE} %-5p [%c] [%t] %m%n
# Spring
log4j.logger.org.springframework=warn
# Turn off Spring remoting warnings that should really be info or debug.
log4j.logger.org.springframework.remoting.support=error
log4j.logger.org.springframework.util=error
# MyFaces
log4j.logger.org.apache.myfaces.util.DebugUtils=info
log4j.logger.org.apache.myfaces.el.VariableResolverImpl=error
log4j.logger.org.apache.myfaces.application.jsp.JspViewHandlerImpl=error
log4j.logger.org.apache.myfaces.taglib=error
# Alfresco
log4j.logger.org.alfresco=error
log4j.logger.org.alfresco.config=warn
log4j.logger.org.alfresco.config.JndiObjectFactoryBean=warn
log4j.logger.org.alfresco.web=info
# Web Framework
log4j.logger.org.springframework.extensions.webscripts=info
log4j.logger.org.springframework.extensions.webscripts.ScriptLogger=warn
log4j.logger.org.springframework.extensions.webscripts.ScriptDebugger=off
# Freemarker
# Note the freemarker.runtime logger is used to log non-fatal errors that are handled by Alfresco's retrying transaction handler
log4j.logger.freemarker.runtime=

View File

@@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>solr-config</artifactId>
<packaging>pom</packaging>
<name>Alfresco Solr 4 Configuration</name>
<description>Apache Solr 4 Configuration Customization</description>
<!-- Setup the parent extension project, which contain all the Alfresco Maven SDK stuff -->
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<!-- Build Solr Configuration only when we run an embedded Tomcat (i.e. profile run is enabled).
We assume that there is no need to customize Apache Solr 4 itself. -->
<profiles>
<profile>
<id>run</id>
<properties>
<alfresco.solr.dir>${alfresco.data.location}/solr4</alfresco.solr.dir>
<alfresco.solr.home.dir>${alfresco.solr.dir}/config</alfresco.solr.home.dir>
<alfresco.solr.data.dir>${alfresco.solr.dir}/data</alfresco.solr.data.dir>
</properties>
<dependencies>
<!-- Download the default Solr4-config.zip Configuration files,
they will be updated so we can run locally over HTTP -->
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-solr4</artifactId>
<version>${alfresco.version}</version>
<classifier>config</classifier>
<type>zip</type>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Run goal unpack and unzip the content of the downloaded default solr-config.zip file into the
alfresco-maven-sdk2-test/alf_data_dev/solr4/config directory
(The solr-config.zip is brought in via the dependency section) -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-alfresco-config</id>
<goals>
<goal>unpack</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${alfresco.solr.home.dir}</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-solr4</artifactId>
<version>${alfresco.version}</version>
<classifier>config</classifier>
<type>zip</type>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<!-- For windows paths, convert single \ to / for the ${alfresco.solr.data.dir} path,
by default it will be c:\bla\, we need forward slash or double backslash. -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>regexp-property</id>
<phase>generate-resources</phase>
<goals>
<goal>regex-property</goal>
</goals>
</execution>
</executions>
<configuration>
<name>solrDataDir</name>
<value>${alfresco.solr.data.dir}</value>
<regex>\\</regex>
<replacement>/</replacement>
<failIfNoMatch>false</failIfNoMatch>
</configuration>
</plugin>
<!-- Run the goal replace and update configuration files for the
Solr cores to reflect our build structure -->
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<executions>
<execution>
<id>setup-solr-config</id>
<phase>generate-resources</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<regex>false</regex>
<includes>
<include>${alfresco.solr.home.dir}/archive-SpacesStore/conf/solrcore.properties</include>
<include>${alfresco.solr.home.dir}/workspace-SpacesStore/conf/solrcore.properties</include>
</includes>
<replacements>
<replacement>
<token>@@ALFRESCO_SOLR4_DATA_DIR@@</token>
<value>${solrDataDir}/index</value>
</replacement>
</replacements>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>

View File

@@ -1,148 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco Apache Solr customization</name>
<packaging>pom</packaging>
<description>Alfresco Apache Solr Customization</description>
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<properties>
<alfresco.solr.dir>${project.basedir}/solr_home</alfresco.solr.dir>
<alfresco.solr.war.overlay>${project.build.directory}/${project.artifactId}-overlay</alfresco.solr.war.overlay>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-alfresco-community-lib</id>
<goals><goal>unpack</goal></goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${alfresco.solr.dir}</outputDirectory>
<artifactItems>
<artifactItem>
<artifactId>alfresco-solr</artifactId>
<groupId>${alfresco.groupId}</groupId>
<version>${alfresco.version}</version>
<type>zip</type>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>overlay-solr-war</id>
<phase>generate-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<echo message="Unpacking Apache Solr for web.xml overlay" />
<unzip src="${alfresco.solr.dir}/apache-solr-1.4.1.war" dest="${alfresco.solr.war.overlay}" />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>overlay-web-xml</id>
<phase>process-resources</phase>
<goals><goal>copy-resources</goal></goals>
<configuration>
<outputDirectory>${alfresco.solr.war.overlay}/WEB-INF</outputDirectory>
<overwrite>true</overwrite>
<resources>
<resource>
<directory>src/main/webapp/WEB-INF</directory>
<includes>
<include>web.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<targetPath>classes</targetPath>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>create-solr-war</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<echo message="Packaging Apache Solr WAR overlay" />
<zip basedir="${alfresco.solr.war.overlay}" destfile="${alfresco.solr.dir}/apache-solr-1.4.1-overlay.war" />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-lib</id>
<phase>package</phase>
<goals><goal>copy-resources</goal></goals>
<configuration>
<outputDirectory>${alfresco.solr.dir}</outputDirectory>
<resources>
<resource>
<directory>src/main/solr-properties/archive</directory>
<filtering>true</filtering>
<targetPath>${alfresco.solr.dir}/archive-SpacesStore/conf</targetPath>
</resource>
<resource>
<directory>src/main/solr-properties/workspace</directory>
<filtering>true</filtering>
<targetPath>${alfresco.solr.dir}/workspace-SpacesStore/conf</targetPath>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-solr</artifactId>
<version>${alfresco.version}</version>
<type>zip</type>
</dependency>
</dependencies>
</project>

View File

@@ -1,18 +0,0 @@
# Set root logger level to error
log4j.rootLogger=${app.log.root.level}, Console, File
###### Console appender definition #######
# All outputs currently set to be a ConsoleAppender.
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{ISO8601} %x %-5p [%c{3}] [%t] %m%n
###### File appender definition #######
log4j.appender.File=org.apache.log4j.DailyRollingFileAppender
log4j.appender.File.File=${app.log.dir}solr.log
log4j.appender.File.Append=true
log4j.appender.File.DatePattern='.'yyyy-MM-dd
log4j.appender.File.layout=org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n

View File

@@ -1,83 +0,0 @@
#
# solrcore.properties - used in solrconfig.xml
#
# data is in ${data.dir.root}/${data.dir.store}
data.dir.root=${alfresco.solr.dir}
data.dir.store=archive/SpacesStore
enable.alfresco.tracking=true
cache.alfresco.size=100
max.field.length=2147483647
#
# Properties loaded during alfresco tracking
#
alfresco.host=localhost
alfresco.port=8080
alfresco.port.ssl=8443
alfresco.baseUrl=/alfresco
alfresco.cron=0/15 * * * * ? *
alfresco.stores=archive://SpacesStore
alfresco.lag=1000
alfresco.hole.retention=3600000
alfresco.batch.count=1000
# encryption
# none, https
alfresco.secureComms=none
# ssl
alfresco.encryption.ssl.keystore.type=JCEKS
alfresco.encryption.ssl.keystore.provider=
alfresco.encryption.ssl.keystore.location=ssl.repo.client.keystore
alfresco.encryption.ssl.keystore.passwordFileLocation=ssl-keystore-passwords.properties
alfresco.encryption.ssl.truststore.type=JCEKS
alfresco.encryption.ssl.truststore.provider=
alfresco.encryption.ssl.truststore.location=ssl.repo.client.truststore
alfresco.encryption.ssl.truststore.passwordFileLocation=ssl-truststore-passwords.properties
## Tracking
alfresco.enableMultiThreadedTracking=true
alfresco.corePoolSize=3
alfresco.maximumPoolSize=-1
alfresco.keepAliveTime=120
alfresco.threadPriority=5
alfresco.threadDaemon=true
alfresco.workQueueSize=-1
# HTTP Client
alfresco.maxTotalConnections=40
alfresco.maxHostConnections=40
# SOLR caching
solr.filterCache.size=512
solr.filterCache.initialSize=512
solr.queryResultCache.size=512
solr.queryResultCache.initialSize=512
solr.documentCache.size=512
solr.documentCache.initialSize=512
solr.queryResultMaxDocsCached=200
solr.authorityCache.size=512
solr.authorityCache.initialSize=512
solr.pathCache.size=512
solr.pathCache.initialSize=512
# SOLR
solr.maxBooleanClauses=10000
#
# TODO
#
# cross language support
# locale expansion
# logging check report ....
#
#

View File

@@ -1,103 +0,0 @@
#
# solrcore.properties - used in solrconfig.xml
#
# data is in ${data.dir.root}/${data.dir.store}
data.dir.root=${alfresco.solr.dir}
data.dir.store=workspace/SpacesStore
enable.alfresco.tracking=true
cache.alfresco.size=100
max.field.length=2147483647
#
# Properties loaded during alfresco tracking
#
alfresco.host=localhost
alfresco.port=8080
alfresco.port.ssl=8443
alfresco.baseUrl=/alfresco
alfresco.cron=0/15 * * * * ? *
alfresco.stores=workspace://SpacesStore
#alfresco.index.transformContent=false
#alfresco.ignore.datatype.1=d:content
alfresco.lag=1000
alfresco.hole.retention=3600000
# alfresco.hole.check.after is not used yet
# It will reduce the hole checking load
alfresco.hole.check.after=300000
alfresco.batch.count=1000
# encryption
# none, https
alfresco.secureComms=none
# ssl
alfresco.encryption.ssl.keystore.type=JCEKS
alfresco.encryption.ssl.keystore.provider=
alfresco.encryption.ssl.keystore.location=ssl.repo.client.keystore
alfresco.encryption.ssl.keystore.passwordFileLocation=ssl-keystore-passwords.properties
alfresco.encryption.ssl.truststore.type=JCEKS
alfresco.encryption.ssl.truststore.provider=
alfresco.encryption.ssl.truststore.location=ssl.repo.client.truststore
alfresco.encryption.ssl.truststore.passwordFileLocation=ssl-truststore-passwords.properties
# Tracking
alfresco.enableMultiThreadedTracking=true
alfresco.corePoolSize=3
alfresco.maximumPoolSize=-1
alfresco.keepAliveTime=120
alfresco.threadPriority=5
alfresco.threadDaemon=true
alfresco.workQueueSize=-1
# HTTP Client
alfresco.maxTotalConnections=40
alfresco.maxHostConnections=40
# SOLR caching
solr.filterCache.size=512
solr.filterCache.initialSize=512
solr.queryResultCache.size=1024
solr.queryResultCache.initialSize=1024
solr.documentCache.size=512
solr.documentCache.initialSize=512
solr.queryResultMaxDocsCached=2000
solr.authorityCache.size=512
solr.authorityCache.initialSize=512
solr.pathCache.size=512
solr.pathCache.initialSize=512
# SOLR
solr.maxBooleanClauses=10000
# Batch fetch
alfresco.transactionDocsBatchSize=100
alfresco.changeSetAclsBatchSize=100
alfresco.aclBatchSize=10
# Warming
solr.filterCache.autowarmCount=128
solr.authorityCache.autowarmCount=0
solr.pathCache.autowarmCount=128
solr.queryResultWindowSize=200
#
# TODO
#
# cross language support
# locale expansion
# logging check report ....
#
#

View File

@@ -1,175 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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.
-->
<web-app>
<!-- Uncomment if you are trying to use a Resin version before 3.0.19.
Their XML implementation isn't entirely compatible with Xerces.
Below are the implementations to use with Sun's JVM.
<system-property javax.xml.xpath.XPathFactory=
"com.sun.org.apache.xpath.internal.jaxp.XPathFactoryImpl"/>
<system-property javax.xml.parsers.DocumentBuilderFactory=
"com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl"/>
<system-property javax.xml.parsers.SAXParserFactory=
"com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl"/>
-->
<!-- People who want to hardcode their "Solr Home" directly into the
WAR File can set the JNDI property here...
-->
<!--
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/put/your/solr/home/here</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
-->
<!-- Any path (name) registered in solrconfig.xml will be sent to that filter -->
<filter>
<filter-name>SolrRequestFilter</filter-name>
<filter-class>org.apache.solr.servlet.SolrDispatchFilter</filter-class>
<!-- If you are wiring Solr into a larger web application which controls
the web context root, you will probably want to mount Solr under
a path prefix (app.war with /app/solr mounted into it, for example).
You will need to put this prefix in front of the SolrDispatchFilter
url-pattern mapping too (/solr/*), and also on any paths for
legacy Solr servlet mappings you may be using.
For the admin JSP's to work properly in a path-prefixed configuration,
the admin folder containing the JSPs needs to be under the app context root
named to match the path-prefix. For example:
.war
xxx
admin
stats.jsp
-->
<!--
<init-param>
<param-name>path-prefix</param-name>
<param-value>/xxx</param-value>
</init-param>
-->
</filter>
<filter-mapping>
<!--
NOTE: When using multicore, /admin JSP URLs with a core specified
such as /solr/coreName/admin/stats.jsp get forwarded by a
RequestDispatcher to /solr/admin/stats.jsp with the specified core
put into request scope keyed as "org.apache.solr.SolrCore".
It is unnecessary, and potentially problematic, to have the SolrDispatchFilter
configured to also filter on forwards. Do not configure
this dispatcher as <dispatcher>FORWARD</dispatcher>.
-->
<filter-name>SolrRequestFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Otherwise it will continue to the old servlets -->
<servlet>
<servlet-name>SolrServer</servlet-name>
<display-name>Solr</display-name>
<description>Solr Server</description>
<servlet-class>org.apache.solr.servlet.SolrServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>SolrUpdate</servlet-name>
<display-name>SolrUpdate</display-name>
<description>Solr Update Handler</description>
<servlet-class>org.apache.solr.servlet.SolrUpdateServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>Logging</servlet-name>
<servlet-class>org.apache.solr.servlet.LogLevelSelection</servlet-class>
</servlet>
<!-- @Deprecated -->
<servlet>
<servlet-name>ping</servlet-name>
<jsp-file>/admin/ping.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>SolrServer</servlet-name>
<url-pattern>/select/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SolrUpdate</servlet-name>
<url-pattern>/update/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Logging</servlet-name>
<url-pattern>/admin/logging</url-pattern>
</servlet-mapping>
<!-- @Deprecated -->
<servlet-mapping>
<servlet-name>ping</servlet-name>
<url-pattern>/admin/ping</url-pattern>
</servlet-mapping>
<!-- @Deprecated -->
<servlet-mapping>
<servlet-name>Logging</servlet-name>
<url-pattern>/admin/logging.jsp</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>.xsl</extension>
<!-- per http://www.w3.org/TR/2006/PR-xslt20-20061121/ -->
<mime-type>application/xslt+xml</mime-type>
</mime-mapping>
<!--
| Needs to be commented out to use HTTP
| Uncomment to re-renable https alongside changing alfresco.secureComms=https
| in the solrcore.properties
|
-->
<!--
<security-constraint>
<web-resource-collection>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>repository</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Solr</realm-name>
</login-config>
<security-role>
<role-name>repository</role-name>
</security-role>
-->
</web-app>

View File

@@ -1,42 +0,0 @@
<?xml version="1.0"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>${groupId}</groupId>
<artifactId>${rootArtifactId}</artifactId>
<version>${version}</version>
</parent>
<artifactId>wcmqs</artifactId>
<packaging>war</packaging>
<name>Alfresco Web Quick Start customization</name>
<description>This project allows you to customize and overlay Alfresco Web Quick Start</description>
<dependencies>
<dependency>
<groupId>${alfresco.groupId}</groupId>
<artifactId>alfresco-wcm-quickstart</artifactId>
<version>${alfresco.version}</version>
<type>war</type>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<overlays>
<!-- The current project customizations -->
<overlay />
<!-- The Alfresco WCMQS War -->
<overlay>
<artifactId>alfresco-wcm-quickstart</artifactId>
<groupId>${alfresco.groupId}</groupId>
</overlay>
</overlays>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -1,55 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//LOGGER" "../dtd/log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- Appenders -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c] %m%n" />
</layout>
</appender>
<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="${app.log.dir}webquickstart.log" />
<param name="Append" value="true" />
<param name="Encoding" value="UTF-8" />
<param name="DatePattern" value="'.'yyyy-MM-dd" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c] %m%n" />
</layout>
</appender>
<!-- Application Loggers -->
<logger name="org.alfresco.samples.quickstart">
<level value="warn" />
</logger>
<!-- 3rdparty Loggers -->
<logger name="org.springframework.core">
<level value="warn" />
</logger>
<logger name="org.springframework.beans">
<level value="warn" />
</logger>
<logger name="org.springframework.context">
<level value="warn" />
</logger>
<logger name="org.springframework.web">
<level value="warn" />
</logger>
<logger name="org.alfresco.wcm">
<level value="warn" />
</logger>
<!-- Root Logger -->
<root>
<priority value="${app.log.root.level}" />
<appender-ref ref="console" />
<appender-ref ref="file" />
</root>
</log4j:configuration>

View File

@@ -1,25 +1,25 @@
------
Alfresco Maven All-in-One Archetype Advanced Usage
Alfresco All-in-One Archetype Advanced Usage
------
Gabriele Columbro
------
Nov 2012
Aug 2014
------
All-in-One Archetype properties
In each of the modules of the archetype (as in the whole Maven Alfresco SDK\x99) properties are configurable at many levels:
In each of the modules of the archetype (as in the whole Alfresco SDK\x99) properties are configurable at many levels:
* as POM properties
* direclty in *.properties, particularly
* For Alfresco WAR projects
* For the <<<repo>>> project
* <<<src/main/properties/<env>/alfresco-global.properties>>> (environment dependent <<<alfresco-global.properties>>> packaged in the WAR )
* <<<src/main/properties/<env>/alfresco-global.properties>>> (environment dependent <<<alfresco-global.properties>>> packaged in the WAR when running directly within the AMP project)
* For Alfresco AMP projects
* For Alfresco/Share AMP projects
* <<<src/test/properties/<env>/alfresco-global.properties>>> (environment dependent <<<alfresco-global.properties>>> for test WAR run)
@@ -36,4 +36,4 @@ Parent POM and behavior customization
To customize the behavior of your project, check out full set of the properties and plugin configurations defined in the
{{{./poms/alfresco-sdk-parent/index.html}single entry point parent POM}}.
One quick way to do that is to use the <<<maven-help-plugin:effective-pom>>> to analyze your POM at runtime.
One quick way to do that is to use the <<<maven-help-plugin:effective-pom>>> to analyze your POM at runtime.

View File

@@ -9,7 +9,7 @@
Introduction
The Alfresco All-in-One Archetype is a multi-module project,
leveraging Maven Alfresco SDK\x99 powerful capabilities to customize and run the full Alfresco platform embedded and all it's components.
leveraging Alfresco SDK\x99 powerful capabilities to customize and run the full Alfresco platform embedded and all it's components.
The archetype does not require additional download and provides a perfect starting point for full-blown Alfresco projects.
* Features
@@ -20,29 +20,48 @@ Introduction
* AMP Dependency management and overlay in an Alfresco Repository or Share WAR
* Embedded run in Jetty and embedded H2 database of the full Alfresco suite, including Repository, Share, Solr and Web Quick Start
* Embedded run in Tomcat and embedded H2 database of the full Alfresco suite, including Repository, Share, Solr
* Support for unit and integration testings
* Support for unit and integration testing and rapid development (using spring-loaded, see run.sh)
* Seamless IDE integration with Eclipse and Idea
How to create a project:
You can create the latest release archetype with the following command:
As of version 2.0-beta-3, you can create a project with the latest released archetype with the following command directly from Maven Central:
+---+
mvn archetype:generate -DarchetypeCatalog=https://artifacts.alfresco.com/nexus/content/groups/public/archetype-catalog.xml
mvn archetype:generate -Dfilter=org.alfresco.maven.archetype:alfresco-allinone-archetype
+---+
For previous versions, you need to use the Alfresco Artifacts repository:
+---+
mvn archetype:generate -Dfilter=org.alfresco.maven.archetype:alfresco-allinone-archetype -DarchetypeCatalog=https://artifacts.alfresco.com/nexus/content/groups/public/archetype-catalog.xml
+---+
You should then:
[[1]] Select the <<<alfresco-allinone-archetype>>> option
[[1]] Select the <<<alfresco-allinone-archetype>>> version
[[2]] Specify the <<<groupId>>> and <<<artifactId>>> for the project you want to create
[[3]] (<Optionally>) Select Alfresco Version / Edition (current default is: Alfresco Community 4.2.b)
[[3]] (<Optionally>) Select Alfresco Version / Edition (current default is: Alfresco Community 5.0.c)
You can find new Alfresco All-in-One project ready to go in the <<<artifactId>>> folder.
Quickstart
Once your project is created:
* Enter the project folder and run <<<./run.sh>>> (you might need to <<<chmod u+x run.sh>>> to make it executable). This will setup the SDK and start Alfresco, Share and Solr in embedded mode.
* Wait for the startup of the webapps and then go <<<http://localhost:8080>>>.
* Import the projects in your favorite IDE (with Maven integration) and start developing right away.
Usage
Instructions on how to use the Alfresco AMP archetype can be found on the {{{./usage.html}usage page}}, while
Full instructions on how to use the Alfresco All in One archetype can be found on the {{{./usage.html}usage page}}, while
for more advanced use cases refer to the {{{./advanced-usage.html}advanced usage page}}

View File

@@ -1,9 +1,9 @@
------
Alfresco Maven All-in-One Archetype Usage
Maven Alfresco All-in-One Archetype Usage
------
Gabriele Columbro
------
Nov 2012
Sep 2013
------
Prerequisites
@@ -16,40 +16,42 @@ Project layout
+---+
pom.xml
|-> amp
|-> alfresco
|-> repo-amp
|-> repo
|-> share-amp
|-> share
|-> solr
|-> wcmqs (Alfresco Web Quick Start)
|-> runner (a Jetty embedded runner / integration test runner)
|-> runner (a Tomcat embedded runner / integration test runner)
+---+
* Modules
The All-in-One Alfresco project is composed by the following modules:
* <<<amp>>>: An Repository Tier AMP project, demonstrating sample project structure and demo component loading. It can be configured to work for Share
* <<<repo-amp>>>: An Repository Tier AMP project, demonstrating sample project structure and demo component loading
* <<<alfresco>>>: An <<<alfresco.war>>> Repository Extension, overlaying the Alfresco WAR with custom resources / classes
* <<<repo>>>: An <<<alfresco.war>>> Repository Extension, overlaying the Alfresco WAR with custom resources / classes
and depending on the <<<amp>>> project
* <<<share>>>: A <<<share.war>>> extension, overlaying the Share WAR with custom resoruces / classes
* <<<share-amp>>>: A Share Tier AMP project, demonstrating sample project structure and demo component loading
* <<<share>>>: A <<<share.war>>> extension, overlaying the Share WAR with the custom developed <<<share-amp>>>
* <<<solr>>>: An Alfresco <<<alfresco-*-*-solr.zip>>> overlay / customization to configure {{{http://solr.apache.org}Apache Solr}} cores properties
* <<<wcmqs>>>: An Alfresco Web Quick Start overlay / customization. WQS Repository and Share AMPs are also installed on Alfresco and Share.
* <<<runner>>>: A Jetty + H2 runner, capable of running all the aforementioned projects in embedded mode for demo / integration-testing purposes
* <<<runner>>>: A Tomcat + H2 runner, capable of running all the aforementioned projects in embedded mode for demo / integration-testing purposes
Usage
The project provides support for typical development lifecycle use cases like
* Rapid development, in full IDE integration, and with hot classes reloading (using spring-loaded, check {{{../../prerequisites.html}prerequisites}}).
* AMP/WAR packaging
* AMP Unit testing
* AMP Unit testing and rapid development
* run embedded in Jetty + H2 database.
* run embedded in Tomcat + H2 database.
(<<NOTE>>: this is not a {{{http://www.alfresco.com/services/subscription/supported-platforms/} supported stack}} so use <<only for development purposes>>)
* Integration testing
@@ -60,13 +62,13 @@ Usage
for all the components of the Alfresco landscape. For more information, check the See the {{{./advanced-usage.html}advanced usage page}} page.
<<NOTE>>: AMPs produced with this project are fully compatible with Alfresco MMT,in fact the Alfresco Maven plugin - used to manage AMPs in this SDK - embeds the official Alfresco MMT to install depended AMPs.
<<NOTE>>: AMPs produced with this project are fully compatible with Alfresco MMT,in fact the Maven Alfresco plugin - used to manage AMPs in this SDK - embeds the official Alfresco MMT to install depended AMPs.
Commands
* Commands from the root aggregator project
<<<run.sh>>> will automatically set up the SDK and run the webapps embedded to enable rapid development
Common Alfresco project lifecycle commands you want to run from the aggregator :
Additional common Maven lifecycle commands you want to run from the aggregator are:
* <<<mvn package>>>: Runs unit tests and packages all customized modules in their respective <<<$\{project.build.directory\}/$\{project.build.finalName\}.amp>>>
@@ -80,4 +82,4 @@ Commands
* Commands from from the <<<runner>>> project
* <<<mvn jetty:run -Prun'>>> or <<<'mvn integration-test -Prun'>>> to quickly run already packaged webapps
* <<<mvn install -Prun'>>> or <<<'mvn integration-test -Prun'>>> to quickly run already packaged webapps

View File

@@ -1,7 +1,21 @@
<project>
<body>
<menu ref="parent" inherit="bottom"/>
<!-- <menu ref="parent" inherit="bottom"/> -->
<head>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', '${gaTrackingId}']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>
<menu name="Alfresco All-in-One Archetype">
<item name="Introduction" href="index.html"/>
<item name="Usage" href="usage.html"/>
@@ -9,16 +23,18 @@
</menu>
<menu name="SDK components">
<item name="Maven Alfresco SDK" href="../../index.html" />
<item name="Alfresco AMP Archetype" href="../alfresco-amp-archetype/index.html" />
<item name="Alfresco All-in-One Archetype" href="./index.html" />
<item name="Alfresco SDK Parent POM" href="../../poms/alfresco-sdk-parent/index.html" />
<item name="Alfresco Platform Distribution POM" href="https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-platform-distribution/latest/index.html" />
<item name="Alfresco Maven Plugin" href="../../plugins/alfresco-maven-plugin/index.html" />
<item name="Maven Alfresco SDK" href="../../index.html" />
<item name="Alfresco AMP Archetype" href="../alfresco-amp-archetype/index.html" />
<item name="Share AMP Archetype" href="../share-amp-archetype/index.html" />
<item name="Alfresco All-in-One Archetype" href="./index.html" />
<item name="Maven Alfresco SDK Parent POM" href="../../poms/alfresco-sdk-parent/index.html" />
<item name="Alfresco Platform Distribution POM" href="https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-platform-distribution/latest/index.html" />
<item name="Maven Alfresco Plugin" href="../../plugins/alfresco-maven-plugin/index.html" />
</menu>
<menu name="Maven Alfresco Community">
<item name="Alfresco Maven Wiki Docs" href="http://wiki.alfresco.com/wiki/Maven_Alfresco_SDK" />
<menu name="Alfresco Documentation">
<item name="Official Maven Alfresco SDK docs" href="http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html" />
<item name="Maven Alfresco Wiki Documentation" href="http://wiki.alfresco.com/wiki/Maven_Alfresco_SDK" />
<item name="Alfresco with Maven for Dummies" href="https://wiki.alfresco.com/wiki/Maven_For_Dummies" />
<item name="Developer Access (Google Code)" href="http://code.google.com/p/maven-alfresco-archetypes/" />
<item name="Gabriele Columbro's blog" href="http://www.mindthegab.com/" />

View File

@@ -0,0 +1,4 @@
version=0.1-SNAPSHOT
groupId=archetype.it
artifactId=allInOneTest
package=it.pkg

View File

@@ -0,0 +1,5 @@
version=0.1-SNAPSHOT
groupId=archetype.it
artifactId=allInOneTestRunEnterprise
package=it.pkg

View File

@@ -0,0 +1 @@
verify -Prun -Penterprise -Dmaven.tomcat.fork=true

View File

@@ -0,0 +1,4 @@
version=0.1-SNAPSHOT
groupId=archetype.it
artifactId=allInOneTestRun
package=it.pkg

View File

@@ -0,0 +1 @@
verify -Prun -Dmaven.tomcat.fork=true

Some files were not shown because too many files have changed in this diff Show More