mirror of
https://github.com/Alfresco/alfresco-sdk.git
synced 2025-09-10 14:12:12 +00:00
Compare commits
356 Commits
alfresco-s
...
alfresco-s
Author | SHA1 | Date | |
---|---|---|---|
|
3ae8d043aa | ||
|
ba36d1ad5e | ||
|
f54fb5e3d3 | ||
|
1a8d8b76b6 | ||
|
55ac6917b7 | ||
|
993d5dcefe | ||
|
0411bc5b1d | ||
|
07bb743cfd | ||
|
ccb9f3d86f | ||
|
aebda9bf06 | ||
|
b7dbbe8995 | ||
|
c9b33b4f59 | ||
|
93dde46f51 | ||
|
addbc750c4 | ||
|
e302055caf | ||
|
3b7e32df20 | ||
|
8178eac5b8 | ||
|
b5ec7b415d | ||
|
278ba7f600 | ||
|
fef948b982 | ||
|
245a51402d | ||
|
3630cced6d | ||
|
892920c114 | ||
|
24500024ed | ||
|
85c7e11bb6 | ||
|
aede276f9b | ||
|
264d326bf2 | ||
|
d2868bdfae | ||
|
673461b6e2 | ||
|
6f1d01394d | ||
|
f5404b9d40 | ||
|
e6394e25b7 | ||
|
0fd842192b | ||
|
be8e10a556 | ||
|
3031b401a2 | ||
|
723b309670 | ||
|
051e967240 | ||
|
1f46a9e2ff | ||
|
3cbdb5dc8e | ||
|
07543c68d3 | ||
|
a07219e6e6 | ||
|
4e26291761 | ||
|
c2ac314930 | ||
|
08acf1f433 | ||
|
b9331c365f | ||
|
63bd9a63c0 | ||
|
f1dbb608d9 | ||
|
657d16b91c | ||
|
7739556c94 | ||
|
d7b0805cef | ||
|
0b8db99cd8 | ||
|
eba635c8f8 | ||
|
2782f30a42 | ||
|
a32a537206 | ||
|
49160034cf | ||
|
50dac567c2 | ||
|
9a7630acfb | ||
|
be11344137 | ||
|
db9d7d637c | ||
|
04fe0678d7 | ||
|
b46f173fb4 | ||
|
d69f7e4937 | ||
|
788347a5dd | ||
|
d6f11dd977 | ||
|
f0955cff98 | ||
|
05b2cfbb1e | ||
|
558d4b422c | ||
|
d040ceb60d | ||
|
a8db2ddde0 | ||
|
c9d1878cb9 | ||
|
99c0a14220 | ||
|
6a1b09c102 | ||
|
19d76702bd | ||
|
b88a0ae73b | ||
|
30d72ee6bd | ||
|
75672bd2c4 | ||
|
58843e516c | ||
|
db8c5e9cfd | ||
|
027ddb7df8 | ||
|
9faf59972b | ||
|
89566dc20b | ||
|
4bea907d8d | ||
|
89d4d7921a | ||
|
c41d713643 | ||
|
a49c657441 | ||
|
8968f8227b | ||
|
595a1c4cbc | ||
|
6bc23959b8 | ||
|
b84bcf798c | ||
|
38f69583d4 | ||
|
e997a33fc9 | ||
|
07c06a2bbd | ||
|
a724b3596e | ||
|
d46fa394e7 | ||
|
101a04e309 | ||
|
6eb8903562 | ||
|
4fca9989fd | ||
|
e8c1e19ecb | ||
|
9ff222e8ed | ||
|
a05d69eac2 | ||
|
e9fa82da5c | ||
|
d2c6335869 | ||
|
3010c9773a | ||
|
b7fff632e7 | ||
|
5b3b5d3914 | ||
|
9b5db76577 | ||
|
43ad42aac8 | ||
|
9c5f1e9e0d | ||
|
c46b0b86d2 | ||
|
99031d5def | ||
|
0bdacc4787 | ||
|
b6e170a0ce | ||
|
a37b121cb6 | ||
|
c7591ca848 | ||
|
54a067325a | ||
|
ceed7af6fe | ||
|
377aaa5459 | ||
|
b226302572 | ||
|
876f6286fc | ||
|
5d59d6cd27 | ||
|
6d4b901129 | ||
|
0854929d99 | ||
|
8415da72b0 | ||
|
14cd4be39c | ||
|
f2f5698a3b | ||
|
5b83b99549 | ||
|
181951ed99 | ||
|
a4711142e6 | ||
|
78d1466220 | ||
|
d99539c9b0 | ||
|
30bfc14422 | ||
|
641aa6bb8e | ||
|
f031c76a41 | ||
|
2ad03e3f5c | ||
|
7275ba32e8 | ||
|
9bf50267dd | ||
|
bbe3de2abb | ||
|
5c01e8127c | ||
|
9a1b97e64d | ||
|
b3955a1b4f | ||
|
2e546a1cae | ||
|
9dd9f530bb | ||
|
7c0ac3afb6 | ||
|
2cbfd36041 | ||
|
9faf5114f3 | ||
|
27bcaa3daf | ||
|
8f29244d99 | ||
|
87af573673 | ||
|
d53184196b | ||
|
4431863500 | ||
|
d2e9b89720 | ||
|
cda786187c | ||
|
8cf04fc98d | ||
|
3b579596db | ||
|
b2afebed09 | ||
|
3707dbc5d6 | ||
|
f3d85a19ce | ||
|
6c57d9ede0 | ||
|
0958c63b44 | ||
|
eeb5e7304f | ||
|
8d06e0e791 | ||
|
a11a3a65b6 | ||
|
5936c3fcda | ||
|
3e7a6d83a9 | ||
|
235a84105a | ||
|
3465b3aaf5 | ||
|
509e4072e8 | ||
|
6e7e2d7740 | ||
|
841c72e64a | ||
|
6b83be9d9f | ||
|
f4c9a36256 | ||
|
7309916d83 | ||
|
de723e44ff | ||
|
60dac34448 | ||
|
477067a992 | ||
|
016879ec87 | ||
|
97cbaefc6f | ||
|
c854a0aad3 | ||
|
d483c01a6c | ||
|
3116123800 | ||
|
a39a11ffe7 | ||
|
41dd5ff1ea | ||
|
2a3eb3919e | ||
|
f9c4647f22 | ||
|
bc97442af7 | ||
|
9c49d6c7f9 | ||
|
2453421d1b | ||
|
5e17baa651 | ||
|
c3b43c0c68 | ||
|
6f0589ce63 | ||
|
abee710157 | ||
|
19b0d1d8a7 | ||
|
6ebaa083d4 | ||
|
80f62c65ca | ||
|
f946d711ea | ||
|
4a25c4ceba | ||
|
6140990608 | ||
|
6a6fcacf78 | ||
|
3a9f08620a | ||
|
8b48a63e0a | ||
|
d0fdd2fdfe | ||
|
603fe956c6 | ||
|
ccb6728e4c | ||
|
3ef4131ce8 | ||
|
f1735544ab | ||
|
ee6861e873 | ||
|
2a45c2eaa5 | ||
|
b33837280d | ||
|
748231a932 | ||
|
8707fbebbf | ||
|
8d5d26a1a5 | ||
|
0f6b82d7f1 | ||
|
c7559ba8ea | ||
|
96efddd7af | ||
|
1a95fab1eb | ||
|
85ea35c7b6 | ||
|
788b64ccc6 | ||
|
ec8c8748e8 | ||
|
b3d1a5b3d1 | ||
|
b265ffb00e | ||
|
d5e9278d52 | ||
|
db7e154a31 | ||
|
b84ea0ffb3 | ||
|
56f8336af3 | ||
|
790b8cdfdb | ||
|
dbec475d0b | ||
|
c541f66845 | ||
|
fab637d1cb | ||
|
e8c7fdbc8b | ||
|
b178eaffaa | ||
|
8fa82cfad5 | ||
|
f050c75615 | ||
|
f3f70d6035 | ||
|
da6c97d857 | ||
|
d4872f7e1a | ||
|
c79889e662 | ||
|
ed7e5e2ead | ||
|
126747dbc9 | ||
|
4c0e340ab4 | ||
|
cf86202c28 | ||
|
d8816d7fa7 | ||
|
e2da89679c | ||
|
c9865d2295 | ||
|
a7856633ec | ||
|
c62178aadf | ||
|
12807d4af3 | ||
|
10bd148795 | ||
|
4e625f0ce3 | ||
|
db3e891c05 | ||
|
60193a7029 | ||
|
a04ef8ad72 | ||
|
221752ef0d | ||
|
593f4e9143 | ||
|
c7296f71c2 | ||
|
d2aa943430 | ||
|
ca3fea4e1b | ||
|
6ff39d81ff | ||
|
9dae6e5279 | ||
|
28d475711e | ||
|
36ad3db030 | ||
|
10fb9dedac | ||
|
041f188760 | ||
|
ae7f3bd532 | ||
|
58cf54fe7d | ||
|
58ee1a3c79 | ||
|
2237ab18d0 | ||
|
84d01c7217 | ||
|
0ef8953ffb | ||
|
e377a9ef74 | ||
|
1448f64560 | ||
|
8bf4214be1 | ||
|
bfd6d9ccc8 | ||
|
6af15e115c | ||
|
2d8a6cfcb6 | ||
|
61b833a362 | ||
|
3b74df1b9f | ||
|
705550faae | ||
|
fa762dd48c | ||
|
640ffcff90 | ||
|
1662c159c5 | ||
|
60689add1e | ||
|
79aef16e36 | ||
|
c7b88eb3d1 | ||
|
44b6327aca | ||
|
1bc351d51b | ||
|
1c56ccdab2 | ||
|
6826351beb | ||
|
f5a4787964 | ||
|
6493b8e9d1 | ||
|
c8fc67a273 | ||
|
27236060b9 | ||
|
a0be18daee | ||
|
bbf5197a5a | ||
|
30d8412f0b | ||
|
4355d0fb50 | ||
|
55c21e7989 | ||
|
5e02d4d071 | ||
|
3a322ceb2d | ||
|
6cf5ec1305 | ||
|
7a9d6c9403 | ||
|
154da68795 | ||
|
9c4adc5dd6 | ||
|
a94f0081d0 | ||
|
600eeeacc3 | ||
|
447a22a2ae | ||
|
2bdaf65f2c | ||
|
4d1886a4da | ||
|
134d16973d | ||
|
a641eb8a6b | ||
|
5400489974 | ||
|
a46eed0d7b | ||
|
a594d9b523 | ||
|
c6beb898ad | ||
|
70533a2973 | ||
|
e97deb4f14 | ||
|
3b2e93904f | ||
|
60d805768a | ||
|
9616129c69 | ||
|
ef2dd626f1 | ||
|
cb796f3b2a | ||
|
a0c8e3e867 | ||
|
c75a137a80 | ||
|
284710ab26 | ||
|
4c6610a004 | ||
|
8e10982a4a | ||
|
cb8315e268 | ||
|
19701b28c6 | ||
|
6f3363074e | ||
|
247b23a818 | ||
|
d23ce407cd | ||
|
572cbab5f6 | ||
|
b97c4fccdc | ||
|
09fefd9034 | ||
|
8fe1d265f8 | ||
|
4489f44636 | ||
|
077ff66198 | ||
|
5c4174e0d8 | ||
|
ab258df2b4 | ||
|
84e8fd5ae7 | ||
|
f3df237cf0 | ||
|
fe2fdd3c06 | ||
|
be3b8618ae | ||
|
6d5ab89f4a | ||
|
51ab29e79b | ||
|
dab870c8f5 | ||
|
6076eecf4c | ||
|
eb583a15fd | ||
|
114d66fca1 | ||
|
faf0d89df9 | ||
|
a409cf08bd | ||
|
5421b845c8 | ||
|
fc55716499 | ||
|
17350c4328 | ||
|
feb0d736da | ||
|
ed17a67187 | ||
|
3735773e71 |
67
ISSUE_TEMPLATE.md
Normal file
67
ISSUE_TEMPLATE.md
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
<!--
|
||||||
|
|
||||||
|
If you are reporting a new issue, make sure that we do not have any duplicates
|
||||||
|
already open. You can ensure this by searching the issue list for this
|
||||||
|
repository. If there is a duplicate, please close your issue and add a comment
|
||||||
|
to the existing issue instead.
|
||||||
|
|
||||||
|
If you suspect your issue is a bug, please edit your issue description to
|
||||||
|
include the BUG REPORT INFORMATION shown below. If you fail to provide this
|
||||||
|
information within 7 days, we cannot debug your issue and will close it. We
|
||||||
|
will, however, reopen it if you later provide the information.
|
||||||
|
|
||||||
|
---------------------------------------------------
|
||||||
|
GENERAL SUPPORT INFORMATION
|
||||||
|
---------------------------------------------------
|
||||||
|
|
||||||
|
The GitHub issue tracker is for bug reports and feature requests.
|
||||||
|
General support can be found at the following locations:
|
||||||
|
|
||||||
|
- Alfresco Community - https://community.alfresco.com/community/ecm
|
||||||
|
- Post a question on StackOverflow, using the Alfresco tag
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
## I'm submitting a ... (check one with "x")
|
||||||
|
```
|
||||||
|
[ ] bug report => search github for a similar issue or PR before submitting
|
||||||
|
[ ] feature request
|
||||||
|
```
|
||||||
|
|
||||||
|
<!--- Provide a general summary of the issue in the Title above -->
|
||||||
|
|
||||||
|
## Expected Behavior
|
||||||
|
<!--- If you're describing a bug, tell us what should happen -->
|
||||||
|
<!--- If you're suggesting a change/improvement, tell us how it should work -->
|
||||||
|
|
||||||
|
## Current Behavior
|
||||||
|
<!--- If describing a bug, tell us what happens instead of the expected behavior -->
|
||||||
|
<!--- If suggesting a change/improvement, explain the difference from current behavior -->
|
||||||
|
|
||||||
|
## Possible Solution
|
||||||
|
<!--- Not obligatory, but suggest a fix/reason for the bug, -->
|
||||||
|
<!--- or ideas how to implement the addition or change -->
|
||||||
|
|
||||||
|
## Steps to Reproduce (for bugs)
|
||||||
|
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
|
||||||
|
<!--- reproduce this bug. Include code to reproduce, if relevant -->
|
||||||
|
1.
|
||||||
|
2.
|
||||||
|
3.
|
||||||
|
4.
|
||||||
|
5.
|
||||||
|
|
||||||
|
## Context
|
||||||
|
<!--- How has this issue affected you? What are you trying to accomplish? -->
|
||||||
|
<!--- Providing context helps us come up with a solution that is most useful in the real world -->
|
||||||
|
|
||||||
|
## Your Environment
|
||||||
|
<!--- Include as many relevant details about the environment you experienced the bug in -->
|
||||||
|
* Alfresco SDK version used: <!-- 2.1 / 2.2 / 3.0betaX-->
|
||||||
|
* Alfresco version used: <!-- Enterprise 5.1, Community 5.0.f or ...-->
|
||||||
|
* Output of command 'mvn -version': <!-- Maven/JDK version-->
|
||||||
|
* Link to your project: <!-- optional for having a minimal example-->
|
||||||
|
|
||||||
|
## Additional information
|
||||||
|
<!-- include screenshots or any other hint you mave have for us -->
|
66
KEYS
66
KEYS
@@ -9,6 +9,10 @@ Developers:
|
|||||||
(gpg --list-key <your email>
|
(gpg --list-key <your email>
|
||||||
&& gpg --armor --export <your email>) >> this file.
|
&& gpg --armor --export <your email>) >> this file.
|
||||||
|
|
||||||
|
################################################################
|
||||||
|
# Gabriele Columbro
|
||||||
|
################################################################
|
||||||
|
|
||||||
pub 4096R/6FE5701E 2012-03-25
|
pub 4096R/6FE5701E 2012-03-25
|
||||||
uid Gabriele Columbro (VALID CODE SIGNING KEY) <gabriele@apache.org>
|
uid Gabriele Columbro (VALID CODE SIGNING KEY) <gabriele@apache.org>
|
||||||
sub 4096R/E97059F3 2012-03-25
|
sub 4096R/E97059F3 2012-03-25
|
||||||
@@ -86,4 +90,66 @@ hrGAueS2lH5DUpjZPqClR+txnAK+hVCuFogoWsdsbRHMLkqKqhnQjWnvRrU0ud9j
|
|||||||
ytG/XwLK3RL7LTmPIC9RqlO1U1A3h5Ykw2INH/bB90lBxmydmp/PHpkhjEAEvzGW
|
ytG/XwLK3RL7LTmPIC9RqlO1U1A3h5Ykw2INH/bB90lBxmydmp/PHpkhjEAEvzGW
|
||||||
r+ipOwsWpF6kLIHUT2LuPxLqTGQCrqYtJyTp61tE
|
r+ipOwsWpF6kLIHUT2LuPxLqTGQCrqYtJyTp61tE
|
||||||
=GUM9
|
=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-----
|
-----END PGP PUBLIC KEY BLOCK-----
|
114
README.md
114
README.md
@@ -1,57 +1,71 @@
|
|||||||
# [](#features) Maven Alfresco SDK
|
# [](#features) Alfresco SDK
|
||||||
|
|
||||||
Maven Alfresco SDK for Alfresco Development and Customizations based on Apache Maven.
|
This is the home of the Alfresco SDK. The Alfresco SDK is used by developers to build extensions for the Alfresco Digital Business Platform. 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).
|
||||||
|
|
||||||
Includes support for rapid and standard development, testing, packaging, versioning and release of your Alfresco integration and extension projects. For a teaser of the SDK potential check out this video:
|
## 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.
|
||||||
[](https://www.youtube.com/watch?v=vgbY9i4w0YU)
|
|
||||||
|
|
||||||
The SDK is composed of:
|
|
||||||
|
|
||||||
- An [SDK Parent POM](https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-lifecycle-aggregator/latest/poms/alfresco-sdk-parent/index.html) which you can use in your projects to enable rapid Alfresco development features
|
|
||||||
- An [Alfresco Platform Distribution POM](https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-platform-distribution/latest/index.html) which pre-configures versions of Alfresco and common 3rd party dependency libraries, for stability purposes
|
|
||||||
- A [Maven Alfresco Plugin](https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-lifecycle-aggregator/latest/plugins/alfresco-maven-plugin/index.html) which provides AMP packaging and installation facilities (a la MMT) and other common goals for Alfresco development
|
|
||||||
- A number of *Maven Archetypes* (sample projects) including:
|
|
||||||
1. [Alfresco Repository AMP Archetype](https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-lifecycle-aggregator/latest/archetypes/alfresco-amp-archetype/index.html)
|
|
||||||
2. [Alfresco Share AMP Archetype](https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-lifecycle-aggregator/latest/archetypes/share-amp-archetype/index.html)
|
|
||||||
3. [Alfresco All-in-One Archetype](https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-lifecycle-aggregator/latest/archetypes/alfresco-allinone-archetype/index.html)
|
|
||||||
|
|
||||||
## Resources
|
|
||||||
|
|
||||||
### Developer Documentation
|
|
||||||
|
|
||||||
**SDK 2.x**: Full documentation is available at the [Maven Alfresco SDK site](https://artifacts.alfresco.com/nexus/content/groups/public/alfresco-sdk-aggregator/latest/index.html).
|
|
||||||
|
|
||||||
### Alfresco Official Documentation
|
|
||||||
|
|
||||||
Additional documentation for Alfresco Community and Enterprise, tutorials and examples is available in the [Alfresco Documentation](http://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-intro.html).
|
|
||||||
|
|
||||||
### Samples
|
|
||||||
|
|
||||||
Advanced sample projects are maintained by @ohej in the [Maven Alfresco SDK Samples project](https://github.com/Alfresco/alfresco-sdk-samples/).
|
|
||||||
|
|
||||||
|
|
||||||
### Contribute
|
|
||||||
|
|
||||||
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).
|
|
||||||
|
|
||||||
## Maven Repositories
|
|
||||||
|
|
||||||
The Maven Alfresco SDK is released in Maven Central as of version 2.0-beta-1.
|
|
||||||
|
|
||||||
Alfresco (Community and Enterprise) artifacts are instead hosted in the [Alfresco Artifacts Repository](https://artifacts.alfresco.com/nexus/).
|
|
||||||
|
|
||||||
Alfresco Community artifacts (JARs, WARs, AMPs, poms) and SDK artifacts are publicly available.
|
|
||||||
|
|
||||||
for Enterprise and Premiere licensed software access you need to get credential via the Alfresco Enterprise Support. See [public docs](http://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-tutorials-alfresco-enterprise.html) or [this KB (login required)](https://myalfresco.force.com/support/articles/en_US/Technical_Article/Where-can-I-find-the-repository-for-Enterprise-Maven-artifacts) for more details.
|
|
||||||
|
|
||||||
## License and Support
|
|
||||||
This project is released under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html). It's a community driven project which is supported for Alfresco Development (please refere to the official [Alfresco Documentation](http://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-intro.html) for supported features.
|
|
||||||
|
|
||||||
## News
|
## News
|
||||||
|
|
||||||
- 2014-09-09: SDK 2.0.0-beta-3 released to Maven Central
|
- 2017-03-27: After years of hard work, countless iterations and gathering feedback, SDK 3.0 has finally been merged into the master branch, ready for release in the coming days
|
||||||
- 2014-08-30: SDK 2.0.0-beta-1 and 2.0.0-beta-2 available in [Maven Central](http://search.maven.org/#search|ga|1|org.alfresco.maven)
|
- 2016-02-20: SDK 2.2.0 released to Maven Central. Docs for [Community](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html), [Enterprise](http://docs.alfresco.com/5.1/concepts/alfresco-sdk-intro.html), [Release notes](https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/latest/github-report.html)
|
||||||
|
- 2015-10-19: SDK 2.1.1 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)
|
||||||
|
- 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)
|
||||||
|
- 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-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), including tags, branches, issues. Allow a little time for a full cleanup of issue labels and to sort repository permissions. Please update obsolete references and bear with us as we update Alfresco Documentation to this change.
|
- 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.2.0 (latest) visit the offical Alfresco Documentation for:
|
||||||
|
|
||||||
|
- [Alfresco Community 5.1 and above](http://docs.alfresco.com/community/concepts/alfresco-sdk-intro.html)
|
||||||
|
- [Alfresco Enterprise 5.1 and above](http://docs.alfresco.com/5.1/concepts/alfresco-sdk-intro.html)
|
||||||
|
|
||||||
|
#### Previous versions Documentation
|
||||||
|
- Documentation for [Alfresco SDK 2.1](http://docs.alfresco.com/sdk2.1/concepts/alfresco-sdk-intro.html) (compatible with Alfresco 5.0.d Community and 5.0.1 Enterprise)
|
||||||
|
- Documentation for [Alfresco SDK 2.0](http://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html) (compatible with Alfresco 5.0.c 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)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Reporting Issues and Community Support
|
||||||
|
Report issues (and contribute!) [here](https://github.com/Alfresco/alfresco-sdk/issues?milestone=1&state=open) 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).
|
||||||
|
|
||||||
|
@@ -3,16 +3,16 @@
|
|||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
<groupId>org.alfresco.maven.archetype</groupId>
|
<groupId>org.alfresco.maven.archetype</groupId>
|
||||||
<artifactId>alfresco-amp-archetype</artifactId>
|
<artifactId>activiti-jar-archetype</artifactId>
|
||||||
|
|
||||||
<packaging>maven-archetype</packaging>
|
<packaging>maven-archetype</packaging>
|
||||||
<name>Maven Alfresco SDK - Repository AMP Archetype</name>
|
<name>Alfresco SDK - Activiti JAR Archetype</name>
|
||||||
<description>Sample project with full support for lifecycle and rapid development of Repository AMPs (Alfresco Module Packages)</description>
|
<description>Sample project with full support for lifecycle and rapid development of Activiti JARs</description>
|
||||||
|
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco.maven</groupId>
|
<groupId>org.alfresco.maven</groupId>
|
||||||
<artifactId>alfresco-sdk-aggregator</artifactId>
|
<artifactId>alfresco-sdk-aggregator</artifactId>
|
||||||
<version>2.0.0-beta-3</version>
|
<version>3.0.0</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
@@ -23,6 +23,10 @@
|
|||||||
<includes>
|
<includes>
|
||||||
<include>archetype-resources/pom.xml</include>
|
<include>archetype-resources/pom.xml</include>
|
||||||
<include>archetype-resources/run.sh</include>
|
<include>archetype-resources/run.sh</include>
|
||||||
|
<include>archetype-resources/run.bat</include>
|
||||||
|
<include>archetype-resources/debug.sh</include>
|
||||||
|
<include>archetype-resources/debug.bat</include>
|
||||||
|
<include>META-INF/maven/archetype-metadata.xml</include>
|
||||||
</includes>
|
</includes>
|
||||||
<filtering>true</filtering>
|
<filtering>true</filtering>
|
||||||
</resource>
|
</resource>
|
||||||
@@ -31,14 +35,19 @@
|
|||||||
<excludes>
|
<excludes>
|
||||||
<exclude>archetype-resources/pom.xml</exclude>
|
<exclude>archetype-resources/pom.xml</exclude>
|
||||||
<exclude>archetype-resources/run.sh</exclude>
|
<exclude>archetype-resources/run.sh</exclude>
|
||||||
|
<exclude>archetype-resources/run.bat</exclude>
|
||||||
|
<exclude>archetype-resources/debug.sh</exclude>
|
||||||
|
<exclude>archetype-resources/debug.bat</exclude>
|
||||||
|
<exclude>META-INF/maven/archetype-metadata.xml</exclude>
|
||||||
</excludes>
|
</excludes>
|
||||||
<filtering>false</filtering>
|
<filtering>false</filtering>
|
||||||
</resource>
|
</resource>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-resources-plugin</artifactId>
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
<version>2.6</version>
|
|
||||||
<configuration>
|
<configuration>
|
||||||
<useDefaultDelimiters>false</useDefaultDelimiters>
|
<useDefaultDelimiters>false</useDefaultDelimiters>
|
||||||
<delimiters>
|
<delimiters>
|
@@ -0,0 +1,68 @@
|
|||||||
|
<?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="Activiti JAR 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>
|
||||||
|
</requiredProperties>
|
||||||
|
|
||||||
|
<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="true">
|
||||||
|
<directory>src/main/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**/bpmn-models/**</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
|
<directory>src/main/resources</directory>
|
||||||
|
<excludes>
|
||||||
|
<exclude>**/bpmn-models/**</exclude>
|
||||||
|
</excludes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="true">
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>log4j-dev.properties</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<excludes>
|
||||||
|
<exclude>log4j-dev.properties</exclude>
|
||||||
|
</excludes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
|
<directory>src/test/license</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8">
|
||||||
|
<directory></directory>
|
||||||
|
<includes>
|
||||||
|
<include>debug.sh</include>
|
||||||
|
<include>debug.bat</include>
|
||||||
|
<include>run.sh</include>
|
||||||
|
<include>run.bat</include>
|
||||||
|
<include>README.md</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
</fileSets>
|
||||||
|
</archetype-descriptor>
|
||||||
|
R
|
@@ -0,0 +1,21 @@
|
|||||||
|
# Alfresco Activiti JAR Module - SDK 3
|
||||||
|
|
||||||
|
To run use `mvn clean install alfresco:run` or `./run.sh` and verify that it
|
||||||
|
|
||||||
|
* Runs the embedded Tomcat + H2 DB
|
||||||
|
* Runs Activiti Explorer
|
||||||
|
* Optionally runs Activiti REST
|
||||||
|
* Packages both a JAR with customization
|
||||||
|
|
||||||
|
# Few things to notice
|
||||||
|
|
||||||
|
* No parent pom
|
||||||
|
* WAR assembly is handled by the Alfresco Maven Plugin configuration
|
||||||
|
* Standard JAR packaging and layout
|
||||||
|
* Works seamlessly with Eclipse and IntelliJ IDEA
|
||||||
|
* JRebel for hot reloading, JRebel maven plugin for generating rebel.xml, agent usage: `MAVEN_OPTS=-Xms256m -Xmx1G -agentpath:/home/martin/apps/jrebel/lib/libjrebel64.so`
|
||||||
|
* [Configurable Run mojo](https://github.com/Alfresco/alfresco-sdk/blob/sdk-3.0/plugins/alfresco-maven-plugin/src/main/java/org/alfresco/maven/plugin/RunMojo.java) in the `alfresco-maven-plugin`
|
||||||
|
* No unit testing/functional tests just yet
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -0,0 +1,9 @@
|
|||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
:: Dev environment startup script for Alfresco Community ::
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
@echo off
|
||||||
|
|
||||||
|
set MAVEN_OPTS=-Xms1G -Xmx2G
|
||||||
|
|
||||||
|
mvnDebug clean install alfresco:run
|
||||||
|
|
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
MAVEN_OPTS="-Xms1G -Xmx2G" mvnDebug clean install alfresco:run
|
@@ -0,0 +1,295 @@
|
|||||||
|
<?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>
|
||||||
|
<groupId>${groupId}</groupId>
|
||||||
|
<artifactId>${artifactId}</artifactId>
|
||||||
|
<version>${version}</version>
|
||||||
|
<name>${artifactId} Activiti Jar Module - SDK 3</name>
|
||||||
|
<description>Activiti JAR Module that produces a JAR file with Java extensions such as service task delegates. It also produces an application ZIP with workflow definition, forms etc that can be deployed via /activiti-app - SDK 3</description>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<!-- Alfresco Maven Plugin version to use -->
|
||||||
|
<alfresco.sdk.version>@@alfresco.sdk.parent.version@@</alfresco.sdk.version>
|
||||||
|
|
||||||
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
|
||||||
|
<!-- Base directory for all RDBMS data and Content data -->
|
||||||
|
<activiti.datadir>${project.basedir}/activiti_data_dev</activiti.datadir>
|
||||||
|
|
||||||
|
<!-- Properties used in dependency declarations, you don't usually need to change these -->
|
||||||
|
<activiti.groupId>com.activiti</activiti.groupId>
|
||||||
|
<activiti.app.war.artifactId>activiti-app</activiti.app.war.artifactId> <!--This contains the Alfresco Activiti webapp, including the workflow engine. This webapp is also the user interface for people involved in the task and processes running in the Activiti engine. You also use this webapp to create and manage process definitions, and to display and define analytics reports on users' tasks and processes. -->
|
||||||
|
<activiti.admin.war.artifactId>activiti-admin</activiti.admin.war.artifactId> <!-- This contains the Alfresco Activiti Administrator webapp. You use this to administer and monitor your Alfresco Activiti engines.-->
|
||||||
|
|
||||||
|
<!-- The version of the Alfresco Activiti Enterprise Workflow Engine that the customization will run in -->
|
||||||
|
<activiti.version>1.5.3</activiti.version>
|
||||||
|
|
||||||
|
<!-- JRebel Hot reloading of classpath stuff and web resource stuff -->
|
||||||
|
<jrebel.version>1.1.6</jrebel.version>
|
||||||
|
|
||||||
|
<!-- Compile with Java 7, default is 5 -->
|
||||||
|
<maven.compiler.source>1.7</maven.compiler.source>
|
||||||
|
<maven.compiler.target>1.7</maven.compiler.target>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<!-- The main Activiti Enterprise application dependency that brings in all
|
||||||
|
needed classes to compile your customizations -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>${activiti.groupId}</groupId>
|
||||||
|
<artifactId>activiti-app-logic</artifactId>
|
||||||
|
<version>${activiti.version}</version>
|
||||||
|
<exclusions>
|
||||||
|
<!-- Exclude the SLF4J JAR so we don't get multiple binding warnings when running -->
|
||||||
|
<exclusion>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-log4j12</artifactId>
|
||||||
|
</exclusion>
|
||||||
|
</exclusions>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Testing -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>junit</groupId>
|
||||||
|
<artifactId>junit</artifactId>
|
||||||
|
<version>4.12</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Logging, maybe needed for testing....
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-log4j12</artifactId>
|
||||||
|
<version>1.7.5</version>
|
||||||
|
</dependency>
|
||||||
|
-->
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<!-- Create the BAR with project process definitions, forms etc -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-antrun-plugin</artifactId>
|
||||||
|
<version>1.3</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>create-app-zip</id>
|
||||||
|
<phase>package</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>run</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<tasks>
|
||||||
|
<zip destfile="${project.build.directory}/${project.artifactId}-app-${project.version}.zip">
|
||||||
|
<fileset dir="src/main/resources/apps/helloworld">
|
||||||
|
<include name="**"/>
|
||||||
|
</fileset>
|
||||||
|
</zip>
|
||||||
|
</tasks>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
The Alfresco Maven Plugin contains all the logic to run the extension
|
||||||
|
in an embedded Tomcat with the H2 database.
|
||||||
|
-->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.alfresco.maven.plugin</groupId>
|
||||||
|
<artifactId>alfresco-maven-plugin</artifactId>
|
||||||
|
<version>${alfresco.sdk.version}</version>
|
||||||
|
<configuration>
|
||||||
|
<!-- We need the flat file H2 database to run Activiti -->
|
||||||
|
<enableH2>true</enableH2>
|
||||||
|
|
||||||
|
<!-- Bring in the Activiti Workflow Engine and Management webapp (i.e. activiti-app.war) -->
|
||||||
|
<enableActivitiApp>true</enableActivitiApp>
|
||||||
|
|
||||||
|
<!-- Optionally bring in the Activiti Admin App (i.e. activiti-admin.war) -->
|
||||||
|
<enableActivitiAdmin>false</enableActivitiAdmin>
|
||||||
|
|
||||||
|
<!-- Disable all Alfresco ECM apps by default -->
|
||||||
|
<alfrescoEdition>community</alfrescoEdition>
|
||||||
|
<enablePlatform>false</enablePlatform>
|
||||||
|
<enableSolr>false</enableSolr>
|
||||||
|
<enableShare>false</enableShare>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
JARs that should be overlayed/applied to the Activiti App WAR
|
||||||
|
(i.e. activiti-app.war)
|
||||||
|
-->
|
||||||
|
<activitiModules>
|
||||||
|
<!-- Bring in this JAR project, need to be included here, otherwise resources from META-INF
|
||||||
|
will not be loaded, such as the test.html page
|
||||||
|
-->
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>${project.artifactId}</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</moduleDependency>
|
||||||
|
</activitiModules>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Hot reloading with JRebel -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.zeroturnaround</groupId>
|
||||||
|
<artifactId>jrebel-maven-plugin</artifactId>
|
||||||
|
<version>${jrebel.version}</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>generate-rebel-xml</id>
|
||||||
|
<phase>process-resources</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>generate</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<configuration>
|
||||||
|
<!-- For more information about how to configure JRebel plugin see:
|
||||||
|
http://manuals.zeroturnaround.com/jrebel/standalone/maven.html#maven-rebel-xml -->
|
||||||
|
<classpath>
|
||||||
|
<fallback>all</fallback>
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<!--
|
||||||
|
Empty resource element marks default configuration. By
|
||||||
|
default it is placed first in generated configuration.
|
||||||
|
-->
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
</classpath>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
alwaysGenerate - default is false
|
||||||
|
If 'false' - rebel.xml is generated if timestamps of pom.xml and the current rebel.xml file are not equal.
|
||||||
|
If 'true' - rebel.xml will always be generated
|
||||||
|
-->
|
||||||
|
<alwaysGenerate>true</alwaysGenerate>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
|
<version>3.0.1</version>
|
||||||
|
<configuration>
|
||||||
|
<encoding>UTF-8</encoding>
|
||||||
|
<nonFilteredFileExtensions> <!-- jpg, jpeg, gif, bmp and png are added automatically -->
|
||||||
|
<nonFilteredFileExtension>ftl</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>acp</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>svg</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>pdf</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>doc</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>docx</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>xls</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>xlsx</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>ppt</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>pptx</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>bin</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>lic</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>swf</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>zip</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>msg</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>jar</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>ttf</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>eot</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>woff</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>woff2</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>css</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>ico</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>psd</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>js</nonFilteredFileExtension>
|
||||||
|
</nonFilteredFileExtensions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
|
||||||
|
<resources>
|
||||||
|
<!-- Filter the resource files in this project and do property substitutions -->
|
||||||
|
<resource>
|
||||||
|
<directory>src/main/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
<!-- The Project JAR Should not contain any process definition stuff,
|
||||||
|
it cannot be deployed via JAR in Activiti Enterprise -->
|
||||||
|
<excludes>
|
||||||
|
<exclude>apps/**</exclude>
|
||||||
|
</excludes>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
<testResources>
|
||||||
|
<!-- Filter the test resource files in this project and do property substitutions -->
|
||||||
|
<testResource>
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
</testResource>
|
||||||
|
<!-- Copy over the Activiti license to the classpath -->
|
||||||
|
<testResource>
|
||||||
|
<directory>src/test/license</directory>
|
||||||
|
<filtering>false</filtering>
|
||||||
|
</testResource>
|
||||||
|
</testResources>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Alfresco Maven Repositories
|
||||||
|
-->
|
||||||
|
<repositories>
|
||||||
|
<!-- Alfresco ECM -->
|
||||||
|
<repository>
|
||||||
|
<id>alfresco-public</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>alfresco-public-snapshots</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>daily</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
</repository>
|
||||||
|
<!-- Alfresco Enterprise Edition Artifacts, put username/pwd for server in settings.xml -->
|
||||||
|
<repository>
|
||||||
|
<id>alfresco-private-repository</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/private</url>
|
||||||
|
</repository>
|
||||||
|
|
||||||
|
<!-- Activiti BPM -->
|
||||||
|
<repository>
|
||||||
|
<id>activiti-public</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/repositories/activiti-releases/</url>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>activiti-public-snapshots</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>daily</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
</repository>
|
||||||
|
<!-- Activiti Enterprise Edition Artifacts, put username/pwd for server in settings.xml -->
|
||||||
|
<repository>
|
||||||
|
<id>activiti-private-repository</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/repositories/activiti-enterprise-releases</url>
|
||||||
|
</repository>
|
||||||
|
</repositories>
|
||||||
|
<pluginRepositories>
|
||||||
|
<pluginRepository>
|
||||||
|
<id>alfresco-plugin-public</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
|
||||||
|
</pluginRepository>
|
||||||
|
<pluginRepository>
|
||||||
|
<id>alfresco-plugin-public-snapshots</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>daily</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
</pluginRepository>
|
||||||
|
</pluginRepositories>
|
||||||
|
|
||||||
|
</project>
|
@@ -0,0 +1,8 @@
|
|||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
:: Dev environment startup script for Alfresco Community ::
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
@echo off
|
||||||
|
|
||||||
|
set MAVEN_OPTS=-Xms1G -Xmx2G
|
||||||
|
|
||||||
|
mvn clean install alfresco:run
|
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
MAVEN_OPTS="-Xms1G -Xmx2G" mvn clean install alfresco:run
|
@@ -0,0 +1,38 @@
|
|||||||
|
#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}.tasks.service;
|
||||||
|
|
||||||
|
import org.activiti.engine.delegate.DelegateExecution;
|
||||||
|
import org.activiti.engine.delegate.JavaDelegate;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A sample service task Java implementation
|
||||||
|
*
|
||||||
|
* @author martin.bergljung@alfresco.com
|
||||||
|
*/
|
||||||
|
public class HelloWorldServiceTask implements JavaDelegate {
|
||||||
|
private static Logger logger = LoggerFactory.getLogger(HelloWorldServiceTask.class);
|
||||||
|
|
||||||
|
public void execute(DelegateExecution execution) throws Exception {
|
||||||
|
logger.debug("Hello World from the Java Service Task!");
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"models": [
|
||||||
|
{
|
||||||
|
"id": 2005,
|
||||||
|
"name": "Hello World",
|
||||||
|
"version": 1,
|
||||||
|
"modelType": 0,
|
||||||
|
"description": "The Hello World business process that is part of the Alfresco SDK 3.0 Activiti JAR Module Maven archetype",
|
||||||
|
"stencilSetId": 0,
|
||||||
|
"createdByFullName": " Administrator",
|
||||||
|
"createdBy": 1,
|
||||||
|
"lastUpdatedByFullName": " Administrator",
|
||||||
|
"lastUpdatedBy": 1,
|
||||||
|
"lastUpdated": "2016-09-29T12:38:13.716+0000"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"theme": "theme-1",
|
||||||
|
"icon": "glyphicon-cog",
|
||||||
|
"publishIdentityInfo": []
|
||||||
|
}
|
@@ -0,0 +1,141 @@
|
|||||||
|
#set( $symbol_pound = '#' )
|
||||||
|
#set( $symbol_dollar = '$' )
|
||||||
|
#set( $symbol_escape = '\' )
|
||||||
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn"
|
||||||
|
xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
|
||||||
|
xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI"
|
||||||
|
typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath"
|
||||||
|
targetNamespace="http://www.activiti.org/processdef" xmlns:modeler="http://activiti.com/modeler"
|
||||||
|
modeler:version="1.0en" modeler:exportDateTime="20160930093425488" modeler:modelId="2005"
|
||||||
|
modeler:modelVersion="11" modeler:modelLastUpdated="1475224420676">
|
||||||
|
<process id="HelloWorld" name="Hello World" isExecutable="true">
|
||||||
|
<documentation>The Hello World business process that is part of the Alfresco SDK 3.0 Activiti JAR Module Maven
|
||||||
|
archetype
|
||||||
|
</documentation>
|
||||||
|
|
||||||
|
<startEvent id="startHelloWorld" activiti:formKey="2006">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:form-reference-id><![CDATA[2006]]></modeler:form-reference-id>
|
||||||
|
<modeler:form-reference-name><![CDATA[Hello World Start]]></modeler:form-reference-name>
|
||||||
|
<modeler:editor-resource-id><![CDATA[startEvent1]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
</startEvent>
|
||||||
|
|
||||||
|
<sequenceFlow id="sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA" sourceRef="startHelloWorld"
|
||||||
|
targetRef="decideGreeting">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
</sequenceFlow>
|
||||||
|
|
||||||
|
<serviceTask id="decideGreeting" name="Decide greeting"
|
||||||
|
activiti:delegateExpression="${activiti_executeDecisionDelegate}">
|
||||||
|
<extensionElements>
|
||||||
|
<activiti:field name="decisionTableReferenceKey">
|
||||||
|
<activiti:string><![CDATA[DecideWhatGreeting]]></activiti:string>
|
||||||
|
</activiti:field>
|
||||||
|
<modeler:decisiontable-reference modeler:decisiontablereferenceid="2007"
|
||||||
|
modeler:decisiontablereferencename="Decide What Greeting"/>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-B4E2D526-60B7-47B9-856C-FC824DA15708]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
</serviceTask>
|
||||||
|
|
||||||
|
<sequenceFlow id="sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD" sourceRef="decideGreeting"
|
||||||
|
targetRef="printGreetingFromJava">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
</sequenceFlow>
|
||||||
|
|
||||||
|
<serviceTask id="printGreetingFromJava" name="Print Greeting From Java"
|
||||||
|
activiti:class="${package}.tasks.service.HelloWorldServiceTask">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-61E86F19-FC5F-4814-B9AB-2394B03171D6]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
</serviceTask>
|
||||||
|
|
||||||
|
<sequenceFlow id="sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810" sourceRef="printGreetingFromJava"
|
||||||
|
targetRef="sid-68AE120D-AB55-4ED2-AFD5-845139236AD3">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
</sequenceFlow>
|
||||||
|
|
||||||
|
<scriptTask id="sid-68AE120D-AB55-4ED2-AFD5-845139236AD3" name="Print Greeting from JS"
|
||||||
|
scriptFormat="JavaScript" activiti:autoStoreVariables="false">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-68AE120D-AB55-4ED2-AFD5-845139236AD3]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
<script><![CDATA[print("Hello World from JavaScript task:");
|
||||||
|
var userId = initiator;
|
||||||
|
print(dayGreeting + " " + userInfoBean.getUser(userId).getFullName());
|
||||||
|
print("You entered '" + greeting + "' as a greeting text.");
|
||||||
|
]]></script>
|
||||||
|
</scriptTask>
|
||||||
|
|
||||||
|
<sequenceFlow id="sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F" sourceRef="sid-68AE120D-AB55-4ED2-AFD5-845139236AD3"
|
||||||
|
targetRef="endHelloWorld">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
</sequenceFlow>
|
||||||
|
|
||||||
|
<endEvent id="endHelloWorld">
|
||||||
|
<extensionElements>
|
||||||
|
<modeler:editor-resource-id>
|
||||||
|
<![CDATA[sid-9F0B5A13-7D1F-4ADF-8A08-7B9F0D851DA6]]></modeler:editor-resource-id>
|
||||||
|
</extensionElements>
|
||||||
|
<terminateEventDefinition/>
|
||||||
|
</endEvent>
|
||||||
|
</process>
|
||||||
|
|
||||||
|
<bpmndi:BPMNDiagram id="BPMNDiagram_HelloWorld">
|
||||||
|
<bpmndi:BPMNPlane bpmnElement="HelloWorld" id="BPMNPlane_HelloWorld">
|
||||||
|
<bpmndi:BPMNShape bpmnElement="startHelloWorld" id="BPMNShape_startHelloWorld">
|
||||||
|
<omgdc:Bounds height="30.0" width="30.0" x="90.0" y="190.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="decideGreeting" id="BPMNShape_decideGreeting">
|
||||||
|
<omgdc:Bounds height="80.0" width="100.0" x="210.0" y="165.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="sid-68AE120D-AB55-4ED2-AFD5-845139236AD3"
|
||||||
|
id="BPMNShape_sid-68AE120D-AB55-4ED2-AFD5-845139236AD3">
|
||||||
|
<omgdc:Bounds height="80.0" width="100.0" x="675.0" y="165.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="endHelloWorld" id="BPMNShape_endHelloWorld">
|
||||||
|
<omgdc:Bounds height="28.0" width="28.0" x="915.0" y="191.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="printGreetingFromJava" id="BPMNShape_printGreetingFromJava">
|
||||||
|
<omgdc:Bounds height="80.0" width="100.0" x="443.0" y="165.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810"
|
||||||
|
id="BPMNEdge_sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810">
|
||||||
|
<omgdi:waypoint x="543.0" y="205.0"/>
|
||||||
|
<omgdi:waypoint x="675.0" y="205.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA"
|
||||||
|
id="BPMNEdge_sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA">
|
||||||
|
<omgdi:waypoint x="120.0" y="205.0"/>
|
||||||
|
<omgdi:waypoint x="210.0" y="205.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD"
|
||||||
|
id="BPMNEdge_sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD">
|
||||||
|
<omgdi:waypoint x="310.0" y="205.0"/>
|
||||||
|
<omgdi:waypoint x="443.0" y="205.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F"
|
||||||
|
id="BPMNEdge_sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F">
|
||||||
|
<omgdi:waypoint x="775.0" y="205.0"/>
|
||||||
|
<omgdi:waypoint x="915.0" y="205.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
</bpmndi:BPMNPlane>
|
||||||
|
</bpmndi:BPMNDiagram>
|
||||||
|
</definitions>
|
@@ -0,0 +1,403 @@
|
|||||||
|
#set( $symbol_pound = '#' )
|
||||||
|
#set( $symbol_dollar = '$' )
|
||||||
|
#set( $symbol_escape = '\' )
|
||||||
|
{
|
||||||
|
"resourceId": 2005,
|
||||||
|
"properties": {
|
||||||
|
"process_id": "HelloWorld",
|
||||||
|
"name": "Hello World",
|
||||||
|
"documentation": "The Hello World business process that is part of the Alfresco SDK 3.0 Activiti JAR Module Maven archetype",
|
||||||
|
"process_author": "",
|
||||||
|
"process_version": "",
|
||||||
|
"process_namespace": "http://www.activiti.org/processdef",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"eventlisteners": "",
|
||||||
|
"signaldefinitions": "",
|
||||||
|
"messagedefinitions": "",
|
||||||
|
"executionvariables": "",
|
||||||
|
"metadata": ""
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "BPMNDiagram"
|
||||||
|
},
|
||||||
|
"childShapes": [
|
||||||
|
{
|
||||||
|
"resourceId": "startEvent1",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "startHelloWorld",
|
||||||
|
"name": "",
|
||||||
|
"documentation": "",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"initiator": "",
|
||||||
|
"formkeydefinition": "",
|
||||||
|
"formreference": {
|
||||||
|
"id": 2006,
|
||||||
|
"name": "Hello World Start",
|
||||||
|
"referenceId": 2005,
|
||||||
|
"variablesmapping": []
|
||||||
|
},
|
||||||
|
"fieldstovariables": "",
|
||||||
|
"formproperties": ""
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "StartNoneEvent"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 120,
|
||||||
|
"y": 220
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 90,
|
||||||
|
"y": 190
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-B4E2D526-60B7-47B9-856C-FC824DA15708",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "decideGreeting",
|
||||||
|
"name": "Decide greeting",
|
||||||
|
"documentation": "",
|
||||||
|
"asynchronousdefinition": "false",
|
||||||
|
"exclusivedefinition": "false",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"multiinstance_type": "None",
|
||||||
|
"multiinstance_cardinality": "",
|
||||||
|
"multiinstance_collection": "",
|
||||||
|
"multiinstance_variable": "",
|
||||||
|
"multiinstance_condition": "",
|
||||||
|
"isforcompensation": "false",
|
||||||
|
"decisiontaskdecisiontablereference": {
|
||||||
|
"id": 2007,
|
||||||
|
"name": "Decide What Greeting",
|
||||||
|
"referenceId": 2005,
|
||||||
|
"variablesmapping": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "DecisionTask"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 310,
|
||||||
|
"y": 245
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 210,
|
||||||
|
"y": 165
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-4A014247-BF0C-436D-B3CE-EA297F2A18FA",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "",
|
||||||
|
"name": "",
|
||||||
|
"documentation": "",
|
||||||
|
"conditionsequenceflow": "",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"defaultflow": "false"
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "SequenceFlow"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-B4E2D526-60B7-47B9-856C-FC824DA15708"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 209.3515625,
|
||||||
|
"y": 205
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 120.53125,
|
||||||
|
"y": 205
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": [
|
||||||
|
{
|
||||||
|
"x": 15,
|
||||||
|
"y": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"x": 50,
|
||||||
|
"y": 40
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"target": {
|
||||||
|
"resourceId": "sid-B4E2D526-60B7-47B9-856C-FC824DA15708"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-68AE120D-AB55-4ED2-AFD5-845139236AD3",
|
||||||
|
"properties": {
|
||||||
|
"scriptformat": "JavaScript",
|
||||||
|
"scripttext": "print(\"Hello World from JavaScript task:\");\nvar userId = initiator;\nprint(dayGreeting + \" \" + userInfoBean.getUser(userId).getFullName());\nprint(\"You entered '\" + greeting + \"' as a greeting text.\");\n",
|
||||||
|
"executionvariables": "",
|
||||||
|
"overrideid": "",
|
||||||
|
"name": "Print Greeting from JS",
|
||||||
|
"documentation": "",
|
||||||
|
"asynchronousdefinition": "false",
|
||||||
|
"exclusivedefinition": "false",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"multiinstance_type": "None",
|
||||||
|
"multiinstance_cardinality": "",
|
||||||
|
"multiinstance_collection": "",
|
||||||
|
"multiinstance_variable": "",
|
||||||
|
"multiinstance_condition": "",
|
||||||
|
"isforcompensation": "false"
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "ScriptTask"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 775,
|
||||||
|
"y": 245
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 675,
|
||||||
|
"y": 165
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-9F0B5A13-7D1F-4ADF-8A08-7B9F0D851DA6",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "endHelloWorld",
|
||||||
|
"name": "",
|
||||||
|
"documentation": "",
|
||||||
|
"executionlisteners": ""
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "EndTerminateEvent"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 943,
|
||||||
|
"y": 219
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 915,
|
||||||
|
"y": 191
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-6105A21B-6A76-41EC-B88E-78B3BE4A826F",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "",
|
||||||
|
"name": "",
|
||||||
|
"documentation": "",
|
||||||
|
"conditionsequenceflow": "",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"defaultflow": "false"
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "SequenceFlow"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-9F0B5A13-7D1F-4ADF-8A08-7B9F0D851DA6"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 914.453125,
|
||||||
|
"y": 205
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 775.40625,
|
||||||
|
"y": 205
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": [
|
||||||
|
{
|
||||||
|
"x": 50,
|
||||||
|
"y": 40
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"x": 14,
|
||||||
|
"y": 14
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"target": {
|
||||||
|
"resourceId": "sid-9F0B5A13-7D1F-4ADF-8A08-7B9F0D851DA6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-61E86F19-FC5F-4814-B9AB-2394B03171D6",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "printGreetingFromJava",
|
||||||
|
"name": "Print Greeting From Java",
|
||||||
|
"documentation": "",
|
||||||
|
"asynchronousdefinition": "false",
|
||||||
|
"exclusivedefinition": "false",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"multiinstance_type": "None",
|
||||||
|
"multiinstance_cardinality": "",
|
||||||
|
"multiinstance_collection": "",
|
||||||
|
"multiinstance_variable": "",
|
||||||
|
"multiinstance_condition": "",
|
||||||
|
"isforcompensation": "false",
|
||||||
|
"servicetaskclass": "${package}.tasks.service.HelloWorldServiceTask",
|
||||||
|
"servicetaskexpression": "",
|
||||||
|
"servicetaskdelegateexpression": "",
|
||||||
|
"servicetaskfields": "",
|
||||||
|
"servicetaskresultvariable": "",
|
||||||
|
"executionvariables": ""
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "ServiceTask"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 543,
|
||||||
|
"y": 245
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 443,
|
||||||
|
"y": 165
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-AD10A830-F8B1-4DBA-9C48-DFD5136E3810",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "",
|
||||||
|
"name": "",
|
||||||
|
"documentation": "",
|
||||||
|
"conditionsequenceflow": "",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"defaultflow": "false"
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "SequenceFlow"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-68AE120D-AB55-4ED2-AFD5-845139236AD3"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 674.15625,
|
||||||
|
"y": 205
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 543.84375,
|
||||||
|
"y": 205
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": [
|
||||||
|
{
|
||||||
|
"x": 50,
|
||||||
|
"y": 40
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"x": 50,
|
||||||
|
"y": 40
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"target": {
|
||||||
|
"resourceId": "sid-68AE120D-AB55-4ED2-AFD5-845139236AD3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceId": "sid-E8B736FE-874D-4EDF-85A6-8B602F1503FD",
|
||||||
|
"properties": {
|
||||||
|
"overrideid": "",
|
||||||
|
"name": "",
|
||||||
|
"documentation": "",
|
||||||
|
"conditionsequenceflow": "",
|
||||||
|
"executionlisteners": "",
|
||||||
|
"defaultflow": "false",
|
||||||
|
"showdiamondmarker": false
|
||||||
|
},
|
||||||
|
"stencil": {
|
||||||
|
"id": "SequenceFlow"
|
||||||
|
},
|
||||||
|
"childShapes": [],
|
||||||
|
"outgoing": [
|
||||||
|
{
|
||||||
|
"resourceId": "sid-61E86F19-FC5F-4814-B9AB-2394B03171D6"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 443,
|
||||||
|
"y": 205
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 310.59375,
|
||||||
|
"y": 205
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"dockers": [
|
||||||
|
{
|
||||||
|
"x": 50,
|
||||||
|
"y": 40
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"x": 1,
|
||||||
|
"y": 40
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"target": {
|
||||||
|
"resourceId": "sid-61E86F19-FC5F-4814-B9AB-2394B03171D6"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"bounds": {
|
||||||
|
"lowerRight": {
|
||||||
|
"x": 1200,
|
||||||
|
"y": 1050
|
||||||
|
},
|
||||||
|
"upperLeft": {
|
||||||
|
"x": 0,
|
||||||
|
"y": 0
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"stencilset": {
|
||||||
|
"url": "stencilsets/bpmn2.0/bpmn2.0.json",
|
||||||
|
"namespace": "http://b3mn.org/stencilset/bpmn2.0#"
|
||||||
|
},
|
||||||
|
"ssextensions": []
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1,53 @@
|
|||||||
|
{
|
||||||
|
"referenceId": 2005,
|
||||||
|
"name": "Decide What Greeting",
|
||||||
|
"description": "Decide, depending on time of day, what greeting to display.",
|
||||||
|
"editorJson": {
|
||||||
|
"id": 2007,
|
||||||
|
"name": "Decide What Greeting",
|
||||||
|
"key": "DecideWhatGreeting",
|
||||||
|
"description": "Decide, depending on time of day, what greeting to display.",
|
||||||
|
"hitIndicator": "FIRST",
|
||||||
|
"inputExpressions": [
|
||||||
|
{
|
||||||
|
"id": "3",
|
||||||
|
"variableId": "timeofday",
|
||||||
|
"variableType": "formfield",
|
||||||
|
"type": "string",
|
||||||
|
"label": "Time of day",
|
||||||
|
"entries": null,
|
||||||
|
"newVariable": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"outputExpressions": [
|
||||||
|
{
|
||||||
|
"id": "4",
|
||||||
|
"variableId": "dayGreeting",
|
||||||
|
"variableType": "variable",
|
||||||
|
"type": "string",
|
||||||
|
"label": "DayGreeting",
|
||||||
|
"entries": null,
|
||||||
|
"newVariable": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"rules": [
|
||||||
|
{
|
||||||
|
"3": "== \"time_of_day_morning\"",
|
||||||
|
"4": "\"Good Morning!\""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"3": "== \"time_of_day_lunch\"",
|
||||||
|
"4": "\"Good Day!\""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"3": "== \"time_of_day_dinner\"",
|
||||||
|
"4": "\"Good Evening!\""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"3": "== \"time_of_day_night\"",
|
||||||
|
"4": "\"Good Night!\""
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"executionVariables": []
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 4.2 KiB |
@@ -0,0 +1,201 @@
|
|||||||
|
{
|
||||||
|
"referenceId": 2005,
|
||||||
|
"name": "Hello World Start",
|
||||||
|
"description": "The form for the Start task in the Hello World business process.",
|
||||||
|
"editorJson": {
|
||||||
|
"tabs": [],
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"fieldType": "ContainerRepresentation",
|
||||||
|
"id": "1475149613209",
|
||||||
|
"name": "Label",
|
||||||
|
"type": "container",
|
||||||
|
"value": null,
|
||||||
|
"required": false,
|
||||||
|
"readOnly": false,
|
||||||
|
"overrideId": false,
|
||||||
|
"colspan": 1,
|
||||||
|
"placeholder": null,
|
||||||
|
"minLength": 0,
|
||||||
|
"maxLength": 0,
|
||||||
|
"minValue": null,
|
||||||
|
"maxValue": null,
|
||||||
|
"regexPattern": null,
|
||||||
|
"optionType": null,
|
||||||
|
"hasEmptyValue": null,
|
||||||
|
"options": null,
|
||||||
|
"restUrl": null,
|
||||||
|
"restResponsePath": null,
|
||||||
|
"restIdProperty": null,
|
||||||
|
"restLabelProperty": null,
|
||||||
|
"tab": null,
|
||||||
|
"className": null,
|
||||||
|
"dateDisplayFormat": null,
|
||||||
|
"layout": null,
|
||||||
|
"sizeX": 2,
|
||||||
|
"sizeY": 1,
|
||||||
|
"row": -1,
|
||||||
|
"col": -1,
|
||||||
|
"visibilityCondition": null,
|
||||||
|
"numberOfColumns": 2,
|
||||||
|
"fields": {
|
||||||
|
"1": [
|
||||||
|
{
|
||||||
|
"fieldType": "FormFieldRepresentation",
|
||||||
|
"id": "greeting",
|
||||||
|
"name": "Greeting",
|
||||||
|
"type": "text",
|
||||||
|
"value": null,
|
||||||
|
"required": true,
|
||||||
|
"readOnly": false,
|
||||||
|
"overrideId": false,
|
||||||
|
"colspan": 1,
|
||||||
|
"placeholder": null,
|
||||||
|
"minLength": 0,
|
||||||
|
"maxLength": 0,
|
||||||
|
"minValue": null,
|
||||||
|
"maxValue": null,
|
||||||
|
"regexPattern": null,
|
||||||
|
"optionType": null,
|
||||||
|
"hasEmptyValue": null,
|
||||||
|
"options": null,
|
||||||
|
"restUrl": null,
|
||||||
|
"restResponsePath": null,
|
||||||
|
"restIdProperty": null,
|
||||||
|
"restLabelProperty": null,
|
||||||
|
"tab": null,
|
||||||
|
"className": null,
|
||||||
|
"params": {
|
||||||
|
"existingColspan": 1,
|
||||||
|
"maxColspan": 2
|
||||||
|
},
|
||||||
|
"dateDisplayFormat": null,
|
||||||
|
"layout": {
|
||||||
|
"row": -1,
|
||||||
|
"column": -1,
|
||||||
|
"colspan": 1
|
||||||
|
},
|
||||||
|
"sizeX": 1,
|
||||||
|
"sizeY": 1,
|
||||||
|
"row": -1,
|
||||||
|
"col": -1,
|
||||||
|
"visibilityCondition": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"2": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldType": "ContainerRepresentation",
|
||||||
|
"id": "1475149862241",
|
||||||
|
"name": "Label",
|
||||||
|
"type": "container",
|
||||||
|
"value": null,
|
||||||
|
"required": false,
|
||||||
|
"readOnly": false,
|
||||||
|
"overrideId": false,
|
||||||
|
"colspan": 1,
|
||||||
|
"placeholder": null,
|
||||||
|
"minLength": 0,
|
||||||
|
"maxLength": 0,
|
||||||
|
"minValue": null,
|
||||||
|
"maxValue": null,
|
||||||
|
"regexPattern": null,
|
||||||
|
"optionType": null,
|
||||||
|
"hasEmptyValue": null,
|
||||||
|
"options": null,
|
||||||
|
"restUrl": null,
|
||||||
|
"restResponsePath": null,
|
||||||
|
"restIdProperty": null,
|
||||||
|
"restLabelProperty": null,
|
||||||
|
"tab": null,
|
||||||
|
"className": null,
|
||||||
|
"dateDisplayFormat": null,
|
||||||
|
"layout": null,
|
||||||
|
"sizeX": 2,
|
||||||
|
"sizeY": 1,
|
||||||
|
"row": -1,
|
||||||
|
"col": -1,
|
||||||
|
"visibilityCondition": null,
|
||||||
|
"numberOfColumns": 2,
|
||||||
|
"fields": {
|
||||||
|
"1": [
|
||||||
|
{
|
||||||
|
"fieldType": "RestFieldRepresentation",
|
||||||
|
"id": "timeofday",
|
||||||
|
"name": "Time of Day",
|
||||||
|
"type": "dropdown",
|
||||||
|
"value": "Choose one...",
|
||||||
|
"required": false,
|
||||||
|
"readOnly": false,
|
||||||
|
"overrideId": false,
|
||||||
|
"colspan": 1,
|
||||||
|
"placeholder": null,
|
||||||
|
"minLength": 0,
|
||||||
|
"maxLength": 0,
|
||||||
|
"minValue": null,
|
||||||
|
"maxValue": null,
|
||||||
|
"regexPattern": null,
|
||||||
|
"optionType": null,
|
||||||
|
"hasEmptyValue": true,
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"id": "empty",
|
||||||
|
"name": "Choose one..."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "time_of_day_morning",
|
||||||
|
"name": "Morning"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "time_of_day_lunch",
|
||||||
|
"name": "Lunch"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "time_of_day_dinner",
|
||||||
|
"name": "Dinner"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "time_of_day_night",
|
||||||
|
"name": "Night"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"restUrl": null,
|
||||||
|
"restResponsePath": null,
|
||||||
|
"restIdProperty": null,
|
||||||
|
"restLabelProperty": null,
|
||||||
|
"tab": null,
|
||||||
|
"className": null,
|
||||||
|
"params": {
|
||||||
|
"existingColspan": 1,
|
||||||
|
"maxColspan": 2
|
||||||
|
},
|
||||||
|
"dateDisplayFormat": null,
|
||||||
|
"layout": {
|
||||||
|
"row": -1,
|
||||||
|
"column": -1,
|
||||||
|
"colspan": 1
|
||||||
|
},
|
||||||
|
"sizeX": 1,
|
||||||
|
"sizeY": 1,
|
||||||
|
"row": -1,
|
||||||
|
"col": -1,
|
||||||
|
"visibilityCondition": null,
|
||||||
|
"endpoint": null,
|
||||||
|
"requestHeaders": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"2": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"outcomes": [],
|
||||||
|
"javascriptEvents": [],
|
||||||
|
"className": "",
|
||||||
|
"style": "",
|
||||||
|
"customFieldTemplates": {},
|
||||||
|
"metadata": {},
|
||||||
|
"variables": [],
|
||||||
|
"gridsterForm": false
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
@@ -0,0 +1,9 @@
|
|||||||
|
# Enterprise License location
|
||||||
|
|
||||||
|
Put the Activiti Enterprise license file (activiti.lic) in this directory.
|
||||||
|
It will then be copied into the WAR..............
|
||||||
|
|
||||||
|
And then not be part of any other classpaths.
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -0,0 +1,35 @@
|
|||||||
|
server.onpremise=true
|
||||||
|
server.stencil.custom.allowed=true
|
||||||
|
server.contextroot=/activiti-app
|
||||||
|
|
||||||
|
# Database connection
|
||||||
|
datasource.driver=org.h2.Driver
|
||||||
|
datasource.url=jdbc:h2:${activiti.datadir}/h2/activiti;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0
|
||||||
|
datasource.username=alfresco
|
||||||
|
datasource.password=alfresco
|
||||||
|
hibernate.dialect=org.hibernate.dialect.H2Dialect
|
||||||
|
|
||||||
|
# Elastic Search server config for historical process data
|
||||||
|
elastic-search.server.type=none
|
||||||
|
elastic-search.cluster.name=activiti-elastic-search-cluster-dev
|
||||||
|
elastic-search.enable.http=true
|
||||||
|
elastic-search.data.path=${activiti.datadir}/es
|
||||||
|
|
||||||
|
event.generation.enabled=true
|
||||||
|
event.processing.enabled=true
|
||||||
|
|
||||||
|
# Administrator login username = email
|
||||||
|
admin.email=admin@app.activiti.com
|
||||||
|
# koala
|
||||||
|
admin.passwordHash=4efe081594ce25ee4efd9f7067f7f678a347bccf2de201f3adf2a3eb544850b465b4e51cdc3fcdde
|
||||||
|
admin.lastname=Administrator
|
||||||
|
admin.group=Superusers
|
||||||
|
|
||||||
|
# Where to store any uploaded files
|
||||||
|
contentstorage.fs.rootFolder=${activiti.datadir}/contentstore
|
||||||
|
contentstorage.fs.createRoot=true
|
||||||
|
contentstorage.fs.depth=4
|
||||||
|
contentstorage.fs.blockSize=1024
|
||||||
|
|
||||||
|
# Disable Cross-Site-Request-Forgery (CSRF) protection, so we can access from other client app via REST
|
||||||
|
security.csrf.disabled=true
|
@@ -0,0 +1,3 @@
|
|||||||
|
ldap.authentication.enabled=false
|
||||||
|
ldap.synchronization.full.enabled=false
|
||||||
|
ldap.synchronization.differential.enabled=false
|
@@ -0,0 +1,40 @@
|
|||||||
|
#set( $symbol_pound = '#' )
|
||||||
|
#set( $symbol_dollar = '$' )
|
||||||
|
#set( $symbol_escape = '\' )
|
||||||
|
|
||||||
|
# This file is copied (with RunMojo) into target/activitiApp-war/WEB-INF/classes dir before webapp deployment
|
||||||
|
#
|
||||||
|
|
||||||
|
log4j.rootLogger=INFO, CA, File
|
||||||
|
|
||||||
|
# ConsoleAppender
|
||||||
|
log4j.appender.CA=org.apache.log4j.ConsoleAppender
|
||||||
|
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.CA.layout.ConversionPattern= %d{hh:mm:ss,SSS} [%t] %-5p %c %x - %m%n
|
||||||
|
|
||||||
|
# File Appender
|
||||||
|
log4j.appender.File=org.apache.log4j.RollingFileAppender
|
||||||
|
log4j.appender.File.File=${project.build.directory}/activiti.log
|
||||||
|
log4j.appender.File.threshold=INFO
|
||||||
|
log4j.appender.File.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.File.layout.ConversionPattern=%d{ISO8601} %-5p [%c] %m%n
|
||||||
|
log4j.appender.File.MaxFileSize=100MB
|
||||||
|
log4j.appender.File.MaxBackupIndex=1
|
||||||
|
|
||||||
|
# Custom tweaks
|
||||||
|
log4j.logger.org.apache.ibatis.level=INFO
|
||||||
|
log4j.logger.javax.activation.level=INFO
|
||||||
|
log4j.logger.com.codahale.metrics=WARN
|
||||||
|
log4j.logger.com.ryantenney=WARN
|
||||||
|
log4j.logger.com.zaxxer=WARN
|
||||||
|
log4j.logger.org.apache=WARN
|
||||||
|
log4j.logger.org.hibernate=WARN
|
||||||
|
log4j.logger.org.hibernate.engine.internal=WARN
|
||||||
|
log4j.logger.org.hibernate.validator=WARN
|
||||||
|
log4j.logger.org.springframework=WARN
|
||||||
|
log4j.logger.org.springframework.web=WARN
|
||||||
|
log4j.logger.org.springframework.security=WARN
|
||||||
|
|
||||||
|
|
||||||
|
# Custom classes logging
|
||||||
|
log4j.logger.${package}.tasks.service=DEBUG
|
@@ -0,0 +1,6 @@
|
|||||||
|
log4j.rootLogger=WARN, CA
|
||||||
|
|
||||||
|
# ConsoleAppender
|
||||||
|
log4j.appender.CA=org.apache.log4j.ConsoleAppender
|
||||||
|
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
|
||||||
|
log4j.appender.CA.layout.ConversionPattern= %d{hh:mm:ss,SSS} [%t] %-5p %c %x - %m%n
|
@@ -0,0 +1,5 @@
|
|||||||
|
version=0.1-SNAPSHOT
|
||||||
|
groupId=archetype.it
|
||||||
|
artifactId=activitiJARTest
|
||||||
|
package=it.pkg
|
||||||
|
|
@@ -0,0 +1 @@
|
|||||||
|
verify -Dmaven.test.skip=true
|
@@ -0,0 +1,4 @@
|
|||||||
|
version=0.1-SNAPSHOT
|
||||||
|
groupId=archetype.it
|
||||||
|
artifactId=activitiJARTestRun
|
||||||
|
package=it.pkg
|
@@ -0,0 +1 @@
|
|||||||
|
install
|
@@ -5,13 +5,13 @@
|
|||||||
<groupId>org.alfresco.maven.archetype</groupId>
|
<groupId>org.alfresco.maven.archetype</groupId>
|
||||||
<artifactId>alfresco-allinone-archetype</artifactId>
|
<artifactId>alfresco-allinone-archetype</artifactId>
|
||||||
<packaging>maven-archetype</packaging>
|
<packaging>maven-archetype</packaging>
|
||||||
<name>Maven Alfresco SDK - All-in-One Archetype</name>
|
<name>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>
|
<description>Sample multi-module project for All-in-One development on the Alfresco plaftorm. Includes modules for Platform/Repository JAR and Share JAR</description>
|
||||||
|
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.alfresco.maven</groupId>
|
<groupId>org.alfresco.maven</groupId>
|
||||||
<artifactId>alfresco-sdk-aggregator</artifactId>
|
<artifactId>alfresco-sdk-aggregator</artifactId>
|
||||||
<version>2.0.0-beta-3</version>
|
<version>3.0.0</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
@@ -22,6 +22,10 @@
|
|||||||
<includes>
|
<includes>
|
||||||
<include>archetype-resources/pom.xml</include>
|
<include>archetype-resources/pom.xml</include>
|
||||||
<include>archetype-resources/run.sh</include>
|
<include>archetype-resources/run.sh</include>
|
||||||
|
<include>archetype-resources/run.bat</include>
|
||||||
|
<include>archetype-resources/debug.sh</include>
|
||||||
|
<include>archetype-resources/debug.bat</include>
|
||||||
|
<include>META-INF/maven/archetype-metadata.xml</include>
|
||||||
</includes>
|
</includes>
|
||||||
<filtering>true</filtering>
|
<filtering>true</filtering>
|
||||||
</resource>
|
</resource>
|
||||||
@@ -30,14 +34,19 @@
|
|||||||
<excludes>
|
<excludes>
|
||||||
<exclude>archetype-resources/pom.xml</exclude>
|
<exclude>archetype-resources/pom.xml</exclude>
|
||||||
<exclude>archetype-resources/run.sh</exclude>
|
<exclude>archetype-resources/run.sh</exclude>
|
||||||
|
<exclude>archetype-resources/run.bat</exclude>
|
||||||
|
<exclude>archetype-resources/debug.sh</exclude>
|
||||||
|
<exclude>archetype-resources/debug.bat</exclude>
|
||||||
|
<exclude>META-INF/maven/archetype-metadata.xml</exclude>
|
||||||
</excludes>
|
</excludes>
|
||||||
<filtering>false</filtering>
|
<filtering>false</filtering>
|
||||||
</resource>
|
</resource>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-resources-plugin</artifactId>
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
<version>2.6</version>
|
|
||||||
<configuration>
|
<configuration>
|
||||||
<useDefaultDelimiters>false</useDefaultDelimiters>
|
<useDefaultDelimiters>false</useDefaultDelimiters>
|
||||||
<delimiters>
|
<delimiters>
|
||||||
|
@@ -1,186 +1,185 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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"
|
<archetype-descriptor
|
||||||
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
|
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"
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
name="Alfresco All In One (AIO) Archetype."
|
||||||
<requiredProperties>
|
xmlns="http://maven.apache.org/plugins/maven-archetype-plugin/archetype-descriptor/1.0.0"
|
||||||
<requiredProperty key="version">
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
<defaultValue>1.0-SNAPSHOT</defaultValue>
|
<requiredProperties>
|
||||||
</requiredProperty>
|
<requiredProperty key="version">
|
||||||
<requiredProperty key="alfresco_target_groupId">
|
<defaultValue>1.0-SNAPSHOT</defaultValue>
|
||||||
<defaultValue>org.alfresco</defaultValue>
|
</requiredProperty>
|
||||||
</requiredProperty>
|
</requiredProperties>
|
||||||
<requiredProperty key="alfresco_target_version">
|
<modules>
|
||||||
<defaultValue>5.0.a</defaultValue>
|
<module id="${rootArtifactId}-platform-jar"
|
||||||
</requiredProperty>
|
name="${rootArtifactId}-platform-jar"
|
||||||
<requiredProperty key="package">
|
dir="__rootArtifactId__-platform-jar">
|
||||||
<defaultValue>(not used)</defaultValue>
|
<fileSets>
|
||||||
</requiredProperty>
|
<fileSet filtered="false" packaged="false" encoding="UTF-8">
|
||||||
</requiredProperties>
|
<directory>src/main/assembly</directory>
|
||||||
<modules>
|
<includes>
|
||||||
<module id="repo-amp" dir="repo-amp" name="repo-amp">
|
<include>**</include>
|
||||||
<fileSets>
|
</includes>
|
||||||
<fileSet filtered="false" packaged="false" encoding="UTF-8">
|
</fileSet>
|
||||||
<directory>src/main/java</directory>
|
<fileSet filtered="true" packaged="true" encoding="UTF-8">
|
||||||
<includes>
|
<directory>src/main/java</directory>
|
||||||
<include>**/*.java</include>
|
<includes>
|
||||||
</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/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**</include>
|
||||||
|
</includes>
|
||||||
|
<excludes>
|
||||||
|
<exclude>**/*-context.xml</exclude>
|
||||||
|
</excludes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="true" packaged="false">
|
||||||
|
<directory>src/main/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**/*-context.xml</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
</fileSets>
|
||||||
|
</module>
|
||||||
|
|
||||||
|
<module id="${rootArtifactId}-share-jar"
|
||||||
|
name="${rootArtifactId}-share-jar"
|
||||||
|
dir="__rootArtifactId__-share-jar">
|
||||||
|
<fileSets>
|
||||||
|
<fileSet filtered="false" packaged="false" encoding="UTF-8">
|
||||||
|
<directory>src/main/assembly</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
<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/resources/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/resources/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/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**</include>
|
||||||
|
</includes>
|
||||||
|
<excludes>
|
||||||
|
<exclude>**/__artifactId__-slingshot-application-context.xml</exclude>
|
||||||
|
<exclude>**/__artifactId__-example-widgets.xml</exclude>
|
||||||
|
</excludes>
|
||||||
|
</fileSet>
|
||||||
|
</fileSets>
|
||||||
|
</module>
|
||||||
|
|
||||||
|
<module id="integration-tests" name="integration-tests" dir="integration-tests">
|
||||||
|
<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="true">
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**/dev-log4j.properties</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**</include>
|
||||||
|
</includes>
|
||||||
|
<excludes>
|
||||||
|
<exclude>**/dev-log4j.properties</exclude>
|
||||||
|
</excludes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
|
<directory>src/test/properties</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**/*.properties</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
</fileSets>
|
||||||
|
</module>
|
||||||
|
</modules>
|
||||||
|
|
||||||
|
<fileSets>
|
||||||
|
<fileSet encoding="UTF-8" filtered="true">
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**/dev-log4j.properties</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
<fileSet encoding="UTF-8" filtered="true">
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<includes>
|
||||||
|
<include>*hotswap-agent.properties</include>
|
||||||
|
</includes>
|
||||||
</fileSet>
|
</fileSet>
|
||||||
<fileSet encoding="UTF-8" filtered="false">
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
<directory>src/main/amp</directory>
|
<directory>src/test/resources</directory>
|
||||||
<includes>
|
<includes>
|
||||||
<include>**</include>
|
|
||||||
</includes>
|
|
||||||
</fileSet>
|
|
||||||
<fileSet encoding="UTF-8" filtered="false">
|
|
||||||
<directory>src/main/amp/config/alfresco/extension/templates/webscripts</directory>
|
|
||||||
</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>tomcat</directory>
|
|
||||||
<includes>
|
|
||||||
<include>**</include>
|
|
||||||
</includes>
|
|
||||||
</fileSet>
|
|
||||||
</fileSets>
|
|
||||||
</module>
|
|
||||||
<module id="share-amp" dir="share-amp" name="share-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/main/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>tomcat</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="false">
|
|
||||||
<directory>src/main/resources</directory>
|
|
||||||
<includes>
|
|
||||||
<include>**</include>
|
|
||||||
</includes>
|
|
||||||
</fileSet>
|
|
||||||
</fileSets>
|
|
||||||
</module>
|
|
||||||
|
|
||||||
<module id="solr" dir="solr" name="solr" filtered="false">
|
|
||||||
<fileSets>
|
|
||||||
<fileSet encoding="UTF-8">
|
|
||||||
<directory>src/main/solr-properties</directory>
|
|
||||||
<includes>
|
|
||||||
<include>**</include>
|
|
||||||
<include>**</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/assembly</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/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="runner" dir="runner" name="runner" filtered="false">
|
|
||||||
<fileSets>
|
|
||||||
<fileSet encoding="UTF-8" filtered="false">
|
|
||||||
<directory>tomcat</directory>
|
|
||||||
<includes>
|
|
||||||
<include>**</include>
|
<include>**</include>
|
||||||
</includes>
|
</includes>
|
||||||
</fileSet>
|
<excludes>
|
||||||
<fileSet encoding="UTF-8" filtered="false">
|
<exclude>**/dev-log4j.properties</exclude>
|
||||||
<directory>src/main/webapp</directory>
|
<exclude>*hotswap-agent.properties</exclude>
|
||||||
<includes>
|
</excludes>
|
||||||
<include>**</include>
|
</fileSet>
|
||||||
</includes>
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
</fileSet>
|
<directory>src/test/properties</directory>
|
||||||
</fileSets>
|
<includes>
|
||||||
</module>
|
<include>**/*.properties</include>
|
||||||
</modules>
|
</includes>
|
||||||
<fileSets>
|
</fileSet>
|
||||||
<fileSet encoding="UTF-8">
|
<fileSet encoding="UTF-8" filtered="false">
|
||||||
<directory></directory>
|
<directory>src/test/license</directory>
|
||||||
<includes>
|
<includes>
|
||||||
<include>run.sh</include>
|
<include>**</include>
|
||||||
</includes>
|
</includes>
|
||||||
</fileSet>
|
</fileSet>
|
||||||
</fileSets>
|
<fileSet encoding="UTF-8">
|
||||||
|
<directory></directory>
|
||||||
|
<includes>
|
||||||
|
<include>debug.sh</include>
|
||||||
|
<include>debug.bat</include>
|
||||||
|
<include>run.sh</include>
|
||||||
|
<include>run.bat</include>
|
||||||
|
<include>README.md</include>
|
||||||
|
</includes>
|
||||||
|
</fileSet>
|
||||||
|
</fileSets>
|
||||||
</archetype-descriptor>
|
</archetype-descriptor>
|
||||||
|
@@ -0,0 +1,34 @@
|
|||||||
|
# Alfresco AIO Project - SDK 3
|
||||||
|
|
||||||
|
This is an All-In-One (AIO) project for Alfresco SDK 3.0.
|
||||||
|
|
||||||
|
Run with `mvn clean install -DskipTests=true alfresco:run` or `./run.sh` and verify that it
|
||||||
|
|
||||||
|
* Runs the embedded Tomcat + H2 DB
|
||||||
|
* Runs Alfresco Platform (Repository)
|
||||||
|
* Runs Alfresco Solr4
|
||||||
|
* Runs Alfresco Share
|
||||||
|
* Packages both as JAR and AMP assembly for modules
|
||||||
|
|
||||||
|
# Few things to notice
|
||||||
|
|
||||||
|
* No parent pom
|
||||||
|
* No WAR projects, all handled by the Alfresco Maven Plugin
|
||||||
|
* No runner project - it's all in the Alfresco Maven Plugin
|
||||||
|
* Standard JAR packaging and layout
|
||||||
|
* Works seamlessly with Eclipse and IntelliJ IDEA
|
||||||
|
* JRebel for hot reloading, JRebel maven plugin for generating rebel.xml, agent usage: `MAVEN_OPTS=-Xms256m -Xmx1G -agentpath:/home/martin/apps/jrebel/lib/libjrebel64.so`
|
||||||
|
* AMP as an assembly
|
||||||
|
* [Configurable Run mojo](https://github.com/Alfresco/alfresco-sdk/blob/sdk-3.0/plugins/alfresco-maven-plugin/src/main/java/org/alfresco/maven/plugin/RunMojo.java) in the `alfresco-maven-plugin`
|
||||||
|
* No unit testing/functional tests just yet
|
||||||
|
* Resources loaded from META-INF
|
||||||
|
* Web Fragment (this includes a sample servlet configured via web fragment)
|
||||||
|
|
||||||
|
# TODO
|
||||||
|
|
||||||
|
* Abstract assembly into a dependency so we don't have to ship the assembly in the archetype
|
||||||
|
* Purge
|
||||||
|
* Functional/remote unit tests
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -0,0 +1,31 @@
|
|||||||
|
<?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 Platform/Repository JAR Module</name>
|
||||||
|
<description>Platform/Repo JAR Module (to be included in the alfresco.war) - part of AIO - SDK 3
|
||||||
|
</description>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
|
<parent>
|
||||||
|
<groupId>${groupId}</groupId>
|
||||||
|
<artifactId>${rootArtifactId}</artifactId>
|
||||||
|
<version>${version}</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
</project>
|
@@ -0,0 +1,61 @@
|
|||||||
|
<assembly
|
||||||
|
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Note that the Module dependency specified in the configuration section for the Alfresco Maven Plugin
|
||||||
|
needs to be set to amp if any 3rd party libs should be applied by MMT:
|
||||||
|
`
|
||||||
|
<platformModules>
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>some-platform-jar</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<type>amp</type>
|
||||||
|
</moduleDependency>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<id>build-amp-file</id>
|
||||||
|
|
||||||
|
<formats>
|
||||||
|
<format>amp</format>
|
||||||
|
</formats>
|
||||||
|
|
||||||
|
<includeBaseDirectory>false</includeBaseDirectory>
|
||||||
|
|
||||||
|
<files>
|
||||||
|
<!-- Filter module.properties and put at top level in the AMP -->
|
||||||
|
<file>
|
||||||
|
<source>src/main/resources/alfresco/module/${project.artifactId}/module.properties</source>
|
||||||
|
<filtered>true</filtered>
|
||||||
|
</file>
|
||||||
|
<!-- Include AMP -> WAR mapping file (needed for custom mappings) -->
|
||||||
|
<file>
|
||||||
|
<source>src/main/assembly/file-mapping.properties</source>
|
||||||
|
<filtered>false</filtered>
|
||||||
|
</file>
|
||||||
|
</files>
|
||||||
|
|
||||||
|
<fileSets>
|
||||||
|
<!-- Anything in the assembly/web directory will end up in the /web directory in the AMP -->
|
||||||
|
<fileSet>
|
||||||
|
<directory>src/main/assembly/web</directory>
|
||||||
|
<outputDirectory>web</outputDirectory>
|
||||||
|
<filtered>true</filtered> <!-- Will filter files and substitute POM props such as for example ${project.name} -->
|
||||||
|
<excludes>
|
||||||
|
<exclude>README.md</exclude>
|
||||||
|
</excludes>
|
||||||
|
</fileSet>
|
||||||
|
</fileSets>
|
||||||
|
|
||||||
|
<!-- Include the project artifact (JAR) in the /lib directory in the AMP, and any 3rd party libraries (JARs)
|
||||||
|
used by the customization.
|
||||||
|
-->
|
||||||
|
<dependencySets>
|
||||||
|
<dependencySet>
|
||||||
|
<outputDirectory>lib</outputDirectory>
|
||||||
|
</dependencySet>
|
||||||
|
</dependencySets>
|
||||||
|
|
||||||
|
</assembly>
|
@@ -1,14 +1,27 @@
|
|||||||
# Custom AMP to WAR location mappings
|
# Custom AMP to WAR location mappings
|
||||||
|
|
||||||
#
|
#
|
||||||
# The following property can be used to include the standard set of 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
|
# 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
|
# 'true', i.e. the default mappings will be augmented or modified by values in
|
||||||
# this file.
|
# this file.
|
||||||
#
|
#
|
||||||
include.default=true
|
# Default mappings are:
|
||||||
|
#
|
||||||
#
|
# /config=/WEB-INF/classes
|
||||||
# Custom mappings. If 'include.default' is false, then this is the complete set.
|
# /lib=/WEB-INF/lib
|
||||||
#
|
# /licenses=/WEB-INF/licenses
|
||||||
/web=/
|
# /web/jsp=/jsp
|
||||||
|
# /web/css=/css
|
||||||
|
# /web/images=/images
|
||||||
|
# /web/scripts=/scripts
|
||||||
|
# /web/php=/php
|
||||||
|
#
|
||||||
|
include.default=true
|
||||||
|
|
||||||
|
#
|
||||||
|
# Custom mappings. If 'include.default' is false, then this is the complete set.
|
||||||
|
# Map /web to / in AMP so we can override things like favicon.ico
|
||||||
|
#
|
||||||
|
/web=/
|
||||||
|
|
@@ -0,0 +1,22 @@
|
|||||||
|
# Web resources that should override out-of-the-box files
|
||||||
|
|
||||||
|
Put here any web resources that should override out-of-the-box
|
||||||
|
web resources, such as favicon.ico. They will then end up in the
|
||||||
|
*/web* directory in the AMP, and applied to the WAR, and override
|
||||||
|
any existing web resources in the Alfresco.WAR.
|
||||||
|
|
||||||
|
**Note**. Module dependency needs to be set to amp for the web resources to be applied by MMT:
|
||||||
|
|
||||||
|
`
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>some-platform-jar</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<type>amp</type>
|
||||||
|
</moduleDependency>
|
||||||
|
`
|
||||||
|
|
||||||
|
**Important**. New web resources should not be located here, but instead
|
||||||
|
in the usual place in the *src/main/resources/META-INF/resources* directory.
|
||||||
|
|
||||||
|
|
@@ -0,0 +1,35 @@
|
|||||||
|
#set( $symbol_pound = '#' )
|
||||||
|
#set( $symbol_dollar = '$' )
|
||||||
|
#set( $symbol_escape = '\' )
|
||||||
|
/**
|
||||||
|
* Copyright (C) 2017 Alfresco Software Limited.
|
||||||
|
* <p/>
|
||||||
|
* This file is part of the Alfresco SDK project.
|
||||||
|
* <p/>
|
||||||
|
* 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
|
||||||
|
* <p/>
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* <p/>
|
||||||
|
* 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}.platformsample;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class does nothing except dump some output to <i>system.out</i>.
|
||||||
|
* This is a sample taken from Maven Alfresco SDK
|
||||||
|
*
|
||||||
|
* @author Derek Hulley
|
||||||
|
*/
|
||||||
|
public class Demo
|
||||||
|
{
|
||||||
|
public void init()
|
||||||
|
{
|
||||||
|
System.out.println("Platform JAR Module class has been loaded");
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,84 @@
|
|||||||
|
#set($symbol_pound='#')
|
||||||
|
#set($symbol_dollar='$')
|
||||||
|
#set($symbol_escape='\' )
|
||||||
|
/**
|
||||||
|
* Copyright (C) 2017 Alfresco Software Limited.
|
||||||
|
* <p/>
|
||||||
|
* This file is part of the Alfresco SDK project.
|
||||||
|
* <p/>
|
||||||
|
* 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
|
||||||
|
* <p/>
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* <p/>
|
||||||
|
* 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}.platformsample;
|
||||||
|
|
||||||
|
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.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
|
||||||
|
* NodeService to display them
|
||||||
|
*
|
||||||
|
* @author Gabriele Columbro
|
||||||
|
* @author Maurizio Pillitu
|
||||||
|
*/
|
||||||
|
public class DemoComponent extends AbstractModuleComponent {
|
||||||
|
private static Log logger = 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
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
protected void executeInternal() throws Throwable {
|
||||||
|
System.out.println("DemoComponent has been executed");
|
||||||
|
logger.debug("Test debug logging. Congratulation your JAR Module is working");
|
||||||
|
logger.info("This is only for information purposes. 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
|
||||||
|
* under a certain node.
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public int childNodesCount(NodeRef nodeRef) {
|
||||||
|
return nodeService.countChildAssocs(nodeRef, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the NodeRef of "Company Home"
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public NodeRef getCompanyHome()
|
||||||
|
|
||||||
|
{
|
||||||
|
return nodeLocatorService.getNode("companyhome", null, null);
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,51 @@
|
|||||||
|
#set($symbol_pound='#')
|
||||||
|
#set($symbol_dollar='$')
|
||||||
|
#set($symbol_escape='\' )
|
||||||
|
/**
|
||||||
|
* Copyright (C) 2017 Alfresco Software Limited.
|
||||||
|
* <p/>
|
||||||
|
* This file is part of the Alfresco SDK project.
|
||||||
|
* <p/>
|
||||||
|
* 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
|
||||||
|
* <p/>
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* <p/>
|
||||||
|
* 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}.platformsample;
|
||||||
|
|
||||||
|
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 org.apache.commons.logging.Log;
|
||||||
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
|
||||||
|
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 {
|
||||||
|
private static Log logger = LogFactory.getLog(HelloWorldWebScript.class);
|
||||||
|
|
||||||
|
protected Map<String, Object> executeImpl(
|
||||||
|
WebScriptRequest req, Status status, Cache cache) {
|
||||||
|
Map<String, Object> model = new HashMap<String, Object>();
|
||||||
|
model.put("fromJava", "HelloFromJava");
|
||||||
|
|
||||||
|
logger.debug("Your 'Hello World' Web Script was called!");
|
||||||
|
|
||||||
|
return model;
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1 @@
|
|||||||
|
Test 123
|
@@ -1,7 +1,8 @@
|
|||||||
<webscript>
|
<webscript>
|
||||||
<shortname>Javascript Sample Webscript</shortname>
|
<shortname>Hello World Sample Webscript</shortname>
|
||||||
<description>Hands back a greeting</description>
|
<description>Hands back a greeting</description>
|
||||||
<url>/sample/helloworld</url>
|
<url>/sample/helloworld</url>
|
||||||
<authentication>user</authentication>
|
<authentication>user</authentication>
|
||||||
<format default="html"></format>
|
<format default="html"></format>
|
||||||
|
<lifecycle>sample</lifecycle>
|
||||||
</webscript>
|
</webscript>
|
@@ -0,0 +1 @@
|
|||||||
|
Message: '${fromJS}' '${fromJava}'
|
@@ -0,0 +1 @@
|
|||||||
|
model["fromJS"] = "Hello from JS!";
|
@@ -0,0 +1,5 @@
|
|||||||
|
## This Alfresco Platform 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.
|
||||||
|
##
|
@@ -0,0 +1,40 @@
|
|||||||
|
#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-3.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="${artifactId}.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>
|
||||||
|
<property name="labels">
|
||||||
|
<list>
|
||||||
|
<!-- Bootstrap Resource Bundles for the content model types, aspects, properties etc -->
|
||||||
|
<value>alfresco/module/${project.artifactId}/messages/content-model</value>
|
||||||
|
</list>
|
||||||
|
</property>
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
<bean id="${package}.sampleprocess.workflowBootstrap" parent="workflowDeployer">
|
||||||
|
<property name="workflowDefinitions">
|
||||||
|
<list>
|
||||||
|
<props>
|
||||||
|
<prop key="engineId">activiti</prop>
|
||||||
|
<prop key="location">alfresco/module/${project.artifactId}/workflow/sample-process.bpmn20.xml</prop>
|
||||||
|
<prop key="mimetype">text/xml</prop>
|
||||||
|
</props>
|
||||||
|
</list>
|
||||||
|
</property>
|
||||||
|
</bean>
|
||||||
|
</beans>
|
@@ -0,0 +1,44 @@
|
|||||||
|
#set( $symbol_pound = '#' )
|
||||||
|
#set( $symbol_dollar = '$' )
|
||||||
|
#set( $symbol_escape = '\' )
|
||||||
|
<?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.
|
||||||
|
-->
|
||||||
|
<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-3.0.xsd">
|
||||||
|
|
||||||
|
<!-- A simple class that is initialized by Spring -->
|
||||||
|
<bean id="${package}.Demo" class="${package}.platformsample.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 DB.
|
||||||
|
So doing for example $ mvn clean install alfresco:run 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}.DemoComponent" class="${package}.platformsample.DemoComponent" parent="module.baseComponent" >
|
||||||
|
<property name="moduleId" value="${artifactId}" /> <!-- See module.properties -->
|
||||||
|
<property name="name" value="DemoComponent" />
|
||||||
|
<property name="description" value="A demonstration component" />
|
||||||
|
<property name="sinceVersion" value="1.0" />
|
||||||
|
<property name="appliesFromVersion" value="0.99" /> <!-- 1.0 would not work here when using SNAPSHOT version in project -->
|
||||||
|
<property name="nodeService" ref="NodeService" />
|
||||||
|
<property name="nodeLocatorService" ref="nodeLocatorService" />
|
||||||
|
</bean>
|
||||||
|
|
||||||
|
|
||||||
|
</beans>
|
@@ -1,25 +1,29 @@
|
|||||||
<?xml version='1.0' encoding='UTF-8'?>
|
#set( $symbol_pound = '#' )
|
||||||
<!--
|
#set( $symbol_dollar = '$' )
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
#set( $symbol_escape = '\' )
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
this work for additional information regarding copyright ownership.
|
<!--
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
(the "License"); you may not use this file except in compliance with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
the License. You may obtain a copy of the License at
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
http://www.apache.org/licenses/LICENSE-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
|
||||||
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.
|
|
||||||
|
|
||||||
-->
|
|
||||||
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
|
|
||||||
|
|
||||||
<beans>
|
|
||||||
|
|
||||||
<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 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-3.0.xsd">
|
||||||
|
<bean id="webscript.alfresco.tutorials.helloworld.get"
|
||||||
|
class="${package}.platformsample.HelloWorldWebScript"
|
||||||
|
parent="webscript">
|
||||||
|
</bean>
|
||||||
</beans>
|
</beans>
|
@@ -0,0 +1,6 @@
|
|||||||
|
# This file should contain content model labels
|
||||||
|
|
||||||
|
acme_contentModel.type.acme_document.title=ACME Document
|
||||||
|
acme_contentModel.aspect.acme_securityClassified.title=ACME Security Classified
|
||||||
|
acme_contentModel.property.acme_documentId.title=Document Id
|
||||||
|
acme_contentModel.property.acme_securityClassification.title=Security Classification
|
@@ -0,0 +1,85 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<model name="acme:contentModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
|
||||||
|
|
||||||
|
<!-- Optional meta-data about the model -->
|
||||||
|
<description>Sample Document Model</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 the ACME company -->
|
||||||
|
<namespaces>
|
||||||
|
<namespace uri="http://www.acme.org/model/content/1.0" prefix="acme"/>
|
||||||
|
</namespaces>
|
||||||
|
|
||||||
|
<constraints>
|
||||||
|
<constraint name="acme:securityClassificationOptions" type="LIST">
|
||||||
|
<parameter name="allowedValues">
|
||||||
|
<list>
|
||||||
|
<value></value>
|
||||||
|
<!-- Empty for default search-->
|
||||||
|
<value>Public</value>
|
||||||
|
<value>Client Confidential</value>
|
||||||
|
<value>Company Confidential</value>
|
||||||
|
<value>Strictly Confidential</value>
|
||||||
|
</list>
|
||||||
|
</parameter>
|
||||||
|
</constraint>
|
||||||
|
</constraints>
|
||||||
|
|
||||||
|
<!-- ===============================================================================================================
|
||||||
|
Constraints, Types, and Aspects go here...
|
||||||
|
-->
|
||||||
|
|
||||||
|
<types>
|
||||||
|
<!--
|
||||||
|
ACME Enterprise-wide Document root type.
|
||||||
|
All other custom document types would extend this one.
|
||||||
|
-->
|
||||||
|
<type name="acme:document">
|
||||||
|
<title>Sample Document Type</title>
|
||||||
|
<parent>cm:content</parent>
|
||||||
|
<properties>
|
||||||
|
<property name="acme:documentId">
|
||||||
|
<title>Document Identification Number</title>
|
||||||
|
<type>d:text</type>
|
||||||
|
</property>
|
||||||
|
</properties>
|
||||||
|
<mandatory-aspects>
|
||||||
|
<aspect>acme:securityClassified</aspect>
|
||||||
|
</mandatory-aspects>
|
||||||
|
</type>
|
||||||
|
</types>
|
||||||
|
|
||||||
|
<aspects>
|
||||||
|
<!-- A document can have security classification applied and
|
||||||
|
faceted search is specifically enabled for best performance and we change
|
||||||
|
default index config to not tokenize the value. -->
|
||||||
|
<aspect name="acme:securityClassified">
|
||||||
|
<title>ACME Security Classified</title>
|
||||||
|
<description>Content has been security classified</description>
|
||||||
|
<properties>
|
||||||
|
<property name="acme:securityClassification">
|
||||||
|
<type>d:text</type>
|
||||||
|
<index enabled="true">
|
||||||
|
<atomic>true</atomic>
|
||||||
|
<stored>false</stored>
|
||||||
|
<tokenised>false</tokenised>
|
||||||
|
</index>
|
||||||
|
<constraints>
|
||||||
|
<constraint ref="acme:securityClassificationOptions"/>
|
||||||
|
</constraints>
|
||||||
|
</property>
|
||||||
|
</properties>
|
||||||
|
</aspect>
|
||||||
|
</aspects>
|
||||||
|
|
||||||
|
</model>
|
@@ -0,0 +1,26 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<model name="acmew:workflowModel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
|
||||||
|
<!-- Optional meta-data about the model -->
|
||||||
|
<description>Sample Workflow Model</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.acme.org/model/workflow/1.0" prefix="acmew"/>
|
||||||
|
</namespaces>
|
||||||
|
|
||||||
|
<!-- ===============================================================================================================
|
||||||
|
Constraints, Types, and Aspects go here...
|
||||||
|
-->
|
||||||
|
</model>
|
||||||
|
|
@@ -14,11 +14,19 @@
|
|||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
|
|
||||||
-->
|
-->
|
||||||
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
|
|
||||||
|
<beans xmlns="http://www.springframework.org/schema/beans"
|
||||||
<beans>
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
<!-- This is filtered by Maven at build time, so that module name is single sourced. -->
|
xsi:schemaLocation="http://www.springframework.org/schema/beans
|
||||||
<import resource="classpath:alfresco/module/${project.artifactId}/context/service-context.xml" />
|
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
|
||||||
|
|
||||||
</beans>
|
<!-- This is filtered by Maven at build time, so that module name is single sourced. -->
|
||||||
|
<!-- Note. The bootstrap-context.xml file has to be loaded first.
|
||||||
|
Otherwise your custom models are not yet loaded when your service beans are instantiated and you
|
||||||
|
cannot for example register policies on them. -->
|
||||||
|
<import resource="classpath:alfresco/module/${project.artifactId}/context/bootstrap-context.xml" />
|
||||||
|
<import resource="classpath:alfresco/module/${project.artifactId}/context/service-context.xml" />
|
||||||
|
<import resource="classpath:alfresco/module/${project.artifactId}/context/webscript-context.xml" />
|
||||||
|
|
||||||
|
</beans>
|
@@ -24,7 +24,7 @@ module.id=${project.artifactId}
|
|||||||
#module.aliases=myModule-123, my-module
|
#module.aliases=myModule-123, my-module
|
||||||
module.title=${project.name}
|
module.title=${project.name}
|
||||||
module.description=${project.description}
|
module.description=${project.description}
|
||||||
module.version=${noSnapshotVersion}
|
module.version=${project.version}
|
||||||
|
|
||||||
# The following optional properties can be used to prevent the module from being added
|
# The following optional properties can be used to prevent the module from being added
|
||||||
# to inappropriate versions of the WAR file.
|
# to inappropriate versions of the WAR file.
|
@@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:activiti="http://activiti.org/bpmn"
|
||||||
|
xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC"
|
||||||
|
xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema"
|
||||||
|
expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
|
||||||
|
|
||||||
|
<process id="my-process">
|
||||||
|
|
||||||
|
<startEvent id="start" />
|
||||||
|
<sequenceFlow id="flow1" sourceRef="start" targetRef="someTask" />
|
||||||
|
|
||||||
|
<userTask id="someTask" name="Activiti is awesome!" />
|
||||||
|
<sequenceFlow id="flow2" sourceRef="someTask" targetRef="end" />
|
||||||
|
|
||||||
|
<endEvent id="end" />
|
||||||
|
|
||||||
|
</process>
|
||||||
|
|
||||||
|
</definitions>
|
@@ -0,0 +1,56 @@
|
|||||||
|
#set($symbol_pound='#')
|
||||||
|
#set($symbol_dollar='$')
|
||||||
|
#set($symbol_escape='\' )
|
||||||
|
/**
|
||||||
|
* Copyright (C) 2017 Alfresco Software Limited.
|
||||||
|
* <p/>
|
||||||
|
* This file is part of the Alfresco SDK project.
|
||||||
|
* <p/>
|
||||||
|
* 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
|
||||||
|
* <p/>
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* <p/>
|
||||||
|
* 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}.platformsample;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
import org.springframework.extensions.webscripts.*;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Unit testing the Web Script Java Controller
|
||||||
|
*
|
||||||
|
* @author martin.bergljung@alfresco.com
|
||||||
|
* @version 1.0
|
||||||
|
* @since 3.0
|
||||||
|
*/
|
||||||
|
public class HelloWorldWebScriptControllerTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testController() {
|
||||||
|
WebScriptRequest req = Mockito.mock(WebScriptRequest.class);
|
||||||
|
Status status = Mockito.mock(Status.class);
|
||||||
|
Cache cache = Mockito.mock(Cache.class);
|
||||||
|
|
||||||
|
String helloPropName = "fromJava";
|
||||||
|
String helloPropExpectedValue = "HelloFromJava";
|
||||||
|
HelloWorldWebScript ws = new HelloWorldWebScript();
|
||||||
|
Map<String, Object> model = ws.executeImpl(req, status, cache);
|
||||||
|
|
||||||
|
assertNotNull("Response from Web Script Java Controller is null", model);
|
||||||
|
assertEquals("Incorrect Web Script Java Controller Response",
|
||||||
|
helloPropExpectedValue, model.get(helloPropName));
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,44 @@
|
|||||||
|
<?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 JAR Module</name>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
<description>Sample Share JAR Module (to be included in the share.war) - part of AIO - SDK 3</description>
|
||||||
|
|
||||||
|
<parent>
|
||||||
|
<groupId>${groupId}</groupId>
|
||||||
|
<artifactId>${rootArtifactId}</artifactId>
|
||||||
|
<version>${version}</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
</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>
|
||||||
|
<classifier>classes</classifier>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.alfresco.surf</groupId>
|
||||||
|
<artifactId>spring-surf-api</artifactId>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
</project>
|
@@ -0,0 +1,61 @@
|
|||||||
|
<assembly
|
||||||
|
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Note that the Module dependency specified in the configuration section for the Alfresco Maven Plugin
|
||||||
|
needs to be set to amp if any 3rd party libs should be applied by MMT:
|
||||||
|
`
|
||||||
|
<shareModules>
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>some-share-jar</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<type>amp</type>
|
||||||
|
</moduleDependency>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<id>build-amp-file</id>
|
||||||
|
|
||||||
|
<formats>
|
||||||
|
<format>amp</format>
|
||||||
|
</formats>
|
||||||
|
|
||||||
|
<includeBaseDirectory>false</includeBaseDirectory>
|
||||||
|
|
||||||
|
<files>
|
||||||
|
<!-- Filter module.properties and put at top level in the AMP -->
|
||||||
|
<file>
|
||||||
|
<source>src/main/resources/alfresco/module/${project.artifactId}/module.properties</source>
|
||||||
|
<filtered>true</filtered>
|
||||||
|
</file>
|
||||||
|
<!-- Include AMP -> WAR mapping file (needed for custom mappings) -->
|
||||||
|
<file>
|
||||||
|
<source>src/main/assembly/file-mapping.properties</source>
|
||||||
|
<filtered>false</filtered>
|
||||||
|
</file>
|
||||||
|
</files>
|
||||||
|
|
||||||
|
<fileSets>
|
||||||
|
<!-- Anything in the assembly/web directory will end up in the /web directory in the AMP -->
|
||||||
|
<fileSet>
|
||||||
|
<directory>src/main/assembly/web</directory>
|
||||||
|
<outputDirectory>web</outputDirectory>
|
||||||
|
<filtered>true</filtered> <!-- Will filter files and substitute POM props such as for example ${project.name} -->
|
||||||
|
<excludes>
|
||||||
|
<exclude>README.md</exclude>
|
||||||
|
</excludes>
|
||||||
|
</fileSet>
|
||||||
|
</fileSets>
|
||||||
|
|
||||||
|
<!-- Include the project artifact (JAR) in the /lib directory in the AMP, and any 3rd party libraries (JARs)
|
||||||
|
used by the customization.
|
||||||
|
-->
|
||||||
|
<dependencySets>
|
||||||
|
<dependencySet>
|
||||||
|
<outputDirectory>lib</outputDirectory>
|
||||||
|
</dependencySet>
|
||||||
|
</dependencySets>
|
||||||
|
|
||||||
|
</assembly>
|
@@ -1,14 +1,27 @@
|
|||||||
# Custom AMP to WAR location mappings
|
# Custom AMP to WAR location mappings
|
||||||
|
|
||||||
#
|
#
|
||||||
# The following property can be used to include the standard set of 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
|
# 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
|
# 'true', i.e. the default mappings will be augmented or modified by values in
|
||||||
# this file.
|
# this file.
|
||||||
#
|
#
|
||||||
include.default=true
|
# Default mappings are:
|
||||||
|
#
|
||||||
#
|
# /config=/WEB-INF/classes
|
||||||
# Custom mappings. If 'include.default' is false, then this is the complete set.
|
# /lib=/WEB-INF/lib
|
||||||
#
|
# /licenses=/WEB-INF/licenses
|
||||||
/web=/
|
# /web/jsp=/jsp
|
||||||
|
# /web/css=/css
|
||||||
|
# /web/images=/images
|
||||||
|
# /web/scripts=/scripts
|
||||||
|
# /web/php=/php
|
||||||
|
#
|
||||||
|
include.default=true
|
||||||
|
|
||||||
|
#
|
||||||
|
# Custom mappings. If 'include.default' is false, then this is the complete set.
|
||||||
|
# Map /web to / in AMP so we can override things like favicon.ico
|
||||||
|
#
|
||||||
|
/web=/
|
||||||
|
|
@@ -0,0 +1,22 @@
|
|||||||
|
# Web resources that should override out-of-the-box files
|
||||||
|
|
||||||
|
Put here any web resources that should override out-of-the-box
|
||||||
|
web resources, such as favicon.ico. They will then end up in the
|
||||||
|
*/web* directory in the AMP, and applied to the WAR, and override
|
||||||
|
any existing web resources in the Share.WAR.
|
||||||
|
|
||||||
|
**Note**. Module dependency needs to be set to amp for the web resources to be applied by MMT:
|
||||||
|
|
||||||
|
`
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>some-share-jar</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<type>amp</type>
|
||||||
|
</moduleDependency>
|
||||||
|
`
|
||||||
|
|
||||||
|
**Important**. New web resources should not be located here, but instead
|
||||||
|
in the usual place in the *src/main/resources/META-INF/resources/<module-id>/* directory.
|
||||||
|
|
||||||
|
|
@@ -2,4 +2,5 @@
|
|||||||
border: 1px #000000 solid;
|
border: 1px #000000 solid;
|
||||||
padding: 1em;
|
padding: 1em;
|
||||||
width: 100px;
|
width: 100px;
|
||||||
|
background-color: deepskyblue;
|
||||||
}
|
}
|
@@ -0,0 +1,3 @@
|
|||||||
|
hello-label=Hello from i18n
|
||||||
|
|
||||||
|
|
@@ -0,0 +1,420 @@
|
|||||||
|
<!-- Share configuration related to this particular Share module extension, such as:
|
||||||
|
- Doclib action config
|
||||||
|
- Form config
|
||||||
|
- Aspect and Type config
|
||||||
|
- Advanced Search
|
||||||
|
|
||||||
|
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 file:
|
||||||
|
alfresco/tomcat/shared/classes/alfresco/web-extension/share-config-custom.xml
|
||||||
|
-->
|
||||||
|
<alfresco-config>
|
||||||
|
<!--================================================================================================================
|
||||||
|
Make custom types and aspects visible in "Change Type" and "Manage Aspects" actions.
|
||||||
|
This will also make them visible when creating rules.
|
||||||
|
(will be merged with out-of-the-box configured types and aspects)
|
||||||
|
=============================================================================================================-->
|
||||||
|
|
||||||
|
<config evaluator="string-compare" condition="DocumentLibrary">
|
||||||
|
<aspects>
|
||||||
|
<visible>
|
||||||
|
<aspect name="acme:securityClassified"/>
|
||||||
|
</visible>
|
||||||
|
<addable> <!-- defaults to visible config -->
|
||||||
|
</addable>
|
||||||
|
<removeable> <!-- defaults to visible config -->
|
||||||
|
</removeable>
|
||||||
|
</aspects>
|
||||||
|
<types>
|
||||||
|
<!-- Define the ACME base doc type as decedent from cm:content -->
|
||||||
|
<type name="cm:content">
|
||||||
|
<subtype name="acme:document"/>
|
||||||
|
</type>
|
||||||
|
</types>
|
||||||
|
</config>
|
||||||
|
|
||||||
|
<!--================================================================================================================
|
||||||
|
Advanced Search Forms for types
|
||||||
|
(search forms for aspects are not available)
|
||||||
|
=============================================================================================================-->
|
||||||
|
|
||||||
|
<config evaluator="string-compare" condition="AdvancedSearch" replace="true">
|
||||||
|
<advanced-search>
|
||||||
|
<forms>
|
||||||
|
<!-- Standard out-of-the-box types -->
|
||||||
|
<form labelId="search.form.label.cm_content" descriptionId="search.form.desc.cm_content">cm:content
|
||||||
|
</form>
|
||||||
|
<form labelId="search.form.label.cm_folder" descriptionId="search.form.desc.cm_folder">cm:folder</form>
|
||||||
|
|
||||||
|
<!-- Custom type -->
|
||||||
|
<form labelId="form.label.advancedsearch.acmeDocument"
|
||||||
|
descriptionId="form.description.advancedsearch.acmeDocument">acme:document
|
||||||
|
</form>
|
||||||
|
</forms>
|
||||||
|
</advanced-search>
|
||||||
|
</config>
|
||||||
|
|
||||||
|
<!--================================================================================================================
|
||||||
|
View, Edit, Create, and Search forms for custom types
|
||||||
|
|
||||||
|
The following form configurations for the custom types
|
||||||
|
have not been created from scratch. We have instead copied
|
||||||
|
out-of-the-box form configurations for cm:content and cm:folder
|
||||||
|
from the tomcat/webapps/share/WEB-INF/classes/alfresco/share-form-config.xml file
|
||||||
|
in a standard Alfresco installation (with the version matching)
|
||||||
|
and used them as a starting point.
|
||||||
|
|
||||||
|
=============================================================================================================-->
|
||||||
|
|
||||||
|
<!-- __________________________________ acme:document base type _________________________________________________-->
|
||||||
|
|
||||||
|
<!-- View and Edit forms for acme:document -->
|
||||||
|
<config evaluator="node-type" condition="acme:document">
|
||||||
|
<forms>
|
||||||
|
<!-- Default form configuration for the cm:content type -->
|
||||||
|
<form>
|
||||||
|
<field-visibility>
|
||||||
|
<show id="cm:name"/>
|
||||||
|
<show id="cm:title" force="true"/>
|
||||||
|
<show id="cm:description" force="true"/>
|
||||||
|
<show id="mimetype"/>
|
||||||
|
<show id="cm:author" force="true"/>
|
||||||
|
<show id="size" for-mode="view"/>
|
||||||
|
<show id="cm:creator" for-mode="view"/>
|
||||||
|
<show id="cm:created" for-mode="view"/>
|
||||||
|
<show id="cm:modifier" for-mode="view"/>
|
||||||
|
<show id="cm:modified" for-mode="view"/>
|
||||||
|
|
||||||
|
<!-- tags and categories -->
|
||||||
|
<show id="cm:taggable" for-mode="edit" force="true"/>
|
||||||
|
<show id="cm:categories"/>
|
||||||
|
|
||||||
|
<!-- cm:dublincore aspect -->
|
||||||
|
<show id="cm:publisher"/>
|
||||||
|
<show id="cm:contributor"/>
|
||||||
|
<show id="cm:type"/>
|
||||||
|
<show id="cm:identifier"/>
|
||||||
|
<show id="cm:dcsource"/>
|
||||||
|
<show id="cm:coverage"/>
|
||||||
|
<show id="cm:rights"/>
|
||||||
|
<show id="cm:subject"/>
|
||||||
|
|
||||||
|
<!-- cm:complianceable aspect -->
|
||||||
|
<show id="cm:removeAfter"/>
|
||||||
|
|
||||||
|
<!-- cm:effectivity aspect -->
|
||||||
|
<show id="cm:from"/>
|
||||||
|
<show id="cm:to"/>
|
||||||
|
|
||||||
|
<!-- cm:summarizable aspect -->
|
||||||
|
<show id="cm:summary"/>
|
||||||
|
|
||||||
|
<!-- cm:translatable aspect -->
|
||||||
|
<show id="cm:translations"/>
|
||||||
|
|
||||||
|
<!-- cm:localizable aspect -->
|
||||||
|
<show id="cm:locale"/>
|
||||||
|
|
||||||
|
<!-- cm:ownable aspect -->
|
||||||
|
<show id="cm:owner"/>
|
||||||
|
|
||||||
|
<!-- cm:attachable aspect -->
|
||||||
|
<show id="cm:attachments"/>
|
||||||
|
|
||||||
|
<!-- cm:emailed aspect -->
|
||||||
|
<show id="cm:originator"/>
|
||||||
|
<show id="cm:addressee"/>
|
||||||
|
<show id="cm:addressees"/>
|
||||||
|
<show id="cm:sentdate"/>
|
||||||
|
<show id="cm:subjectline"/>
|
||||||
|
|
||||||
|
<!-- exif:exif aspect -->
|
||||||
|
<show id="exif:dateTimeOriginal"/>
|
||||||
|
<show id="exif:pixelXDimension"/>
|
||||||
|
<show id="exif:pixelYDimension"/>
|
||||||
|
<show id="exif:exposureTime"/>
|
||||||
|
<show id="exif:fNumber"/>
|
||||||
|
<show id="exif:flash"/>
|
||||||
|
<show id="exif:focalLength"/>
|
||||||
|
<show id="exif:isoSpeedRatings"/>
|
||||||
|
<show id="exif:manufacturer"/>
|
||||||
|
<show id="exif:model"/>
|
||||||
|
<show id="exif:software"/>
|
||||||
|
<show id="exif:orientation"/>
|
||||||
|
<show id="exif:xResolution"/>
|
||||||
|
<show id="exif:yResolution"/>
|
||||||
|
<show id="exif:resolutionUnit"/>
|
||||||
|
|
||||||
|
<!-- audio:audio aspect -->
|
||||||
|
<show id="audio:album"/>
|
||||||
|
<show id="audio:artist"/>
|
||||||
|
<show id="audio:composer"/>
|
||||||
|
<show id="audio:engineer"/>
|
||||||
|
<show id="audio:genre"/>
|
||||||
|
<show id="audio:trackNumber"/>
|
||||||
|
<show id="audio:releaseDate"/>
|
||||||
|
<show id="audio:sampleRate"/>
|
||||||
|
<show id="audio:sampleType"/>
|
||||||
|
<show id="audio:channelType"/>
|
||||||
|
<show id="audio:compressor"/>
|
||||||
|
|
||||||
|
<!-- cm:indexControl aspect -->
|
||||||
|
<show id="cm:isIndexed"/>
|
||||||
|
<show id="cm:isContentIndexed"/>
|
||||||
|
|
||||||
|
<!-- cm:geographic aspect -->
|
||||||
|
<show id="cm:latitude"/>
|
||||||
|
<show id="cm:longitude"/>
|
||||||
|
|
||||||
|
<!-- surf:widget aspect -->
|
||||||
|
<show id="surf:widgetType"/>
|
||||||
|
<show id="surf:mid"/>
|
||||||
|
<show id="surf:label"/>
|
||||||
|
|
||||||
|
<!-- ACME custom props -->
|
||||||
|
<show id="acme:documentId" force="true"/>
|
||||||
|
<show id="acme:securityClassification"/>
|
||||||
|
</field-visibility>
|
||||||
|
<appearance>
|
||||||
|
<field id="cm:name">
|
||||||
|
<control>
|
||||||
|
<control-param name="maxLength">255</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:title">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="cm:description">
|
||||||
|
<control>
|
||||||
|
<control-param name="activateLinks">true</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
|
||||||
|
<set id="cm:content2cols" template="/org/alfresco/components/form/2-column-set.ftl"/>
|
||||||
|
|
||||||
|
<field set="cm:content2cols" id="mimetype">
|
||||||
|
<control template="/org/alfresco/components/form/controls/mimetype.ftl"/>
|
||||||
|
</field>
|
||||||
|
|
||||||
|
<field set="cm:content2cols" id="size">
|
||||||
|
<control template="/org/alfresco/components/form/controls/size.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field set="cm:content2cols" id="cm:creator"/>
|
||||||
|
<field set="cm:content2cols" id="cm:created"/>
|
||||||
|
<field set="cm:content2cols" id="cm:modifier"/>
|
||||||
|
<field set="cm:content2cols" id="cm:modified"/>
|
||||||
|
|
||||||
|
<field id="cm:taggable">
|
||||||
|
<control>
|
||||||
|
<control-param name="compactMode">true</control-param>
|
||||||
|
<control-param name="params">aspect=cm:taggable</control-param>
|
||||||
|
<control-param name="createNewItemUri">/api/tag/workspace/SpacesStore</control-param>
|
||||||
|
<control-param name="createNewItemIcon">tag</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:categories">
|
||||||
|
<control>
|
||||||
|
<control-param name="compactMode">true</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:originator" read-only="true"/>
|
||||||
|
<field id="cm:addressee" read-only="true"/>
|
||||||
|
<field id="cm:addressees" read-only="true"/>
|
||||||
|
<field id="cm:sentdate" read-only="true"/>
|
||||||
|
<field id="cm:subjectline" read-only="true"/>
|
||||||
|
|
||||||
|
<!-- ACME Props appearance -->
|
||||||
|
<set id="acmeDocSet" appearance="bordered-panel" label-id="form.set.label.acme.document"/>
|
||||||
|
<field id="acme:documentId" label-id="form.field.label.acme.documentId" set="acmeDocSet">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="acme:securityClassification" label-id="form.field.label.acme.securityClassification"
|
||||||
|
set="acmeDocSet"/>
|
||||||
|
</appearance>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<!-- Document Library pop-up Edit Metadata form -->
|
||||||
|
<form id="doclib-simple-metadata">
|
||||||
|
<field-visibility>
|
||||||
|
<show id="cm:name"/>
|
||||||
|
<show id="cm:title" force="true"/>
|
||||||
|
<show id="cm:description" force="true"/>
|
||||||
|
<!-- tags and categories -->
|
||||||
|
<show id="cm:taggable" for-mode="edit" force="true"/>
|
||||||
|
<show id="cm:categories"/>
|
||||||
|
|
||||||
|
<!-- ACME custom props -->
|
||||||
|
<show id="acme:documentId" force="true"/>
|
||||||
|
<show id="acme:securityClassification"/>
|
||||||
|
</field-visibility>
|
||||||
|
<edit-form template="../documentlibrary/forms/doclib-simple-metadata.ftl"/>
|
||||||
|
<appearance>
|
||||||
|
<field id="cm:name">
|
||||||
|
<control>
|
||||||
|
<control-param name="maxLength">255</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:title">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="cm:description">
|
||||||
|
<control>
|
||||||
|
<control-param name="activateLinks">true</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:taggable">
|
||||||
|
<control>
|
||||||
|
<control-param name="compactMode">true</control-param>
|
||||||
|
<control-param name="params">aspect=cm:taggable</control-param>
|
||||||
|
<control-param name="createNewItemUri">/api/tag/workspace/SpacesStore</control-param>
|
||||||
|
<control-param name="createNewItemIcon">tag</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:categories">
|
||||||
|
<control>
|
||||||
|
<control-param name="compactMode">true</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
|
||||||
|
<!-- ACME Props appearance -->
|
||||||
|
<set id="acmeDocSet" appearance="bordered-panel" label-id="form.set.label.acme.document"/>
|
||||||
|
<field id="acme:documentId" label-id="form.field.label.acme.documentId" set="acmeDocSet">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="acme:securityClassification" label-id="form.field.label.acme.securityClassification"
|
||||||
|
set="acmeDocSet"/>
|
||||||
|
</appearance>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<!-- Document Library Inline Edit form -->
|
||||||
|
<form id="doclib-inline-edit">
|
||||||
|
<field-visibility>
|
||||||
|
<show id="cm:name"/>
|
||||||
|
<show id="cm:content" force="true"/>
|
||||||
|
<show id="cm:title" force="true"/>
|
||||||
|
<show id="cm:description" force="true"/>
|
||||||
|
|
||||||
|
<!-- ACME custom props -->
|
||||||
|
<show id="acme:documentId" force="true"/>
|
||||||
|
<show id="acme:securityClassification"/>
|
||||||
|
</field-visibility>
|
||||||
|
<appearance>
|
||||||
|
<field id="cm:name">
|
||||||
|
<control>
|
||||||
|
<control-param name="maxLength">255</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:title">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="cm:content" label-id="">
|
||||||
|
<control>
|
||||||
|
<control-param name="editorAppearance">explorer</control-param>
|
||||||
|
<control-param name="forceEditor">true</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
|
||||||
|
<!-- ACME Props appearance -->
|
||||||
|
<set id="acmeDocSet" appearance="bordered-panel" label-id="form.set.label.acme.document"/>
|
||||||
|
<field id="acme:documentId" label-id="form.field.label.acme.documentId" set="acmeDocSet">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="acme:securityClassification" label-id="form.field.label.acme.securityClassification"
|
||||||
|
set="acmeDocSet"/>
|
||||||
|
</appearance>
|
||||||
|
</form>
|
||||||
|
</forms>
|
||||||
|
</config>
|
||||||
|
|
||||||
|
<!-- Create and search forms for acme:document -->
|
||||||
|
<config evaluator="model-type" condition="acme:document">
|
||||||
|
<forms>
|
||||||
|
<form>
|
||||||
|
<field-visibility>
|
||||||
|
<show id="cm:name"/>
|
||||||
|
<show id="cm:content" force="true"/>
|
||||||
|
<show id="cm:title" force="true"/>
|
||||||
|
<show id="cm:description" force="true"/>
|
||||||
|
<show id="mimetype"/>
|
||||||
|
<show id="app:editInline" force="true"/>
|
||||||
|
|
||||||
|
<!-- ACME custom props -->
|
||||||
|
<show id="acme:documentId" force="true"/>
|
||||||
|
<show id="acme:securityClassification"/>
|
||||||
|
</field-visibility>
|
||||||
|
<appearance>
|
||||||
|
<field id="cm:name">
|
||||||
|
<control>
|
||||||
|
<control-param name="maxLength">255</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:title">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="cm:content" label-id="">
|
||||||
|
<control>
|
||||||
|
<control-param name="editorAppearance">explorer</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="mimetype">
|
||||||
|
<control template="/org/alfresco/components/form/controls/hidden.ftl">
|
||||||
|
<control-param name="contextProperty">mimeType</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="app:editInline">
|
||||||
|
<control template="/org/alfresco/components/form/controls/hidden.ftl">
|
||||||
|
<control-param name="contextProperty">editInline</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
|
||||||
|
<!-- ACME Props appearance -->
|
||||||
|
<set id="acmeDocSet" appearance="bordered-panel" label-id="form.set.label.acme.document"/>
|
||||||
|
<field id="acme:documentId" label-id="form.field.label.acme.documentId" set="acmeDocSet">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="acme:securityClassification" label-id="form.field.label.acme.securityClassification"
|
||||||
|
set="acmeDocSet"/>
|
||||||
|
</appearance>
|
||||||
|
</form>
|
||||||
|
<!-- Search form -->
|
||||||
|
<form id="search">
|
||||||
|
<field-visibility>
|
||||||
|
<show id="cm:name"/>
|
||||||
|
<show id="cm:title" force="true"/>
|
||||||
|
<show id="cm:description" force="true"/>
|
||||||
|
<show id="mimetype"/>
|
||||||
|
<show id="cm:modified"/>
|
||||||
|
<show id="cm:modifier"/>
|
||||||
|
|
||||||
|
<!-- ACME custom props -->
|
||||||
|
<show id="acme:documentId" force="true"/>
|
||||||
|
<show id="acme:securityClassification"/>
|
||||||
|
</field-visibility>
|
||||||
|
<appearance>
|
||||||
|
<field id="mimetype">
|
||||||
|
<control template="/org/alfresco/components/form/controls/mimetype.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="cm:modifier">
|
||||||
|
<control>
|
||||||
|
<control-param name="forceEditable">true</control-param>
|
||||||
|
</control>
|
||||||
|
</field>
|
||||||
|
<field id="cm:modified">
|
||||||
|
<control template="/org/alfresco/components/form/controls/daterange.ftl"/>
|
||||||
|
</field>
|
||||||
|
|
||||||
|
<!-- ACME Props appearance -->
|
||||||
|
<set id="acmeDocSet" appearance="bordered-panel" label-id="form.set.label.acme.document"/>
|
||||||
|
<field id="acme:documentId" label-id="form.field.label.acme.documentId" set="acmeDocSet">
|
||||||
|
<control template="/org/alfresco/components/form/controls/textfield.ftl"/>
|
||||||
|
</field>
|
||||||
|
<field id="acme:securityClassification" label-id="form.field.label.acme.securityClassification"
|
||||||
|
set="acmeDocSet"/>
|
||||||
|
</appearance>
|
||||||
|
</form>
|
||||||
|
</forms>
|
||||||
|
</config>
|
||||||
|
|
||||||
|
|
||||||
|
</alfresco-config>
|
@@ -24,7 +24,7 @@ module.id=${project.artifactId}
|
|||||||
#module.aliases=myModule-123, my-module
|
#module.aliases=myModule-123, my-module
|
||||||
module.title=${project.name}
|
module.title=${project.name}
|
||||||
module.description=${project.description}
|
module.description=${project.description}
|
||||||
module.version=${noSnapshotVersion}
|
module.version=${project.version}
|
||||||
|
|
||||||
# The following optional properties can be used to prevent the module from being added
|
# The following optional properties can be used to prevent the module from being added
|
||||||
# to inappropriate versions of the WAR file.
|
# to inappropriate versions of the WAR 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-3.0.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>
|
@@ -0,0 +1,25 @@
|
|||||||
|
# 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
|
||||||
|
#
|
||||||
|
|
||||||
|
# Labels for custom types and aspects
|
||||||
|
# Used in "Manage Aspects" and "Change Type" dialogs
|
||||||
|
#
|
||||||
|
type.acme_document=ACME Document
|
||||||
|
aspect.acme_securityClassified=Security Classified
|
||||||
|
|
||||||
|
# View,Edit,Search,Create Form labels for types and aspects
|
||||||
|
#
|
||||||
|
form.set.label.acme.document= ACME Document Information
|
||||||
|
form.field.label.acme.documentId=ACME Document Id
|
||||||
|
form.field.label.acme.securityClassification=Security Classification
|
||||||
|
|
||||||
|
# Advanced Search Form labels (only for types)
|
||||||
|
#
|
||||||
|
form.label.advancedsearch.acmeDocument=ACME Documents
|
||||||
|
form.description.advancedsearch.acmeDocument=Search for any ACME Documents
|
||||||
|
|
@@ -1,7 +1,10 @@
|
|||||||
|
#set($symbol_pound='#')
|
||||||
|
#set($symbol_dollar='$')
|
||||||
|
#set($symbol_escape='\' )
|
||||||
<extension>
|
<extension>
|
||||||
<modules>
|
<modules>
|
||||||
<module>
|
<module>
|
||||||
<id>Example Aikau Widgets</id>
|
<id>${artifactId} - Example Aikau Widgets</id>
|
||||||
<version>1.0</version>
|
<version>1.0</version>
|
||||||
<auto-deploy>true</auto-deploy>
|
<auto-deploy>true</auto-deploy>
|
||||||
<configurations>
|
<configurations>
|
||||||
@@ -9,7 +12,7 @@
|
|||||||
<web-framework>
|
<web-framework>
|
||||||
<dojo-pages>
|
<dojo-pages>
|
||||||
<packages>
|
<packages>
|
||||||
<package name="example" location="js/example"/>
|
<package name="tutorials" location="resources/${artifactId}/js/tutorials"/>
|
||||||
</packages>
|
</packages>
|
||||||
</dojo-pages>
|
</dojo-pages>
|
||||||
</web-framework>
|
</web-framework>
|
@@ -0,0 +1,29 @@
|
|||||||
|
model.jsonModel = {
|
||||||
|
widgets: [{
|
||||||
|
id: "SET_PAGE_TITLE",
|
||||||
|
name: "alfresco/header/SetTitle",
|
||||||
|
config: {
|
||||||
|
title: "This is a sample HELLO 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: "tutorials/widgets/TemplateWidget"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}]
|
||||||
|
};
|
@@ -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}.
|
||||||
|
##
|
||||||
|
|
@@ -0,0 +1,12 @@
|
|||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
:: Dev environment startup script for Alfresco Community ::
|
||||||
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
@ECHO OFF
|
||||||
|
|
||||||
|
IF "%MAVEN_OPTS%" == "" (
|
||||||
|
ECHO The environment variable 'MAVEN_OPTS' is not set, setting it for you
|
||||||
|
SET MAVEN_OPTS=-Xms256m -Xmx2G
|
||||||
|
)
|
||||||
|
ECHO MAVEN_OPTS is set to '%MAVEN_OPTS%'
|
||||||
|
|
||||||
|
mvnDebug clean install alfresco:run
|
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
if [[ -z ${MAVEN_OPTS} ]]; then
|
||||||
|
echo "The environment variable 'MAVEN_OPTS' is not set, setting it for you";
|
||||||
|
MAVEN_OPTS="-Xms256m -Xmx2G"
|
||||||
|
fi
|
||||||
|
echo "MAVEN_OPTS is set to '$MAVEN_OPTS'";
|
||||||
|
mvnDebug clean install alfresco:run
|
@@ -0,0 +1,113 @@
|
|||||||
|
<?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>Integration Tests Module</name>
|
||||||
|
<description>Integration Tests module for in-container integration testing - part of AIO - SDK 3</description>
|
||||||
|
<packaging>jar</packaging> <!-- Note. this just runs Integration Tests, but it needs to be a JAR otherwise
|
||||||
|
nothing is compiled (i.e. you cannot set it to pom) -->
|
||||||
|
|
||||||
|
<parent>
|
||||||
|
<groupId>${groupId}</groupId>
|
||||||
|
<artifactId>${rootArtifactId}</artifactId>
|
||||||
|
<version>${version}</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<!-- Bring in any custom module that should be tested, by default we bring in the Platform JAR module
|
||||||
|
that is generated for the AIO project -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>${groupId}</groupId>
|
||||||
|
<artifactId>${rootArtifactId}-platform-jar</artifactId>
|
||||||
|
<version>${version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<testResources>
|
||||||
|
<testResource>
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
</testResource>
|
||||||
|
</testResources>
|
||||||
|
|
||||||
|
<plugins>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.zeroturnaround</groupId>
|
||||||
|
<artifactId>jrebel-maven-plugin</artifactId>
|
||||||
|
<version>${jrebel.version}</version>
|
||||||
|
<configuration>
|
||||||
|
<rebelXmlDirectory>${project.build.testOutputDirectory}</rebelXmlDirectory>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Make sure we attach the tests so we can include them when running -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-jar-plugin</artifactId>
|
||||||
|
<version>3.0.2</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>test-jar</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Runs the integration tests, any class that follows naming convention
|
||||||
|
"**/IT*.java", "**/*IT.java", and "**/*ITCase.java" will be considered an integration test -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-failsafe-plugin</artifactId>
|
||||||
|
<version>2.19.1</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>integration-test</id>
|
||||||
|
<phase>integration-test</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>integration-test</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>verify-test</id>
|
||||||
|
<phase>verify</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>verify</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.maven.surefire</groupId>
|
||||||
|
<artifactId>surefire-junit47</artifactId>
|
||||||
|
<version>2.19.1</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Run Alfresco Tomcat embedded -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.alfresco.maven.plugin</groupId>
|
||||||
|
<artifactId>alfresco-maven-plugin</artifactId>
|
||||||
|
<version>${alfresco.sdk.version}</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>start-alfresco</id>
|
||||||
|
<goals>
|
||||||
|
<goal>it</goal>
|
||||||
|
</goals>
|
||||||
|
<phase>pre-integration-test</phase>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
@@ -0,0 +1,191 @@
|
|||||||
|
#set($symbol_pound='#')
|
||||||
|
#set($symbol_dollar='$')
|
||||||
|
#set($symbol_escape='\' )
|
||||||
|
/**
|
||||||
|
* Copyright (C) 2017 Alfresco Software Limited.
|
||||||
|
* <p/>
|
||||||
|
* This file is part of the Alfresco SDK project.
|
||||||
|
* <p/>
|
||||||
|
* 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
|
||||||
|
* <p/>
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* <p/>
|
||||||
|
* 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}.platformsample;
|
||||||
|
|
||||||
|
import org.alfresco.model.ContentModel;
|
||||||
|
import org.alfresco.rad.test.AbstractAlfrescoIT;
|
||||||
|
import org.alfresco.rad.test.AlfrescoTestRunner;
|
||||||
|
import org.alfresco.repo.content.MimetypeMap;
|
||||||
|
import org.alfresco.repo.nodelocator.CompanyHomeNodeLocator;
|
||||||
|
import org.alfresco.service.cmr.repository.ChildAssociationRef;
|
||||||
|
import org.alfresco.service.cmr.repository.ContentReader;
|
||||||
|
import org.alfresco.service.cmr.repository.ContentWriter;
|
||||||
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
|
import org.alfresco.service.namespace.NamespaceService;
|
||||||
|
import org.alfresco.service.namespace.QName;
|
||||||
|
import org.apache.commons.io.IOUtils;
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Integration Test sample for a custom content model.
|
||||||
|
* See {@link DemoComponentIT} for more info.
|
||||||
|
*
|
||||||
|
* @author martin.bergljung@alfresco.com
|
||||||
|
* @since 3.0
|
||||||
|
*/
|
||||||
|
@RunWith(value = AlfrescoTestRunner.class)
|
||||||
|
public class CustomContentModelIT extends AbstractAlfrescoIT {
|
||||||
|
private static final String ACME_MODEL_NS = "{http://www.acme.org/model/content/1.0}";
|
||||||
|
private static final String ACME_MODEL_LOCALNAME = "contentModel";
|
||||||
|
private static final String ACME_DOCUMENT_TYPE = "document";
|
||||||
|
private static final String ACME_SECURITY_CLASSIFIED_ASPECT = "securityClassified";
|
||||||
|
private static final String ACME_DOCUMENT_ID_PROPNAME = "documentId";
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCustomContentModelPresence() {
|
||||||
|
Collection<QName> allContentModels = getServiceRegistry().getDictionaryService().getAllModels();
|
||||||
|
QName customContentModelQName = createQName(ACME_MODEL_LOCALNAME);
|
||||||
|
assertTrue("Custom content model " + customContentModelQName.toString() +
|
||||||
|
" is not present", allContentModels.contains(customContentModelQName));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCreateAcmeDocument() {
|
||||||
|
// Create the ACME Doc file
|
||||||
|
QName type = createQName(ACME_DOCUMENT_TYPE);
|
||||||
|
String textContent = "Hello World!";
|
||||||
|
String documentId = "DOC001";
|
||||||
|
Map<QName, Serializable> nodeProperties = new HashMap<>();
|
||||||
|
nodeProperties.put(createQName(ACME_DOCUMENT_ID_PROPNAME), documentId);
|
||||||
|
nodeProperties.put(createQName("securityClassification"), "Company Confidential");
|
||||||
|
NodeRef nodeRef = createNode("AcmeFile.txt", type, nodeProperties);
|
||||||
|
addFileContent(nodeRef, textContent);
|
||||||
|
|
||||||
|
// Add an Aspect to the file (could be a custom aspect...)
|
||||||
|
Map<QName, Serializable> aspectProperties = new HashMap<>();
|
||||||
|
aspectProperties.put(ContentModel.PROP_TITLE, "Some Doc Title");
|
||||||
|
aspectProperties.put(ContentModel.PROP_DESCRIPTION, "Some Doc Description");
|
||||||
|
getServiceRegistry().getNodeService().addAspect(nodeRef, ContentModel.ASPECT_TITLED, aspectProperties);
|
||||||
|
|
||||||
|
// Assert that the file is created correctly
|
||||||
|
assertEquals("Invalid type", type, getServiceRegistry().getNodeService().getType(nodeRef));
|
||||||
|
assertTrue("Missing security aspect",
|
||||||
|
getServiceRegistry().getNodeService().hasAspect(nodeRef, createQName(ACME_SECURITY_CLASSIFIED_ASPECT)));
|
||||||
|
assertTrue("Missing titled aspect",
|
||||||
|
getServiceRegistry().getNodeService().hasAspect(nodeRef, ContentModel.ASPECT_TITLED));
|
||||||
|
assertEquals("Invalid property value", documentId,
|
||||||
|
getServiceRegistry().getNodeService().getProperty(nodeRef, createQName(ACME_DOCUMENT_ID_PROPNAME)));
|
||||||
|
readTextContent(nodeRef).equals(textContent);
|
||||||
|
|
||||||
|
// Clean up node
|
||||||
|
if (nodeRef != null) {
|
||||||
|
getServiceRegistry().getNodeService().deleteNode(nodeRef);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ==================== Helper Methods ============================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a QName for the ACME content model
|
||||||
|
*
|
||||||
|
* @param localname the local content model name without namespace specified
|
||||||
|
* @return the full ACME QName including namespace
|
||||||
|
*/
|
||||||
|
private QName createQName(String localname) {
|
||||||
|
return QName.createQName(ACME_MODEL_NS + localname);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new node, such as a file or a folder, with passed in type and properties
|
||||||
|
*
|
||||||
|
* @param name the name of the file or folder
|
||||||
|
* @param type the content model type
|
||||||
|
* @param properties the properties from the content model
|
||||||
|
* @return the Node Reference for the newly created node
|
||||||
|
*/
|
||||||
|
private NodeRef createNode(String name, QName type, Map<QName, Serializable> properties) {
|
||||||
|
NodeRef parentFolderNodeRef = getCompanyHomeNodeRef();
|
||||||
|
QName associationType = ContentModel.ASSOC_CONTAINS;
|
||||||
|
QName associationQName = QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI,
|
||||||
|
QName.createValidLocalName(name));
|
||||||
|
properties.put(ContentModel.PROP_NAME, name);
|
||||||
|
ChildAssociationRef parentChildAssocRef = getServiceRegistry().getNodeService().createNode(
|
||||||
|
parentFolderNodeRef, associationType, associationQName, type, properties);
|
||||||
|
|
||||||
|
return parentChildAssocRef.getChildRef();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add some text content to a file node
|
||||||
|
*
|
||||||
|
* @param nodeRef the node reference for the file that should have some text content added to it
|
||||||
|
* @param fileContent the text content
|
||||||
|
*/
|
||||||
|
private void addFileContent(NodeRef nodeRef, String fileContent) {
|
||||||
|
boolean updateContentPropertyAutomatically = true;
|
||||||
|
ContentWriter writer = getServiceRegistry().getContentService().getWriter(nodeRef, ContentModel.PROP_CONTENT,
|
||||||
|
updateContentPropertyAutomatically);
|
||||||
|
writer.setMimetype(MimetypeMap.MIMETYPE_TEXT_PLAIN);
|
||||||
|
writer.setEncoding("UTF-8");
|
||||||
|
writer.putContent(fileContent);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Read text content for passed in file Node Reference
|
||||||
|
*
|
||||||
|
* @param nodeRef the node reference for a file containing text
|
||||||
|
* @return the text content
|
||||||
|
*/
|
||||||
|
private String readTextContent(NodeRef nodeRef) {
|
||||||
|
ContentReader reader = getServiceRegistry().getContentService().getReader(nodeRef, ContentModel.PROP_CONTENT);
|
||||||
|
if (reader == null) {
|
||||||
|
return ""; // Maybe it was a folder after all
|
||||||
|
}
|
||||||
|
|
||||||
|
InputStream is = reader.getContentInputStream();
|
||||||
|
try {
|
||||||
|
return IOUtils.toString(is, "UTF-8");
|
||||||
|
} catch (IOException ioe) {
|
||||||
|
throw new RuntimeException(ioe);
|
||||||
|
} finally {
|
||||||
|
if (is != null) {
|
||||||
|
try {
|
||||||
|
is.close();
|
||||||
|
} catch (Throwable e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the node reference for the /Company Home top folder in Alfresco.
|
||||||
|
* Use the standard node locator service.
|
||||||
|
*
|
||||||
|
* @return the node reference for /Company Home
|
||||||
|
*/
|
||||||
|
private NodeRef getCompanyHomeNodeRef() {
|
||||||
|
return getServiceRegistry().getNodeLocatorService().getNode(CompanyHomeNodeLocator.NAME, null, null);
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,73 @@
|
|||||||
|
#set($symbol_pound='#')
|
||||||
|
#set($symbol_dollar='$')
|
||||||
|
#set($symbol_escape='\' )
|
||||||
|
/**
|
||||||
|
* Copyright (C) 2017 Alfresco Software Limited.
|
||||||
|
* <p/>
|
||||||
|
* This file is part of the Alfresco SDK project.
|
||||||
|
* <p/>
|
||||||
|
* 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
|
||||||
|
* <p/>
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* <p/>
|
||||||
|
* 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}.platformsample;
|
||||||
|
|
||||||
|
import org.alfresco.rad.test.AbstractAlfrescoIT;
|
||||||
|
import org.alfresco.rad.test.AlfrescoTestRunner;
|
||||||
|
import org.alfresco.rad.test.Remote;
|
||||||
|
import org.alfresco.model.ContentModel;
|
||||||
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
|
import org.junit.Test;
|
||||||
|
import org.junit.runner.RunWith;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Integration Test of the DemoComponent using the Alfresco Test Runner.
|
||||||
|
* The Alfresco Test Runner (i.e. AlfrescoTestRunner.class) will check if it is running in an Alfresco instance,
|
||||||
|
* if so it will execute normally locally. On the other hand, if it detects no
|
||||||
|
* Alfresco Spring context, then it will make a call to a custom Web Script that
|
||||||
|
* will execute this test in the running container remotely. The remote location is
|
||||||
|
* determined by the @Remote config.
|
||||||
|
*
|
||||||
|
* @author martin.bergljung@alfresco.com
|
||||||
|
* @since 3.0
|
||||||
|
*/
|
||||||
|
@RunWith(value = AlfrescoTestRunner.class)
|
||||||
|
// Specifying the remote endpoint is not required, it
|
||||||
|
// will default to http://localhost:8080/alfresco if
|
||||||
|
// not provided. This shows the syntax but simply
|
||||||
|
// sets the value back to the default value.
|
||||||
|
@Remote(endpoint = "http://localhost:8080/alfresco")
|
||||||
|
public class DemoComponentIT extends AbstractAlfrescoIT {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testGetCompanyHome() {
|
||||||
|
DemoComponent demoComponent = (DemoComponent) getApplicationContext().getBean("${package}.DemoComponent");
|
||||||
|
NodeRef companyHome = demoComponent.getCompanyHome();
|
||||||
|
assertNotNull(companyHome);
|
||||||
|
String companyHomeName = (String) getServiceRegistry().getNodeService().getProperty(
|
||||||
|
companyHome, ContentModel.PROP_NAME);
|
||||||
|
assertNotNull(companyHomeName);
|
||||||
|
assertEquals("Company Home", companyHomeName);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testChildNodesCount() {
|
||||||
|
DemoComponent demoComponent = (DemoComponent) getApplicationContext().getBean("${package}.DemoComponent");
|
||||||
|
NodeRef companyHome = demoComponent.getCompanyHome();
|
||||||
|
int childNodeCount = demoComponent.childNodesCount(companyHome);
|
||||||
|
assertNotNull(childNodeCount);
|
||||||
|
// There are 7 folders by default under Company Home
|
||||||
|
assertEquals(7, childNodeCount);
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,75 @@
|
|||||||
|
#set($symbol_pound='#')
|
||||||
|
#set($symbol_dollar='$')
|
||||||
|
#set($symbol_escape='\' )
|
||||||
|
/**
|
||||||
|
* Copyright (C) 2017 Alfresco Software Limited.
|
||||||
|
* <p/>
|
||||||
|
* This file is part of the Alfresco SDK project.
|
||||||
|
* <p/>
|
||||||
|
* 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
|
||||||
|
* <p/>
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* <p/>
|
||||||
|
* 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}.platformsample;
|
||||||
|
|
||||||
|
import org.apache.http.HttpEntity;
|
||||||
|
import org.apache.http.HttpResponse;
|
||||||
|
import org.apache.http.HttpStatus;
|
||||||
|
import org.apache.http.auth.AuthScope;
|
||||||
|
import org.apache.http.auth.UsernamePasswordCredentials;
|
||||||
|
import org.apache.http.client.CredentialsProvider;
|
||||||
|
import org.apache.http.client.methods.HttpGet;
|
||||||
|
import org.apache.http.impl.client.BasicCredentialsProvider;
|
||||||
|
import org.apache.http.impl.client.CloseableHttpClient;
|
||||||
|
import org.apache.http.impl.client.HttpClientBuilder;
|
||||||
|
import org.apache.http.util.EntityUtils;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Integration Test (IT) for Hello World web script.
|
||||||
|
*
|
||||||
|
* @author martin.bergljung@alfresco.com
|
||||||
|
* @version 1.0
|
||||||
|
* @since 3.0
|
||||||
|
*/
|
||||||
|
public class HelloWorldWebScriptIT {
|
||||||
|
@Test
|
||||||
|
public void testWebScriptCall() throws Exception {
|
||||||
|
String webscriptURL = "http://localhost:8080/alfresco/service/sample/helloworld";
|
||||||
|
String expectedResponse = "Message: 'Hello from JS!' 'HelloFromJava'";
|
||||||
|
|
||||||
|
// Login credentials for Alfresco Repo
|
||||||
|
CredentialsProvider provider = new BasicCredentialsProvider();
|
||||||
|
UsernamePasswordCredentials credentials = new UsernamePasswordCredentials("admin", "admin");
|
||||||
|
provider.setCredentials(AuthScope.ANY, credentials);
|
||||||
|
|
||||||
|
// Create HTTP Client with credentials
|
||||||
|
CloseableHttpClient httpclient = HttpClientBuilder.create()
|
||||||
|
.setDefaultCredentialsProvider(provider)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
// Execute Web Script call
|
||||||
|
try {
|
||||||
|
HttpGet httpget = new HttpGet(webscriptURL);
|
||||||
|
HttpResponse httpResponse = httpclient.execute(httpget);
|
||||||
|
assertEquals("Incorrect HTTP Response Status",
|
||||||
|
HttpStatus.SC_OK, httpResponse.getStatusLine().getStatusCode());
|
||||||
|
HttpEntity entity = httpResponse.getEntity();
|
||||||
|
assertNotNull("Response from Web Script is null", entity);
|
||||||
|
assertEquals("Incorrect Web Script Response", expectedResponse, EntityUtils.toString(entity));
|
||||||
|
} finally {
|
||||||
|
httpclient.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,72 @@
|
|||||||
|
# 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 with Enterprise Database, such as SQL Server, Oracle etc
|
||||||
|
#
|
||||||
|
# Configuration when running Tomcat embedded from Maven.
|
||||||
|
# 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
|
||||||
|
|
||||||
|
index.subsystem.name=solr4
|
||||||
|
solr.host=localhost
|
||||||
|
solr.port=8080
|
||||||
|
solr.secureComms=none
|
||||||
|
|
||||||
|
# Don't try and recover any index
|
||||||
|
index.recovery.mode=NONE
|
||||||
|
# As we run embedded, we set Lucene
|
||||||
|
# TODO: Find a better solution for indexing, as buildonly (embedded Lucene) is deprecated and going to be removed soon
|
||||||
|
#index.subsystem.name=buildonly
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Alfresco Repository Enterprise Database Configuration, such as SQL Server, Oracle etc
|
||||||
|
# The Enterprise Driver is brought in via the tomcat7-maven-plugin as a dependency.
|
||||||
|
db.driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
|
||||||
|
db.url=jdbc:sqlserver://localhost:1433;databaseName=alfrescoaio
|
||||||
|
db.username=alfresco
|
||||||
|
db.password=alfresco
|
||||||
|
db.pool.initial=10
|
||||||
|
db.pool.max=100
|
||||||
|
|
||||||
|
# File servers related properties
|
||||||
|
# For local runs we disable CIFS and FTP
|
||||||
|
cifs.enabled=false
|
||||||
|
ftp.enabled=false
|
@@ -0,0 +1,76 @@
|
|||||||
|
# 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 with H2 Database
|
||||||
|
#
|
||||||
|
# Configuration when running Tomcat embedded from Maven.
|
||||||
|
# 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
|
||||||
|
|
||||||
|
index.subsystem.name=solr4
|
||||||
|
solr.host=localhost
|
||||||
|
solr.port=8080
|
||||||
|
solr.secureComms=none
|
||||||
|
|
||||||
|
# Don't try and recover any index
|
||||||
|
index.recovery.mode=NONE
|
||||||
|
# As we run embedded, we set Lucene
|
||||||
|
# TODO: Find a better solution for indexing, as buildonly (embedded Lucene) is deprecated and going to be removed soon
|
||||||
|
#index.subsystem.name=buildonly
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Alfresco Repository H2 Database configuration.
|
||||||
|
# The H2 database implementation and Driver is brought in via the tomcat7-maven-plugin as a dependency.
|
||||||
|
# The data files for the H2 database will be created in a relative path, such as alf_data_dev/h2_data/alf_dev,
|
||||||
|
# see alfresco.db.url below.
|
||||||
|
# For more information about the db parameters see:http://www.h2database.com/html/features.html
|
||||||
|
db.driver=org.h2.jdbcx.JdbcDataSource
|
||||||
|
db.url=jdbc:h2:${alfresco.data.location}/h2_data/alf_dev;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=10000;MVCC=FALSE;LOCK_MODE=0
|
||||||
|
db.username=alfresco
|
||||||
|
db.password=alfresco
|
||||||
|
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
|
@@ -0,0 +1,72 @@
|
|||||||
|
# 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 with MySQL Database
|
||||||
|
#
|
||||||
|
# Configuration when running Tomcat embedded from Maven.
|
||||||
|
# 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
|
||||||
|
|
||||||
|
index.subsystem.name=solr4
|
||||||
|
solr.host=localhost
|
||||||
|
solr.port=8080
|
||||||
|
solr.secureComms=none
|
||||||
|
|
||||||
|
# Don't try and recover any index
|
||||||
|
index.recovery.mode=NONE
|
||||||
|
# As we run embedded, we set Lucene
|
||||||
|
# TODO: Find a better solution for indexing, as buildonly (embedded Lucene) is deprecated and going to be removed soon
|
||||||
|
#index.subsystem.name=buildonly
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Alfresco Repository MySQL Database configuration.
|
||||||
|
# The MySQL Driver is brought in via the tomcat7-maven-plugin as a dependency.
|
||||||
|
db.driver=org.gjt.mm.mysql.Driver
|
||||||
|
db.url=jdbc:mysql://localhost:3306/alfrescoaio?useUnicode=yes&characterEncoding=UTF-8
|
||||||
|
db.username=alfresco
|
||||||
|
db.password=alfresco
|
||||||
|
db.pool.initial=10
|
||||||
|
db.pool.max=100
|
||||||
|
|
||||||
|
# File servers related properties
|
||||||
|
# For local runs we disable CIFS and FTP
|
||||||
|
cifs.enabled=false
|
||||||
|
ftp.enabled=false
|
@@ -0,0 +1,72 @@
|
|||||||
|
# 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 with PostgreSQL Database
|
||||||
|
#
|
||||||
|
# Configuration when running Tomcat embedded from Maven.
|
||||||
|
# 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
|
||||||
|
|
||||||
|
index.subsystem.name=solr4
|
||||||
|
solr.host=localhost
|
||||||
|
solr.port=8080
|
||||||
|
solr.secureComms=none
|
||||||
|
|
||||||
|
# Don't try and recover any index
|
||||||
|
index.recovery.mode=NONE
|
||||||
|
# As we run embedded, we set Lucene
|
||||||
|
# TODO: Find a better solution for indexing, as buildonly (embedded Lucene) is deprecated and going to be removed soon
|
||||||
|
#index.subsystem.name=buildonly
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# Alfresco Repository PostgreSQL Database configuration.
|
||||||
|
# The PostgreSQL Driver is brought in via the tomcat7-maven-plugin as a dependency.
|
||||||
|
db.driver=org.postgresql.Driver
|
||||||
|
db.url=jdbc:postgresql://localhost:5432/alfrescoaio
|
||||||
|
db.username=alfresco
|
||||||
|
db.password=alfresco
|
||||||
|
db.pool.initial=10
|
||||||
|
db.pool.max=100
|
||||||
|
|
||||||
|
# File servers related properties
|
||||||
|
# For local runs we disable CIFS and FTP
|
||||||
|
cifs.enabled=false
|
||||||
|
ftp.enabled=false
|
@@ -1,10 +1,6 @@
|
|||||||
# 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
|
# Set root logger level to error
|
||||||
log4j.rootLogger=${app.log.root.level}, Console, File
|
log4j.rootLogger=error, Console, File
|
||||||
|
|
||||||
###### Console appender definition #######
|
|
||||||
|
|
||||||
# All outputs currently set to be a ConsoleAppender.
|
# All outputs currently set to be a ConsoleAppender.
|
||||||
log4j.appender.Console=org.apache.log4j.ConsoleAppender
|
log4j.appender.Console=org.apache.log4j.ConsoleAppender
|
||||||
@@ -14,21 +10,18 @@ log4j.appender.Console.layout=org.apache.log4j.PatternLayout
|
|||||||
log4j.appender.Console.layout.ConversionPattern=%d{ISO8601} %x %-5p [%c{3}] [%t] %m%n
|
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
|
#log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n
|
||||||
|
|
||||||
###### File appender definition #######
|
|
||||||
log4j.appender.File=org.apache.log4j.DailyRollingFileAppender
|
log4j.appender.File=org.apache.log4j.DailyRollingFileAppender
|
||||||
log4j.appender.File.File=${app.log.dir}alfresco.log
|
log4j.appender.File.File=alfresco.log
|
||||||
log4j.appender.File.Append=true
|
log4j.appender.File.Append=true
|
||||||
log4j.appender.File.DatePattern='.'yyyy-MM-dd
|
log4j.appender.File.DatePattern='.'yyyy-MM-dd
|
||||||
log4j.appender.File.layout=org.apache.log4j.PatternLayout
|
log4j.appender.File.layout=org.apache.log4j.PatternLayout
|
||||||
log4j.appender.File.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n
|
log4j.appender.File.layout.ConversionPattern=%d{yyyy-MM-dd} %d{ABSOLUTE} %-5p [%c] [%t] %m%n
|
||||||
|
|
||||||
###### Hibernate specific appender definition #######
|
|
||||||
#log4j.appender.file=org.apache.log4j.FileAppender
|
#log4j.appender.file=org.apache.log4j.FileAppender
|
||||||
#log4j.appender.file.File=hibernate.log
|
#log4j.appender.file.File=hibernate.log
|
||||||
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
|
#log4j.appender.file.layout=org.apache.log4j.PatternLayout
|
||||||
#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
|
#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)
|
# 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
|
# Hence, generally useful loggers should be listed with at least ERROR level to allow simple runtime
|
||||||
@@ -64,16 +57,15 @@ log4j.logger.org.apache.myfaces.taglib=error
|
|||||||
# OpenOfficeConnection
|
# OpenOfficeConnection
|
||||||
log4j.logger.net.sf.jooreports.openoffice.connection=fatal
|
log4j.logger.net.sf.jooreports.openoffice.connection=fatal
|
||||||
|
|
||||||
# log prepared statement cache activity ###
|
# log prepared statement cache activity log4j.logger.org.hibernate.ps.PreparedStatementCache=info
|
||||||
log4j.logger.org.hibernate.ps.PreparedStatementCache=info
|
|
||||||
|
|
||||||
# Alfresco
|
# Alfresco
|
||||||
log4j.logger.org.alfresco=error
|
log4j.logger.org.alfresco=error
|
||||||
log4j.logger.org.alfresco.repo.admin=info
|
log4j.logger.org.alfresco.repo.admin=info
|
||||||
|
log4j.logger.org.alfresco.repo.transaction=warn
|
||||||
log4j.logger.org.alfresco.repo.cache.TransactionalCache=warn
|
log4j.logger.org.alfresco.repo.cache.TransactionalCache=warn
|
||||||
log4j.logger.org.alfresco.repo.model.filefolder=warn
|
log4j.logger.org.alfresco.repo.model.filefolder=warn
|
||||||
log4j.logger.org.alfresco.repo.tenant=info
|
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=warn
|
||||||
log4j.logger.org.alfresco.config.JndiObjectFactoryBean=warn
|
log4j.logger.org.alfresco.config.JndiObjectFactoryBean=warn
|
||||||
log4j.logger.org.alfresco.config.JBossEnabledWebApplicationContext=warn
|
log4j.logger.org.alfresco.config.JBossEnabledWebApplicationContext=warn
|
||||||
@@ -89,23 +81,18 @@ log4j.logger.org.alfresco.web=info
|
|||||||
#log4j.logger.org.alfresco.web.ui.repo.component.UIActions=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.ui.repo.tag.PageTag=debug
|
||||||
#log4j.logger.org.alfresco.web.bean.clipboard=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.service.descriptor.DescriptorService=info
|
||||||
#log4j.logger.org.alfresco.web.page=debug
|
#log4j.logger.org.alfresco.web.page=debug
|
||||||
|
|
||||||
log4j.logger.org.alfresco.repo.importer.ImporterBootstrap=error
|
log4j.logger.org.alfresco.repo.importer.ImporterBootstrap=error
|
||||||
#log4j.logger.org.alfresco.repo.importer.ImporterBootstrap=info
|
#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.admin.patch.PatchExecuter=info
|
||||||
log4j.logger.org.alfresco.repo.domain.patch.ibatis.PatchDAOImpl=info
|
log4j.logger.org.alfresco.repo.domain.patch.ibatis.PatchDAOImpl=info
|
||||||
|
|
||||||
# Specific patches
|
# Specific patches
|
||||||
log4j.logger.org.alfresco.repo.admin.patch.impl.DeploymentMigrationPatch=info
|
log4j.logger.org.alfresco.repo.admin.patch.impl.DeploymentMigrationPatch=info
|
||||||
log4j.logger.org.alfresco.repo.version.VersionMigrator=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.module.ModuleServiceImpl=info
|
||||||
log4j.logger.org.alfresco.repo.domain.schema.SchemaBootstrap=info
|
log4j.logger.org.alfresco.repo.domain.schema.SchemaBootstrap=info
|
||||||
@@ -113,17 +100,17 @@ log4j.logger.org.alfresco.repo.admin.ConfigurationChecker=info
|
|||||||
log4j.logger.org.alfresco.repo.node.index.AbstractReindexComponent=warn
|
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.IndexTransactionTracker=warn
|
||||||
log4j.logger.org.alfresco.repo.node.index.FullIndexRecoveryComponent=info
|
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.util.OpenOfficeConnectionTester=info
|
||||||
log4j.logger.org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl=warn
|
log4j.logger.org.alfresco.repo.node.db.hibernate.HibernateNodeDaoServiceImpl=warn
|
||||||
log4j.logger.org.alfresco.repo.domain.hibernate.DirtySessionMethodInterceptor=warn
|
log4j.logger.org.alfresco.repo.domain.hibernate.DirtySessionMethodInterceptor=warn
|
||||||
log4j.logger.org.alfresco.repo.transaction.RetryingTransactionHelper=warn
|
log4j.logger.org.alfresco.repo.transaction.RetryingTransactionHelper=warn
|
||||||
log4j.logger.org.alfresco.util.transaction.SpringAwareUserTransaction.trace=warn
|
log4j.logger.org.alfresco.util.transaction.SpringAwareUserTransaction.trace=warn
|
||||||
log4j.logger.org.alfresco.util.AbstractTriggerBean=warn
|
log4j.logger.org.alfresco.util.AbstractTriggerBean=warn
|
||||||
log4j.logger.org.alfresco.enterprise.repo.cache.cluster.KeepAliveHeartbeatReceiver=info
|
log4j.logger.org.alfresco.enterprise.repo.cluster=info
|
||||||
log4j.logger.org.alfresco.repo.version.Version2ServiceImpl=warn
|
log4j.logger.org.alfresco.repo.version.Version2ServiceImpl=warn
|
||||||
|
|
||||||
#log4j.logger.org.alfresco.web.app.DebugPhaseListener=debug
|
#log4j.logger.org.alfresco.web.app.DebugPhaseListener=debug
|
||||||
|
log4j.logger.org.alfresco.repo.node.db.NodeStringLengthWorker=info
|
||||||
|
|
||||||
log4j.logger.org.alfresco.repo.workflow=info
|
log4j.logger.org.alfresco.repo.workflow=info
|
||||||
|
|
||||||
@@ -138,7 +125,7 @@ log4j.logger.org.alfresco.ftp.protocol=error
|
|||||||
|
|
||||||
# WebDAV debugging
|
# WebDAV debugging
|
||||||
#log4j.logger.org.alfresco.webdav.protocol=debug
|
#log4j.logger.org.alfresco.webdav.protocol=debug
|
||||||
log4j.logger.org.alfresco.webdav.protocol=error
|
log4j.logger.org.alfresco.webdav.protocol=info
|
||||||
|
|
||||||
# NTLM servlet filters
|
# NTLM servlet filters
|
||||||
#log4j.logger.org.alfresco.web.app.servlet.NTLMAuthenticationFilter=debug
|
#log4j.logger.org.alfresco.web.app.servlet.NTLMAuthenticationFilter=debug
|
||||||
@@ -154,9 +141,6 @@ log4j.logger.org.alfresco.fileserver=warn
|
|||||||
# Repo filesystem debug logging
|
# Repo filesystem debug logging
|
||||||
#log4j.logger.org.alfresco.filesys.repo.ContentDiskDriver=debug
|
#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
|
# Integrity message threshold - if 'failOnViolation' is off, then WARNINGS are generated
|
||||||
log4j.logger.org.alfresco.repo.node.integrity=ERROR
|
log4j.logger.org.alfresco.repo.node.integrity=ERROR
|
||||||
|
|
||||||
@@ -172,18 +156,9 @@ log4j.logger.org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl=
|
|||||||
# log4j.logger.org.alfresco.repo.audit=DEBUG
|
# log4j.logger.org.alfresco.repo.audit=DEBUG
|
||||||
# log4j.logger.org.alfresco.repo.audit.model=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
|
# Property sheet and modelling debugging
|
||||||
# change to error to hide the warnings about missing properties and associations
|
# change to error to hide the warnings about missing properties and associations
|
||||||
log4j.logger.alfresco.missingProperties=warn
|
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
|
# Dictionary/Model debugging
|
||||||
log4j.logger.org.alfresco.repo.dictionary=warn
|
log4j.logger.org.alfresco.repo.dictionary=warn
|
||||||
@@ -211,7 +186,6 @@ log4j.logger.org.alfresco.repo.usage=info
|
|||||||
log4j.logger.org.alfresco.module.vti=info
|
log4j.logger.org.alfresco.module.vti=info
|
||||||
|
|
||||||
# Forms Engine
|
# Forms Engine
|
||||||
log4j.logger.org.alfresco.repo.forms=info
|
|
||||||
log4j.logger.org.alfresco.web.config.forms=info
|
log4j.logger.org.alfresco.web.config.forms=info
|
||||||
log4j.logger.org.alfresco.web.scripts.forms=info
|
log4j.logger.org.alfresco.web.scripts.forms=info
|
||||||
|
|
||||||
@@ -221,6 +195,8 @@ log4j.logger.org.alfresco.opencmis.AlfrescoCmisServiceInterceptor=error
|
|||||||
log4j.logger.org.alfresco.cmis=error
|
log4j.logger.org.alfresco.cmis=error
|
||||||
log4j.logger.org.alfresco.cmis.dictionary=warn
|
log4j.logger.org.alfresco.cmis.dictionary=warn
|
||||||
log4j.logger.org.apache.chemistry.opencmis=info
|
log4j.logger.org.apache.chemistry.opencmis=info
|
||||||
|
log4j.logger.org.apache.chemistry.opencmis.server.impl.browser.CmisBrowserBindingServlet=OFF
|
||||||
|
log4j.logger.org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet=OFF
|
||||||
|
|
||||||
# IMAP
|
# IMAP
|
||||||
log4j.logger.org.alfresco.repo.imap=info
|
log4j.logger.org.alfresco.repo.imap=info
|
||||||
@@ -231,7 +207,6 @@ log4j.logger.org.jbpm.graph.def.GraphElement=fatal
|
|||||||
|
|
||||||
#log4j.logger.org.alfresco.repo.googledocs=debug
|
#log4j.logger.org.alfresco.repo.googledocs=debug
|
||||||
|
|
||||||
###### Scripting #######
|
|
||||||
|
|
||||||
# Web Framework
|
# Web Framework
|
||||||
log4j.logger.org.springframework.extensions.webscripts=info
|
log4j.logger.org.springframework.extensions.webscripts=info
|
||||||
@@ -246,7 +221,13 @@ log4j.logger.org.alfresco.repo.jscript=error
|
|||||||
log4j.logger.org.alfresco.repo.jscript.ScriptLogger=warn
|
log4j.logger.org.alfresco.repo.jscript.ScriptLogger=warn
|
||||||
log4j.logger.org.alfresco.repo.cmis.rest.CMISTest=info
|
log4j.logger.org.alfresco.repo.cmis.rest.CMISTest=info
|
||||||
|
|
||||||
log4j.logger.org.alfresco.repo.avm.actions=info
|
log4j.logger.org.alfresco.repo.domain.schema.script.ScriptBundleExecutorImpl=off
|
||||||
|
log4j.logger.org.alfresco.repo.domain.schema.script.ScriptExecutorImpl=info
|
||||||
|
|
||||||
|
log4j.logger.org.alfresco.repo.search.impl.solr.facet.SolrFacetServiceImpl=info
|
||||||
|
|
||||||
|
# Bulk Filesystem Import Tool
|
||||||
|
log4j.logger.org.alfresco.repo.bulkimport=warn
|
||||||
|
|
||||||
# Freemarker
|
# Freemarker
|
||||||
# Note the freemarker.runtime logger is used to log non-fatal errors that are handled by Alfresco's retrying transaction handler
|
# Note the freemarker.runtime logger is used to log non-fatal errors that are handled by Alfresco's retrying transaction handler
|
||||||
@@ -263,4 +244,20 @@ log4j.logger.org.apache.pdfbox.pdmodel.font.PDCIDFont=fatal
|
|||||||
# no index support
|
# no index support
|
||||||
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexIndexer=fatal
|
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexIndexer=fatal
|
||||||
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexSearchService=fatal
|
log4j.logger.org.alfresco.repo.search.impl.noindex.NoIndexSearchService=fatal
|
||||||
log4j.logger.org.alfresco.demoamp.test=DEBUG
|
|
||||||
|
# lucene index warnings
|
||||||
|
log4j.logger.org.alfresco.repo.search.impl.lucene.index.IndexInfo=warn
|
||||||
|
|
||||||
|
# Warn about RMI socket bind retries.
|
||||||
|
log4j.logger.org.alfresco.util.remote.server.socket.HostConfigurableSocketFactory=warn
|
||||||
|
|
||||||
|
log4j.logger.org.alfresco.repo.usage.RepoUsageMonitor=info
|
||||||
|
|
||||||
|
# Authorization
|
||||||
|
log4j.logger.org.alfresco.enterprise.repo.authorization.AuthorizationService=info
|
||||||
|
log4j.logger.org.alfresco.enterprise.repo.authorization.AuthorizationsConsistencyMonitor=warn
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -17,7 +17,17 @@
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
-->
|
-->
|
||||||
<beans>
|
<beans>
|
||||||
<!-- This disables javascript compilation so that webscripts can be hot reloaded -->
|
<!--
|
||||||
|
To support hot reloading of server side Javascript files in Share, we have to turn on development mode.
|
||||||
|
This setting will tell the Rhinoscript Processor not to compile and cache the JS files.
|
||||||
|
Cool, we can now change server side JS files and have the changes picked up,
|
||||||
|
without having to restart or refresh web scripts.
|
||||||
|
|
||||||
|
But… Due to a known bug in the Surf framework (ALF-9970) this will break the admin consoles in Share.
|
||||||
|
|
||||||
|
Override this bean and disable javascript compilation so that webscripts can be hot reloaded.
|
||||||
|
We have changed the 'compile' property from true to false.
|
||||||
|
-->
|
||||||
<bean id="javaScriptProcessor" class="org.alfresco.repo.jscript.RhinoScriptProcessor" init-method="register">
|
<bean id="javaScriptProcessor" class="org.alfresco.repo.jscript.RhinoScriptProcessor" init-method="register">
|
||||||
<property name="name">
|
<property name="name">
|
||||||
<value>javascript</value>
|
<value>javascript</value>
|
||||||
@@ -25,7 +35,7 @@
|
|||||||
<property name="extension">
|
<property name="extension">
|
||||||
<value>js</value>
|
<value>js</value>
|
||||||
</property>
|
</property>
|
||||||
<!-- compile javascript and cache compiled scripts -->
|
<!-- Do not "compile javascript and cache compiled scripts" -->
|
||||||
<property name="compile">
|
<property name="compile">
|
||||||
<value>false</value>
|
<value>false</value>
|
||||||
</property>
|
</property>
|
@@ -0,0 +1,54 @@
|
|||||||
|
# Set root logger level to error
|
||||||
|
log4j.rootLogger=error, 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=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{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=
|
||||||
|
|
||||||
|
#-----------------------------------------------------------------------
|
||||||
|
# Custom Share module logging goes here...
|
||||||
|
#-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<Context crossContext="true">
|
||||||
|
<Environment name="solr/home" type="java.lang.String" value="${solr.home}" override="true"/>
|
||||||
|
<Environment name="solr/model/dir" type="java.lang.String" value="${solr.model.dir}" override="true"/>
|
||||||
|
<Environment name="solr/content/dir" type="java.lang.String" value="${solr.content.dir}" override="true"/>
|
||||||
|
|
||||||
|
</Context>
|
@@ -1,81 +1,413 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?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>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>${groupId}</groupId>
|
<groupId>${groupId}</groupId>
|
||||||
<artifactId>${artifactId}</artifactId>
|
<artifactId>${artifactId}</artifactId>
|
||||||
<version>${version}</version>
|
<version>${version}</version>
|
||||||
<name>Alfresco Repository and Share Quickstart with database and an embedded runner.</name>
|
<name>AIO - SDK 3.0 Beta</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>
|
<description>All-In-One (AIO) project for SDK 3.0</description>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
|
|
||||||
<parent>
|
|
||||||
<groupId>org.alfresco.maven</groupId>
|
|
||||||
<artifactId>alfresco-sdk-parent</artifactId>
|
|
||||||
<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.
|
|
||||||
-->
|
|
||||||
<properties>
|
<properties>
|
||||||
<!--
|
<!-- Alfresco Maven Plugin version to use -->
|
||||||
| Defines the groupId for the Alfresco Artifacts to work against. As of 4.2 the only allowed value is: org.alfresco
|
<alfresco.sdk.version>@@alfresco.sdk.parent.version@@</alfresco.sdk.version>
|
||||||
| NOTE: See http://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-tutorials-alfresco-enterprise.html for details
|
|
||||||
-->
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<alfresco.groupId>${alfresco_target_groupId}</alfresco.groupId>
|
|
||||||
<!-- Defines the Alfresco version to work against.
|
<!-- Alfresco Data directory, which will contain:
|
||||||
Community versions are typically identified by major.minor.character (4.2.a) while Enterprise versions are identified by major.minor.digit (4.2.0)
|
Content Store (i.e. the files we upload)
|
||||||
-->
|
Database (i.e. the metadata for the uploaded files)
|
||||||
<alfresco.version>${alfresco_target_version}</alfresco.version>
|
Search index (i.e. the indexed content and metadata)
|
||||||
<!-- This control the root logging level for all apps -->
|
Configured in alfresco-global.properties with the 'dir.root' property.
|
||||||
<app.log.root.level>WARN</app.log.root.level>
|
-->
|
||||||
<!-- This controls the default data location for dir.root -->
|
<alfresco.data.location>${session.executionRootDirectory}/alf_data_dev</alfresco.data.location>
|
||||||
<alfresco.data.location>alf_data_dev</alfresco.data.location>
|
|
||||||
<!-- This controls which properties will be picked in multi-enviromment build -->
|
<!-- Duplicated with alfresco.solrHome in the plugin, we need them out here to do filtering -->
|
||||||
|
<solr.home>${alfresco.data.location}/solr</solr.home>
|
||||||
|
<solr.model.dir>${solr.home}/alfrescoModels</solr.model.dir>
|
||||||
|
<solr.content.dir>${solr.home}/index</solr.content.dir>
|
||||||
|
|
||||||
|
<!-- Properties used in dependency declarations, you don't need to change these -->
|
||||||
|
<alfresco.groupId>org.alfresco</alfresco.groupId>
|
||||||
|
|
||||||
|
<!-- Alfresco Platform and Share webapp versions, these are the original Alfresco webapps that will be
|
||||||
|
customized and then deployed and run by the tomcat maven plugin when
|
||||||
|
executing for example $ mvn clean install alfresco:run -->
|
||||||
|
<alfresco.platform.version>5.2.e</alfresco.platform.version>
|
||||||
|
<alfresco.share.version>5.2.d</alfresco.share.version>
|
||||||
|
|
||||||
|
<!-- Default is to run with a Community edition, change to 'enterprise' if using Enterprise edition -->
|
||||||
|
<maven.alfresco.edition>community</maven.alfresco.edition>
|
||||||
|
|
||||||
|
<!-- Alfresco Surf version, if you change Share version you might need to change Surf version -->
|
||||||
|
<alfresco.surf.version>6.11</alfresco.surf.version>
|
||||||
|
|
||||||
|
<!-- JRebel Hot reloading of classpath stuff and web resource stuff -->
|
||||||
|
<jrebel.version>1.1.6</jrebel.version>
|
||||||
|
|
||||||
|
<!-- Environment to use, Alfresco Maven Plugin will
|
||||||
|
copy alfresco-global-*.properties files from this directory, such as src/test/properties/local -->
|
||||||
<env>local</env>
|
<env>local</env>
|
||||||
|
|
||||||
|
<!-- Compile with Java 7, default is 5 -->
|
||||||
|
<maven.compiler.source>1.7</maven.compiler.source>
|
||||||
|
<maven.compiler.target>1.7</maven.compiler.target>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<!-- Here we realize the connection with the Alfresco selected platform (e.g.version and edition) -->
|
<!-- Libs used in Unit and Integration tests -->
|
||||||
<dependencyManagement>
|
<!-- IMPORTANT - Test dependencies need to be here in the top parent POM as
|
||||||
<dependencies>
|
the Alfresco Maven IT Mojo runs as part of the parent project ... -->
|
||||||
<!-- This will import the dependencyManagement for all artifacts in the selected Alfresco plaftorm
|
<dependencies>
|
||||||
(see http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Importing_Dependencies)
|
<dependency>
|
||||||
NOTE: You still need to define dependencies in your POM, but you can omit version as it's enforced by this dependencyManagement.
|
<groupId>junit</groupId>
|
||||||
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
|
<artifactId>junit</artifactId>
|
||||||
-->
|
<version>4.12</version>
|
||||||
<dependency>
|
<scope>test</scope>
|
||||||
<groupId>${alfresco.groupId}</groupId>
|
</dependency>
|
||||||
<artifactId>alfresco-platform-distribution</artifactId>
|
<dependency>
|
||||||
<version>${alfresco.version}</version>
|
<groupId>org.mockito</groupId>
|
||||||
<type>pom</type>
|
<artifactId>mockito-all</artifactId>
|
||||||
<scope>import</scope>
|
<version>1.9.5</version>
|
||||||
</dependency>
|
<scope>test</scope>
|
||||||
</dependencies>
|
</dependency>
|
||||||
</dependencyManagement>
|
<dependency>
|
||||||
|
<groupId>org.apache.httpcomponents</groupId>
|
||||||
|
<artifactId>httpclient</artifactId>
|
||||||
|
<version>4.5.2</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<!-- Invoke your build with -Prun to run the multimodule project and enable rapid dev mode in your IDE.
|
<!-- The main Alfresco Repo dependency for compiling Java code in src/main/java -->
|
||||||
See 'run' profile in the sub modules pom.xml for further behavioral details.
|
<dependency>
|
||||||
-->
|
<groupId>${alfresco.groupId}</groupId>
|
||||||
<profiles>
|
<artifactId>alfresco-repository</artifactId>
|
||||||
<profile>
|
</dependency>
|
||||||
<id>run</id>
|
|
||||||
<properties>
|
<!-- Bring in Spring Context so we can use ApplicationContext, ApplicationContextAware etc -->
|
||||||
<!-- While running in rapid dev mode with -Prun, we don't want amp web resources
|
<dependency>
|
||||||
to be added to the war, so we can load them directly from the AMP project (see
|
<groupId>org.springframework</groupId>
|
||||||
runner/tomcat/context-*.xml for more details) -->
|
<artifactId>spring-context</artifactId>
|
||||||
<maven.alfresco.includeWebResources>false</maven.alfresco.includeWebResources>
|
<version>3.2.17.RELEASE</version>
|
||||||
</properties>
|
<scope>test</scope>
|
||||||
</profile>
|
</dependency>
|
||||||
<!-- RM profile, manually activated, automatically adds support for RM development (dependencies) and install the RM amps in the WARs -->
|
|
||||||
<profile>
|
<!-- Bring in Alfresco RAD so we get access to AlfrescoTestRunner classes -->
|
||||||
<id>rm</id>
|
<dependency>
|
||||||
<properties>
|
<groupId>org.alfresco.maven</groupId>
|
||||||
<alfresco.rm.version>2.3.a.1</alfresco.rm.version>
|
<artifactId>alfresco-rad</artifactId>
|
||||||
<app.rm.amps.location>${project.build.directory}/rm-amps</app.rm.amps.location>
|
<version>${alfresco.sdk.version}</version>
|
||||||
<app.rm.war.location>${project.build.directory}/${project.build.finalName}.war</app.rm.war.location>
|
<scope>test</scope>
|
||||||
<app.rm.artifact>org.alfresco:${alfresco.rm.artifactId}:${alfresco.rm.version}:amp</app.rm.artifact>
|
</dependency>
|
||||||
</properties>
|
</dependencies>
|
||||||
</profile>
|
|
||||||
</profiles>
|
<dependencyManagement>
|
||||||
|
<dependencies>
|
||||||
|
<!-- This will import the dependencyManagement for all artifacts in the selected Alfresco platform.
|
||||||
|
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.platform.version}</version>
|
||||||
|
<type>pom</type>
|
||||||
|
<scope>import</scope>
|
||||||
|
</dependency>
|
||||||
|
<!-- Redefine the following Share dependencies as they have different version numbers than platform.
|
||||||
|
They are defined in alfresco-platform-distribution... -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>${alfresco.groupId}</groupId>
|
||||||
|
<artifactId>share</artifactId>
|
||||||
|
<version>${alfresco.share.version}</version>
|
||||||
|
<type>war</type>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>${alfresco.groupId}</groupId>
|
||||||
|
<artifactId>share</artifactId>
|
||||||
|
<version>${alfresco.share.version}</version>
|
||||||
|
<classifier>classes</classifier>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>${alfresco.groupId}</groupId>
|
||||||
|
<artifactId>alfresco-web-framework-commons</artifactId>
|
||||||
|
<version>${alfresco.share.version}</version>
|
||||||
|
<classifier>classes</classifier>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Redefine the following surf dependencies as they have no resolvable version in the
|
||||||
|
alfresco-platform-distribution artifact -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.alfresco.surf</groupId>
|
||||||
|
<artifactId>spring-surf</artifactId>
|
||||||
|
<version>${alfresco.surf.version}</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.alfresco.surf</groupId>
|
||||||
|
<artifactId>spring-surf-api</artifactId>
|
||||||
|
<version>${alfresco.surf.version}</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</dependencyManagement>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<pluginManagement>
|
||||||
|
<plugins>
|
||||||
|
<!--
|
||||||
|
Build an AMP if 3rd party libs are needed by the extensions
|
||||||
|
JARs are the default artifact produced in your modules, if you want to build an amp for each module
|
||||||
|
you have to enable this plugin and inspect the src/main/assembly.xml file if you want to customize
|
||||||
|
the layout of your AMP. The end result is that Maven will produce both a JAR file and an AMP with your
|
||||||
|
module.
|
||||||
|
-->
|
||||||
|
<!--
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
<version>2.6</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>build-amp-file</id>
|
||||||
|
<phase>package</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>single</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<appendAssemblyId>false</appendAssemblyId>
|
||||||
|
<descriptor>src/main/assembly/amp.xml</descriptor>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.alfresco.maven.plugin</groupId>
|
||||||
|
<artifactId>alfresco-maven-plugin</artifactId>
|
||||||
|
<version>${alfresco.sdk.version}</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</plugin>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- Filter resources in any sub-project with this config -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
|
<version>3.0.1</version>
|
||||||
|
<configuration>
|
||||||
|
<encoding>UTF-8</encoding>
|
||||||
|
<nonFilteredFileExtensions> <!-- jpg, jpeg, gif, bmp and png are added automatically -->
|
||||||
|
<nonFilteredFileExtension>ftl</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>acp</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>svg</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>pdf</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>doc</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>docx</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>xls</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>xlsx</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>ppt</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>pptx</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>bin</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>lic</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>swf</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>zip</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>msg</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>jar</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>ttf</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>eot</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>woff</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>woff2</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>css</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>ico</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>psd</nonFilteredFileExtension>
|
||||||
|
<nonFilteredFileExtension>js</nonFilteredFileExtension>
|
||||||
|
</nonFilteredFileExtensions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</pluginManagement>
|
||||||
|
|
||||||
|
<!-- Make sure resources in sub-projects are filtered -->
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<directory>src/main/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
|
||||||
|
|
||||||
|
<plugins>
|
||||||
|
<!-- Filter the test resource files in the AIO parent project, and do property substitutions.
|
||||||
|
We need this config so this is done before the Alfresco Maven Plugin 'run' is executed. -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
|
<version>3.0.1</version>
|
||||||
|
<inherited>false</inherited>
|
||||||
|
<!-- Run only for the AIO parent Project -->
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>copy-and-filter-test-resources</id>
|
||||||
|
<phase>validate</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>copy-resources</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<outputDirectory>${project.build.testOutputDirectory}</outputDirectory>
|
||||||
|
<resources>
|
||||||
|
<testResource>
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
</testResource>
|
||||||
|
</resources>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
The Alfresco Maven Plugin contains all the logic to run the extension
|
||||||
|
in an embedded Tomcat with the H2 database.
|
||||||
|
-->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.alfresco.maven.plugin</groupId>
|
||||||
|
<artifactId>alfresco-maven-plugin</artifactId>
|
||||||
|
<version>${alfresco.sdk.version}</version>
|
||||||
|
<configuration>
|
||||||
|
|
||||||
|
<!-- We need the flat file H2 database to run the Repo -->
|
||||||
|
<enableH2>true</enableH2>
|
||||||
|
<!-- We always need the Platform/Repo webapp - alfresco.war -->
|
||||||
|
<enablePlatform>true</enablePlatform>
|
||||||
|
<!-- Enable Solr webapp so we can use search -->
|
||||||
|
<enableSolr>true</enableSolr>
|
||||||
|
<!-- We need Share webapp, so we got a UI for working with the Repo -->
|
||||||
|
<enableShare>true</enableShare>
|
||||||
|
<!-- Enable the REST API Explorer -->
|
||||||
|
<enableApiExplorer>true</enableApiExplorer>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
JARs and AMPs that should be overlayed/applied to the Platform/Repository WAR
|
||||||
|
(i.e. alfresco.war)
|
||||||
|
-->
|
||||||
|
<platformModules>
|
||||||
|
<!-- Share Services will be ignored if you are on Platform earlier than 5.1 -->
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${alfresco.groupId}</groupId>
|
||||||
|
<artifactId>alfresco-share-services</artifactId>
|
||||||
|
<version>${alfresco.share.version}</version>
|
||||||
|
<type>amp</type>
|
||||||
|
</moduleDependency>
|
||||||
|
|
||||||
|
<!-- Bring in custom Modules -->
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>${artifactId}-platform-jar</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</moduleDependency>
|
||||||
|
|
||||||
|
<!-- Bring in the integration tests -->
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>integration-tests</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<classifier>tests</classifier>
|
||||||
|
</moduleDependency>
|
||||||
|
|
||||||
|
</platformModules>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
JARs and AMPs that should be overlayed/applied to the Share WAR (i.e. share.war)
|
||||||
|
-->
|
||||||
|
<shareModules>
|
||||||
|
<!-- Bring in custom Modules -->
|
||||||
|
<moduleDependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>${artifactId}-share-jar</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</moduleDependency>
|
||||||
|
</shareModules>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Hot reloading with JRebel -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.zeroturnaround</groupId>
|
||||||
|
<artifactId>jrebel-maven-plugin</artifactId>
|
||||||
|
<version>${jrebel.version}</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>generate-rebel-xml</id>
|
||||||
|
<phase>process-resources</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>generate</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<configuration>
|
||||||
|
<!-- For more information about how to configure JRebel plugin see:
|
||||||
|
http://manuals.zeroturnaround.com/jrebel/standalone/maven.html#maven-rebel-xml -->
|
||||||
|
<classpath>
|
||||||
|
<fallback>all</fallback>
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<directory>${project.build.outputDirectory}</directory>
|
||||||
|
<directory>${project.build.testOutputDirectory}</directory>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
</classpath>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
alwaysGenerate - default is false
|
||||||
|
If 'false' - rebel.xml is generated if timestamps of pom.xml and the current rebel.xml file are not equal.
|
||||||
|
If 'true' - rebel.xml will always be generated
|
||||||
|
-->
|
||||||
|
<alwaysGenerate>true</alwaysGenerate>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Alfresco Maven Repositories
|
||||||
|
-->
|
||||||
|
<repositories>
|
||||||
|
<repository>
|
||||||
|
<id>alfresco-public</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>alfresco-public-snapshots</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>daily</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
</repository>
|
||||||
|
<!-- Alfresco Enterprise Edition Artifacts, put username/pwd for server in settings.xml -->
|
||||||
|
<repository>
|
||||||
|
<id>alfresco-private-repository</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/private</url>
|
||||||
|
</repository>
|
||||||
|
</repositories>
|
||||||
|
<pluginRepositories>
|
||||||
|
<pluginRepository>
|
||||||
|
<id>alfresco-plugin-public</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
|
||||||
|
</pluginRepository>
|
||||||
|
<pluginRepository>
|
||||||
|
<id>alfresco-plugin-public-snapshots</id>
|
||||||
|
<url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url>
|
||||||
|
<snapshots>
|
||||||
|
<enabled>true</enabled>
|
||||||
|
<updatePolicy>daily</updatePolicy>
|
||||||
|
</snapshots>
|
||||||
|
</pluginRepository>
|
||||||
|
</pluginRepositories>
|
||||||
</project>
|
</project>
|
||||||
|
@@ -1,48 +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 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>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
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>
|
|
||||||
<!-- Defines the target WAR artifactId to run this amp, only used with the -Pamp-to-war switch
|
|
||||||
. | Allowed values: alfresco | share. Defaults to a repository AMP, but could point to your custom corporate Alfresco WAR -->
|
|
||||||
<alfresco.client.war>alfresco</alfresco.client.war>
|
|
||||||
</properties>
|
|
||||||
<profiles>
|
|
||||||
<!-- RM profile, manually activated, automatically adds support for RM development (dependencies) and install the RM amps in the WARs -->
|
|
||||||
<profile>
|
|
||||||
<id>rm</id>
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>${alfresco.groupId}</groupId>
|
|
||||||
<artifactId>alfresco-rm</artifactId>
|
|
||||||
<version>${alfresco.rm.version}</version>
|
|
||||||
<type>jar</type>
|
|
||||||
<classifier>classes</classifier>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
</profile>
|
|
||||||
</profiles>
|
|
||||||
</project>
|
|
@@ -1,9 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# Downloads the spring-loaded lib if not existing and runs the repository AMP
|
|
||||||
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 -XX:PermSize=300m" mvn integration-test -Prun
|
|
@@ -1 +0,0 @@
|
|||||||
Message: ${message}
|
|
@@ -1 +0,0 @@
|
|||||||
model["message"] = "Hello World!";
|
|
@@ -1,34 +0,0 @@
|
|||||||
<?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="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>
|
|
@@ -1,16 +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.
|
|
||||||
*/
|
|
@@ -1,17 +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.
|
|
||||||
-->
|
|
||||||
Test jsp. Change me!
|
|
@@ -1,2 +0,0 @@
|
|||||||
This folder (root in the AMP) gets mapped automagically in WEB-INF/licenses
|
|
||||||
in the war build
|
|
@@ -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 Maven 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");
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,57 +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.
|
|
||||||
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
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
# 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
|
|
@@ -1,23 +0,0 @@
|
|||||||
# Overrides only log4j locations and add the test logging properties
|
|
||||||
# This gets merged with the main file
|
|
||||||
|
|
||||||
# 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
|
|
@@ -1,25 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!-- This file is included only when running this project with -Pamp-to-war -->
|
|
||||||
<Context docBase="${alfresco.client.war.folder}" path="${alfresco.client.contextPath}">
|
|
||||||
|
|
||||||
|
|
||||||
<Resources className="org.apache.naming.resources.VirtualDirContext"
|
|
||||||
extraResourcePaths="/=${project.build.directory}/${project.build.finalName}/web" />
|
|
||||||
|
|
||||||
|
|
||||||
<Loader searchVirtualFirst="true" className="org.apache.catalina.loader.VirtualWebappLoader"
|
|
||||||
virtualClasspath="${project.build.outputDirectory};${project.build.testOutputDirectory};${project.build.directory}/${project.build.finalName}/config" />
|
|
||||||
|
|
||||||
<!--
|
|
||||||
<Environment override="false" type="java.lang.Boolean" name="properties/startup.enable" description="A flag that globally enables or disables startup of the major Alfresco subsystems." value="true"/>
|
|
||||||
<Environment override="false" type="java.lang.String" name="properties/dir.root" description="The filesystem directory below which content and index data is stored. Should be on a shared disk if this is a clustered installation."/>
|
|
||||||
<Environment override="false" type="java.lang.String" name="properties/hibernate.dialect" 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"/>
|
|
||||||
<Environment override="false" type="java.lang.String" name="properties/hibernate.query.substitutions" description="Mapping from tokens in Hibernate queries to SQL tokens. For PostgreSQL, set this to "true TRUE, false FALSE"."/>
|
|
||||||
<Environment override="false" type="java.lang.Boolean" name="properties/hibernate.jdbc.use_get_generated_keys" 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."/>
|
|
||||||
<Environment override="false" type="java.lang.String" name="properties/hibernate.default_schema" 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."/>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!-- This enables hot reloading of web resources from uncompressed jars (while in prod they would be loaded from WEB-INF/lib/{\*.jar}/META-INF/resources -->
|
|
||||||
<JarScanner scanAllDirectories="true" />
|
|
||||||
|
|
||||||
</Context>
|
|
@@ -1,199 +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 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>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>${alfresco.groupId}</groupId>
|
|
||||||
<artifactId>alfresco</artifactId>
|
|
||||||
<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>
|
|
||||||
<!-- Demonstrating the usage of a well known GA AMP (SharePoint Protocol Support) -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>${alfresco.groupId}</groupId>
|
|
||||||
<artifactId>alfresco-spp</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. This is normally empty, since customizations come from the AMPs -->
|
|
||||||
<overlay/>
|
|
||||||
<!-- The Alfresco WAR -->
|
|
||||||
<overlay>
|
|
||||||
<groupId>${alfresco.groupId}</groupId>
|
|
||||||
<artifactId>alfresco</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>
|
|
||||||
<overlay>
|
|
||||||
<groupId>${alfresco.groupId}</groupId>
|
|
||||||
<artifactId>alfresco-spp</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>
|
|
||||||
<!-- Needed to fix http://code.google.com/p/maven-alfresco-archetypes/issues/detail?id=150 -->
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.slf4j</groupId>
|
|
||||||
<artifactId>jcl-over-slf4j</artifactId>
|
|
||||||
<version>1.5.11</version>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
</profile>
|
|
||||||
<profile>
|
|
||||||
<id>rm</id>
|
|
||||||
<properties>
|
|
||||||
<alfresco.rm.artifactId>alfresco-rm</alfresco.rm.artifactId>
|
|
||||||
</properties>
|
|
||||||
<build>
|
|
||||||
<plugins>
|
|
||||||
<!-- Fetch Alfresco RM repo AMP -->
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-dependency-plugin</artifactId>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>get-rm-repo</id>
|
|
||||||
<phase>package</phase>
|
|
||||||
<goals>
|
|
||||||
<goal>copy</goal>
|
|
||||||
</goals>
|
|
||||||
<configuration>
|
|
||||||
<artifact>${app.rm.artifact}</artifact>
|
|
||||||
<outputDirectory>${app.rm.amps.location}</outputDirectory>
|
|
||||||
</configuration>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<!-- The current AMP artifact is installed into the Alfresco folder using alfresco-maven-plugin -->
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.alfresco.maven.plugin</groupId>
|
|
||||||
<artifactId>alfresco-maven-plugin</artifactId>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>install-rm-repo</id>
|
|
||||||
<phase>package</phase>
|
|
||||||
<goals>
|
|
||||||
<goal>install</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
<configuration>
|
|
||||||
<ampLocation>${app.rm.amps.location}</ampLocation>
|
|
||||||
<warLocation>${app.rm.war.location}</warLocation>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
</profile>
|
|
||||||
</profiles>
|
|
||||||
</project>
|
|
@@ -1,301 +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
|
|
||||||
cifs.enabled=false
|
|
||||||
|
|
||||||
ftp.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
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user