Alfresco Maven SDK ã䜿ã£ãŠã¿ã
ãžã§ãã»ãããã2014 幎 1 æ <= ããŒã 1- IDE ã§ãããžã§ã¯ããæäœããŸã
- ãããžã§ã¯ãã®æ§é ãç解ãã
- å ±æã¢ã¯ã»ã¹ã«é©å¿ãããããžã§ã¯ãã®äœæ
- äžè¬çãªãããžã§ã¯ãã®äŸåé¢ä¿
- æŠäºç®æš
- ãããè©ŠããŠã¿ãŸããã: ã¢ãŒãã¿ã€ãã䜿çšããå ±æãããžã§ã¯ãã®äœæ
- Share Access ãã£ã¬ã¯ããªæ§é ãç解ãã
- Shareã®å éšãã¹ããéå§
- äŸåé¢ä¿ã®ç®¡ç
- ãã®ä»ã®èªäž»åŠç¿ã®ãããã¯
- 詳现æ å ±ã®å ¥æå
IDE ã§ãããžã§ã¯ããæäœããŸã
ããã¯å¿ é ã§ã¯ãããŸããããå€ãã®äººã¯ Alfresco ãã»ããã¢ãããããšãã« IDE ã§äœæ¥ããããšã奜ã¿ãŸããããã¯ã©ã® IDE ã§ãå®è¡ã§ããŸãããæã人æ°ã®ãã IDE ã® 1 ã€ã¯ Eclipse ãªã®ã§ããããã©ã®ããã«æ©èœããããèŠãŠã¿ãŸããããWeb éçºè åãã® Eclipse Java EE IDE ã® Kepler ããŒãžã§ã³ã䜿çšããŠããŸããMaven ãµããŒããçµã¿èŸŒãŸããŠããŸãã
äœæãããããžã§ã¯ããéãã«ã¯ã次ã®æé ãå®è¡ããŸãã
- ãã¡ã€ã«ãã€ã³ããŒããMavenãæ¢åã® Maven ãããžã§ã¯ããã次ãžããã¯ãªãã¯ããŸãã
- someco-mvn-tutorial-repo ãã£ã¬ã¯ããªãå«ããã£ã¬ã¯ããªãæå®ããŸããEclipse ã¯ãã®ãã£ã¬ã¯ããªããã§ãã¯ãããããžã§ã¯ãã®ãªã¹ãã«ãããžã§ã¯ãã衚瀺ããŸãããããžã§ã¯ãåã®æšªã«ãããã§ãã¯ããã¯ã¹ãéžæãããŠããããšã確èªããã次ãžããã¯ãªãã¯ããŸãã
- Eclipse ã«ã¯ Maven ãã©ã°ã€ã³ ããã«ã®èšå®ã衚瀺ãããŸããä»ã¯ç¡èŠããŠãåé¡ãããŸããããå®äºããã¯ãªãã¯ããŸãã
[ããŒã«ãŒ] ããã«ã«ã¯ãããã©ã°ã€ã³ã®å®è¡ãã©ã€ããµã€ã¯ã«æ§æã®å¯Ÿè±¡å€ã§ããããšãã Maven ã®åé¡ã®ãªã¹ãã衚瀺ãããŸãã
Maven ã«ã¯ãã©ã°ã€ã³ã«é¢ããåé¡ããããŸã (set-version)
ä¿®æ£ããã«ã¯:
- ãšã©ãŒãå³ã¯ãªãã¯ãããã¯ã€ãã¯ä¿®æ£ããéžæããŸãã
- ãpom.xml ã®ç®æšã»ããã®ããŒãžã§ã³ã Eclipse ãã«ãã§ç¡èŠããããã®ãšããŠæ°žç¶çã«ããŒã¯ããããéžæããŸããæºåãã§ããŠã
- POM ãé 眮ãããŠããå Žæ (ç§ã®å Žå㯠com.someco : someco-mvn-tutorial-repo : 1.0-SNAPSHOT) ãéžæãããOKããã¯ãªãã¯ããŸãã
- ãããžã§ã¯ããå³ã¯ãªãã¯ãããMavenããããããžã§ã¯ãã®æŽæ°ããéžæããŸãã
- ãããžã§ã¯ããéžæãããŠããããšã確èªãããOKããã¯ãªãã¯ããŸãã
ãããžã§ã¯ãã®æ§é ãç解ãã
ãããžã§ã¯ãã®ãã£ã¬ã¯ããªæ§é ã¯ãIDE ã§å°ãæ¢çŽ¢ãããããªããŸããããã«äœããããèŠãŠã¿ãŸãããã- pom.xmlãããžã§ã¯ãã®ã«ãŒãã« pom.xml ããããŸããããã¯ããããžã§ã¯ãã«ã€ããŠç¥ãå¿ èŠããããã¹ãŠã Maven ã«äŒããŸãããã³ãã¬ãŒããããããžã§ã¯ããäœæãããšãã«å¿ããèšå®ãèŠããŠããŸãã? ããã§èšå®ãå€æŽã§ããŸããããšãã°ãã¢ãŒãã¿ã€ãã®ããŒãžã§ã³ 1.1.1 ã§ã¯ãAlfresco Community Edition ããŒãžã§ã³ 4.2.e ã§äœæ¥ã§ããŸããå¥ã®ããŒãžã§ã³ã§äœæ¥ãããå Žåã¯ãããã€ãã®ããããã£ãå€æŽããããããæŽæ°ããããã« Maven ã«æ瀺ããã ãã§ãæ®ã㯠Maven ãåŠçããŠãããŸãã
- src/main/javaããã§ãJava ã³ãŒããæŽçããããã®ç¬èªã®ããã±ãŒãžãäœæããå¿ èŠããããŸããã«ã¹ã¿ã ã¢ã¯ã·ã§ã³å®è¡ã¯ã©ã¹ãã«ã¹ã¿ã ããã€ãã¢ãŒãWeb ã¹ã¯ãªããçšã® Java ã³ã³ãããŒã©ãŒãªã©ãããã«ãããŸãããããäœãªã®ãåãããªããŠããå¿é ããªãã§ãã ãããããã«ãã¥ãŒããªã¢ã«ãçšæãããŠããŸãããããã®ãã¡ã€ã«ã¯æçµçã« JAR ã«é 眮ãããŸããAMP ã Alfresco WAR ã«ã€ã³ã¹ããŒã«ãããŠããå ŽåãJAR ã¯WEB-INF/libå ã«ãããŸãã
- src/test src/test å ã®ãã¹ãŠã¯ãã¹ãã®å®è¡ã«é¢é£ããŠããŸããåäœãã¹ãèªäœã¯src/test/javaã«ãããŸãããããã®ã¯ã©ã¹ã§å¿ èŠãªãªãœãŒã¹ã¯ãã¹ãŠ src/test/resources ã«ãããŸããsrc/test/properties/localå ã«alfresco-global.propertiesãã¡ã€ã«ã衚瀺ãããŸããAlfresco ã«ã€ããŠãã§ã«ç¥ã£ãŠããå Žåã¯ãAlfresco ãµãŒããŒã®æ§æã« Alfresco ã䜿çšãããŠããããšããåç¥ã§ãããããã®å Žåãããã¯ãã¹ãç®çã§çµã¿èŸŒã¿ãµãŒããŒãå®è¡ããããã«ã®ã¿äœ¿çšãããŸãã
- src/main/ampä»ã®ãã¹ãŠã¯ãããžã§ã¯ãã®ãã®éšåã®ã©ããã«ãããŸããAMP ã®æ§é ã¯ååã«ææžåãããŠãããããããã§ã¯è€è£œããŸãããèŠç¹ã ããææããŸãã
- module.propertiesãã¡ã€ã«ã¯ãAMP ã® IDãããŒãžã§ã³ãAMP ã®å®è¡ã«å¿ èŠãª Alfresco ã®æå°ããŒãžã§ã³ãšæ倧ããŒãžã§ã³ãããã³åãäŸåé¢ä¿ãæã€ä»ã® AMP ãªã©ãAMP ã«ã€ããŠç¥ã£ãŠããå¿ èŠãããããšã Alfresco ã«äŒããŸãã
- config/alfresco/module/someco-mvn-tutorial-repoãã£ã¬ã¯ããªã¯ AMP ã®äžå¿ã§ããSpring XML ãã¡ã€ã«æ§æãXML ãã¡ã€ã«ã®ã³ã³ãã³ã ã¢ãã«ãããã³ãŠãŒã¶ãŒ ã€ã³ã¿ãŒãã§ã€ã¹æ§æãé 眮ããå ŽæãåŸã»ã©èª¬æããŸãããç§ã¯ãããã®ããããã«å¯ŸããŠãµããã£ã¬ã¯ããªãåé¢ããããšã奜ã¿ãŸãã
- ã¢ãžã¥ãŒã«ã« Web ã¹ã¯ãªãããŸãã¯ã¯ãŒã¯ãããŒãå«ãŸããŠããå Žåããããã¯ã¢ãžã¥ãŒã« ãã£ã¬ã¯ããªã«ã¯å«ãŸããŸããã代ããã«ããããã¯config/alfresco/extension/templates/webscripts ããã³ config/alfresco/extension/workflowsã«ãããŸãã
- ã¢ãžã¥ãŒã«ã«ã¯ãWeb ã¢ããªã±ãŒã·ã§ã³ã®ã«ãŒãã«ãããã€ããå¿ èŠãããã¯ã©ã€ã¢ã³ã ãªãœãŒã¹ãå«ãŸããå ŽåããããŸãããããã¯ãcssãjspãscriptsãimages ãã£ã¬ã¯ããªã®src/main/amp/webã«ãããŸãã
ããã§ããªããžã㪠ã¬ãã«èšå®ã®ãããžã§ã¯ããäœæããæ¹æ³ãç解ã§ããŸãããã·ã§ã¢ã¬ãã«ãèŠãŠã¿ãŸãããããã®äžç°ãšããŠãEclipse ãçµäºããã«ãããžã§ã¯ããäœæããããã®å¥ã®ãªãã·ã§ã³ã瀺ããŸãã
å ±æã¢ã¯ã»ã¹ã«é©å¿ãããããžã§ã¯ãã®äœæ
ãŸãããªããžã㪠ã¬ãã«ã§äœæããããããžã§ã¯ãã®æ§é ã¯ãé©å¿ãããå ±æã¢ã¯ã»ã¹ ã¬ã€ã€ãŒã®ãããžã§ã¯ãã®æ§é ãšãŸã£ããåãã§ããããšãç解ããå¿ èŠããããŸããAlfresco Maven SDK ã®å°æ¥ã«ãããŠãShare ãããžã§ã¯ãã«ã¯ 2 ã€ã®ç¹åŸŽããããŸããããã¯ããããžã§ã¯ãã®äŸåé¢ä¿ãš AMP WAR ãçµã¿èŸŒãŸããããšã§ããäžè¬çãªãããžã§ã¯ãã®äŸåé¢ä¿
å°ãç«ã¡æ¢ãŸã£ãŠãäŸåé¢ä¿ã®ç®¡çã«ã€ããŠè©±ããŸããããçŸæç¹ã§ã¯ãããã©ã«ãã§ãããžã§ã¯ã pom.xml ã«èšå®ãããã¢ãŒãã¿ã€ãã alfresco-repository ã¢ãŒãã£ãã¡ã¯ãã®äŸåé¢ä¿ã䜿çšããå®è£ ã«ãªã£ãŠããŸããå ±æãããžã§ã¯ãã«ã¯ãã®äŸåé¢ä¿ã¯ãããŸãããå®éãå€ãã®å ±æãããžã§ã¯ãã§ã¯ Java ããŸã£ãã䜿çšãããŠããŸããã次ã«ãpom.xml ãç·šéããŠãalfresco-repository ã®äŸåé¢ä¿ãåé€ããŸããããããã«ãããã㢠ã³ã³ããŒãã³ãããã³é¢é£ãããã¹ã ã¯ã©ã¹ãã³ã³ãã€ã«æã«ãšã©ãŒãçæããŸããåãå€ãå¯èœã§ããæŠäºç®æš
Share ãããžã§ã¯ããåºå¥ãããã 1 ã€ã®ç¹ã¯ãAMP ããããã€ããã WAR ã§ããããã§ã¯ãå±å€ WAR ã®ä»£ããã«ãå ±æ WAR ã«ãããã€ããå¿ èŠããããŸããããã¯ãpom.xml ã® alfresco.client.war ããããã£ã§æ§æãããŸããããã©ã«ãã§ã¯ãããã¯ãå±å€ãã«èšå®ãããŠããŸããå ±æãããžã§ã¯ãã®å Žåã¯ããshareãã«çœ®ãæããå¿ èŠããããŸãããããè©ŠããŠã¿ãŸããã: ã¢ãŒãã¿ã€ãã䜿çšããå ±æãããžã§ã¯ãã®äœæ
äžè¬èšå®ã§æ°ãããããžã§ã¯ããäœæããŸããããã³ãã³ã ã©ã€ã³ã«ç§»åããåã«å®è¡ããã®ãšåãã¢ãŒãã¿ã€ã ã³ãã³ããå®è¡ããæ°ãã artifactId ãé€ããŠãalfresco.client.war ããããã£ããshareãã«å€æŽããŸããEclipse ã䜿çšããŠããªãå Žåã¯ãä»ããå®è¡ããŠã次ã®ã»ã¯ã·ã§ã³ãã¹ãããããŠãã ããããã 1 ã€ã®ãªãã·ã§ã³ã¯ãIDE ãé¢ããããšãªã Alfresco Maven SDK ã䜿çšããŠæ°ãã Alfresco ãããžã§ã¯ããäœæã§ããããã« Eclipse ãæ§æããããšã§ãããããããã
- ãã¡ã€ã«ãæ°ãã Maven ãããžã§ã¯ãã
- ãrepoããããžã§ã¯ã ãã£ã¬ã¯ããªãå«ããã£ã¬ã¯ããªãéžæãã[次ãž] ãã¯ãªãã¯ããŸãã
- ãæ§æããã¯ãªãã¯ãããšãAlfresco ãã£ã¬ã¯ããªããªã¹ãã«è¿œå ã§ããŸãã
- ããªã¢ãŒãã«ã¿ãã°ã®è¿œå ããã¯ãªãã¯ããŸã
- ã«ã¿ãã°ãã¡ã€ã«ãšããŠãhttps://artifacts.alfresco.com/nexus/content/groups/public/archetype-catalog.xmlããéžæããŸãããAlfresco Archetypesããšãã説æãéžæããŸãããã®åŸããOKããã¯ãªãã¯ãããç°å¢èšå®ãããã«ã®è¿ãã§ããäžåºŠãOKããã¯ãªãã¯ããŸãã
- ããã§ããã£ã¬ã¯ããªå ã®ãAlfresco Archetypesããéžæãããšããªã¹ãã«å€æ°ã®ã¢ãŒãã¿ã€ãã衚瀺ãããŸãã
- ãorg.alfresco.maven.archetypeããéžæãããšããã¥ãŒããªã¢ã«ã®åé ãšåã 2 ã€ã®ã¢ãŒãã¿ã€ãããã£ã«ã¿ãŒã«è¡šç€ºãããŸãã
- ãalfresco-amp-archetypeããéžæããã次ãžããã¯ãªãã¯ããŸãã
- groupIdãšããŠãcom.somecoããartifactIdãšããŠãsomeco-mvn-tutorial-shareããéžæããalfresco_target_amp_client_warããshareãã«å€æŽããŸãããå®äºããã¯ãªãã¯ããŸãã
Share Access ãã£ã¬ã¯ããªæ§é ãç解ãã
å ã»ã©ãè¿°ã¹ãããã«ããã®ãããžã§ã¯ãã®æ§é ã¯ç§ãã¡ã®ãªããžã㪠ãããžã§ã¯ããšãŸã£ããåãã§ããå¯äžã®éãã¯ããªããžã㪠ãããžã§ã¯ãã§ã¯ãWeb ã¹ã¯ãªãããªã©ã¯ src/main/amp/config/alfresco/extension/templates/webscripts å ã«é 眮ãããäžè¬ãããžã§ã¯ãã§ã¯ src/main/amp/config/alfresco ã«é 眮ãããããšã§ãã /web-extension/site-webscriptsãShareã®å éšãã¹ããéå§
å€ãã®å Žåãäž¡æ¹ã®ã¬ãã«ã®èšå®ãåæã«è¡ãããšã«ãªããŸããäžè¬ã¬ãã«ã«ã¯ã¡ãã»ãŒãžã®ãªããžããªãå¿ èŠã§ãããããè¡ã 1 ã€ã®æ¹æ³ã¯ã以äžã䜿çšããŠãªããžã㪠ãããžã§ã¯ããéå§ããããã« Maven ã«æ瀺ããããšã§ããcd someco-mvn-tutorial-repo mvn çµ±åãã¹ã -Pamp-to-war次ã«ã次ã䜿çšããŠå ±æãããžã§ã¯ããå®è¡ããŸãã
cd someco-mvn-tutorial-share mvn çµ±åãã¹ã -Pamp-to-war -Dmaven.tomcat.port=8081äž¡æ¹ã®ãµãŒããŒãèµ·åããããhttp://localhost:8081/share ãéããŠãã°ã€ã³ããã¢ãžã¥ãŒã«ããã¹ãã§ããŸãã
äŸåé¢ä¿ã®ç®¡ç
Apache Maven ã®åªããç¹ã¯ããããžã§ã¯ãã®äŸåé¢ä¿ã管çããŠãããããšã§ããå¿ èŠãªã®ã¯ãpom.xml ãæ§æã㊠Maven ã«ãããã«ã€ããŠäŒããããšã ãã§ããããã©ã«ãã§ã¯ãAlfresco Maven SDK ã¯ãããžã§ã¯ãã« 2 ã€ã®äŸåé¢ä¿ (alfresco-repository ãš junit) ãäœæããŸããåã«æžããããã«ãAlfresco Share ãããžã§ã¯ã㯠Alfresco ãªããžããªã«äŸåããŠããªããããsomeco-mvn-tutorial-share ãããžã§ã¯ãã®å Žåã¯ãããã®äŸåé¢ä¿ãåé€ã§ããŸããããããJava ããŒã¹ã® Web ã¹ã¯ãªãããªã©ãJava ã®ãã®ã Share ãããžã§ã¯ãã«è¿œå ãããå Žåã¯ã©ãããã°ããã§ãããã? ãã®å ŽåãäŸåé¢ä¿ãè¿œå ããå¿ èŠããããŸãã
Web ã¹ã¯ãªããã¯ã©ã®ã¬ãã«ã§ãå®è¡ã§ããŸãããªããžã㪠ãããžã§ã¯ãã« Java ããŒã¹ã® Web ã¹ã¯ãªãããèšè¿°ããå Žåãalfresco-repository ã¢ãŒãã£ãã¡ã¯ãã®äŸåé¢ä¿ã spring-webscripts ã¢ãŒãã£ãã¡ã¯ãã«äŸåãããããã¯ã©ã¹ãæ§ç¯ãããŸããEclipse 㧠pom.xml ãã¡ã€ã«ã®äŸåé¢ä¿éå±€ãéããšãããã確èªã§ããŸãã
Eclipse ã®äŸåé¢ä¿éå±€ ãã 1 ã€ã®ãªãã·ã§ã³ã以äžãå®è¡ãããšãäŸåé¢ä¿ã®éå±€ã確èªã§ããŸãã
mvn äŸåé¢ä¿:ãªã¹ããããã£ãŠãJava ããŒã¹ã® Web ã¹ã¯ãªããã Share ãããžã§ã¯ãã«è¿œå ããã«ã¯ãspring-webscripts ãäŸåé¢ä¿ãšããŠè¿œå ããå¿ èŠããããŸãããããè¡ãã«ã¯ã次ã®ããã« pom.xml ãç·šéããŸãã
<äŸåé¢ä¿> <groupId>org.springframework.extensions.surf</groupId> <artifactId>spring-webscripts</artifactId> <ããŒãžã§ã³>1.2.0-M14</ããŒãžã§ã³> <scope>æäŸ</scope> </äŸåé¢ä¿>Java ããŒã¹ã® Web ã¹ã¯ãªããã¯ããã®èŠªã¯ã©ã¹ã§ãã DeclarativeWebScript ãèŠã€ããããšãã§ããããã«ãªããŸãã
DeclarativeWebScript ã¯ã©ã¹ã spring-webscripts ã¢ãŒãã£ãã¡ã¯ãã«å«ãŸããŠããããšãã©ããã£ãŠç¥ã£ãã®ãçåã«æããããããããŸãããããšãã°ãhttp://artifacts.alfresco.comã«ã¢ã¯ã»ã¹ããŠèŠã€ãããšããŸããã¯ã©ã¹ããšã«æ€çŽ¢ãããšããã®ã¯ã©ã¹ãå«ããã¹ãŠã®ã¢ãŒãã£ãã¡ã¯ãã衚瀺ãããŸãã
ãã®ä»ã®èªäž»åŠç¿ã®ãããã¯
ããã§ãAlfresco Maven SDK ã䜿çšããŠãããžã§ã¯ããäœæããAlfresco ãªããžããªãšããŠäœ¿çšããAlfresco Share ãæ§æããæ¹æ³ãããããŸãããAlfresco éçºãåããŠã®æ¹ã¯ããããžã§ã¯ãããŸãšããŠéå§ããã®ãéåžžã«ç°¡åã§ããããšã«åæããŠããã ãããšæããŸãããã§ã« Alfresco ã«æ £ããŠãããã®ã®ããŸã å€ã SDK ã䜿çšããŠããå Žåã¯ããããæ°ãã SDK ã«åãæ¿ã㊠AMP ãäœæããåæ©ã«ãªãã°å¹žãã§ãããã®ãã¥ãŒããªã¢ã«ã§ã¯ã«ããŒãããŠããªããããã¯ãå€æ°ãããŸãããèªèº«ã®è£éã§æ¢çŽ¢ããŠããã ãããã«ããããã¯æ®ããŠãããŸãããã®äžéšã次ã«ç€ºããŸãã
- Alfresco Maven SDK ã¯ãJRebelãšåŒã°ããããŒã«ãšçµã¿åãããŠäœ¿çšââãããšãåçã¯ã©ã¹ã®ãªããŒãããµããŒãããŸãã
- ãã®ãã¥ãŒããªã¢ã«ã§ã¯ãAMP ã¢ãŒãã¿ã€ãã«ã€ããŠèª¬æããŸãããã ããAlfresco Maven SDK ã«ã¯ããªãŒã«ã€ã³ã¯ã³ãšåŒã°ããå¥ã®ã¢ãŒãã¿ã€ããå«ãŸããŠããŸãããã®ã¢ãŒãã¿ã€ãã§ã¯ãSOLR ãå«ãå®å šãª Alfresco ã€ã³ã¹ããŒã«ãæäŸãããŸãã
- Alfresco Maven SDK ã¯ãCommunity Edition ãš Enterprise Edition ã®äž¡æ¹ã§ãµããŒããããŠããŸããEnterprise Edition ã§ã¢ãŒãã£ãã¡ã¯ãã«ã¢ã¯ã»ã¹ããéã«ãµããŒããå¿ èŠãªå Žåã¯ãAlfresco ãµããŒãã«ãåãåãããã ããã
詳现æ å ±ã®å ¥æå
- Alfresco Maven SDK ã®å ¬åŒããã¥ã¡ã³ãã¯http://docs.alfresco.comã«ãããŸãã
- Alfresco Maven SDK ã®è©³çŽ°ãªããã¥ã¡ã³ãã¯ã artifacts.alfresco.comã«ãããŸãã
- Alfresco Summit ã§ã® Gab ãã¬ãŒã³ããŒã·ã§ã³Alfresco ãœãªã¥ãŒã·ã§ã³ã®ãã¹ãé§åãè¿ éãªéçºãç¶ç¶çããªããªãŒ
- ã€ã³ã¹ã¿ã³ã Apache Maven ã¹ã¿ãŒã¿ãŒMaurizio Turatti ãš Maurizio Pillitu ã«ããæ¬ã¯ãApache Maven ã«ã€ããŠè©³ããç¥ãããå Žåã«æé©ãªãªãœãŒã¹ã§ãã
- Alfresco Summit ã® Gethin James ã«ããAlfresco éçºãã¬ãŒã³ããŒã·ã§ã³ã®æŠèŠ
- ECM Architectã®Alfresco Developer ã·ãªãŒãºã«ã¯ãã«ã¹ã¿ã ã³ã³ãã³ã ã¢ãã«ãã¢ã¯ã·ã§ã³ãåäœãã¯ãŒã¯ãããŒãWeb ã¹ã¯ãªããã«é¢ããç¡æã®ãã¥ãŒããªã¢ã«ãå«ãŸããŠããŸãã
GO TO FULL VERSION