ACS6.x is mainly based on containers which makes use of popular
container platform Docker
Many of us are not familiar with containerization setup and
may not be ready to use it yet. In previous versions we had option to use
installers and it used to setup everything seamlessly. With ACS6.x we don’t
have installer option available and it is expected to leverage the use of
containerization technologies.
But there are ways to setup ACS6.x in the same ways as we used to do for previous versions i.e. using distribution package provided by Alfresco.
The purpose of this post is to document all the steps at one place when setting up ACS6.x manually using distribution package.
ACS 6.2.0-ga is the latest stable version available and we will use the same version here.
What we need before we start doing setup?
- ACS-6.2.0-ga package (alfresco-content-services-community-distribution-6.2.0-ga)
- ASS-1.4.0 package (alfresco-search-services-1.4.0)
- Java: Oracle jdk-11.0.1 or later/Open JDK 11.0.1 or later
- Tomcat: Tomcat 8.5.43
- ActiveMQ: ActiveMQ v5.15.8 (Optional). Mandatory for transformation services when using enterprise version (async transform service) and/or Out of process extensions.
- DB: PostgreSQL 11.4
- ImageMagick: ImageMagick v7.0.10
- Libreoffice: LibreOffice v6.3.5
Platform:
- Windows 10 x64
- ACS, Share and SOLR6 on same machine
- Setup Without SSL
For Linux based installation steps visit this post:
Setup ACS62-ga and ASS1.4 using distribution package part2
Interested in ACS7.x? checkout this post:
Let’s start gathering all the required prerequisites listed above.
- Download ACS 6.2.0-ga:
https://download.alfresco.com/cloudfront/release/community/201911-GA-build-368/alfresco-content-services-community-distribution-6.2.0-ga.zip
- Download ASS 1.4.0:
https://download.alfresco.com/cloudfront/release/community/SearchServices/1.4.0/alfresco-search-services-1.4.0.zip
Note: If you are planning to setup ACS 6.2.1/6.2.2 (Enterprise versions) and ASS 2.0, then download the appropriate distribution packages from Alfresco Support portal. All the steps outlined below will remain same. We are using community version of ACS 6.2 for this post hence we have to use ASS 1.4 as stated in the Supported platforms here
Download and Install Oracle JDK 11.0.4:
https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html
Note: Make sure you set the JAVA_HOME environment
variable (on windows). It is the installation path of jdk. E.g.
JAVA_HOME=C:\Program Files\Java\jdk-11.0.4
Download Tomcat 8.5.43 binary package:
https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.43/bin/apache-tomcat-8.5.43-windows-x64.zip
Note: Make sure ports 8005, 8080, 8443, AJP port 8009 are
open and not in use already. These are default ports used for tomcat. If you
have these ports already in use, make sure you change the ports accordingly in
<TOMCAT_INSTALLATION>/conf/server.xml.
Download ActiveMQ v5.15.8 binary package, it will be used for transformation services down the line:
https://archive.apache.org/dist/activemq/5.15.8/apache-activemq-5.15.8-bin.zip
Download and Install PostgreSQL 11.4:
https://get.enterprisedb.com/postgresql/postgresql-11.4-1-windows-x64.exe
Alternatively you can also download the binary package and extract it. No installation needed. It is useful if you have trouble doing installation on Windows 10.
Note: Make sure port 5432 is open and not already in use. Port 5432 is default for postgres to get db connection. If you have this port already in use, make sure you select a different port and use the same while configuring alfresco-global.properties.
https://imagemagick.org/download/binaries/ImageMagick-7.0.10-45-Q16-HDRI-x64-dll.exe
Above version is no longer available to download, use the below given alternatives.
https://imagemagick.org/script/download.php#windows
https://download.imagemagick.org/ImageMagick/download/binaries/
Optional Alfresco module packages (amps)-Useful for admins/developers:
https://repo1.maven.org/maven2/de/fmaul/javascript-console-repo/0.6/javascript-console-repo-0.6.amp
Now, we have completed all the prerequisites. Let’s move forward with setup.
Assuming you have already installed Postgres, launch
“pgAdmin4” from your postgres install location <PostgresInstallLocation>\PostgreSQL\11\pgAdmin
4\bin\pgAdmin4.exe
In my case: C:\PostgreSQL\11\pgAdmin 4\bin\pgAdmin4.exe
- Create a new user named “alfresco” and set a password which will be used by alfresco content service to connect to database. Here we will be using username as “alfresco” and password “alfresco”.
- Create a new database named : “alfresco”, make sure you select default encoding which is “utf8”.
- Grant all permissions for user “alfresco” on database “alfresco”.
- Alternatively, you can open the query tool and execute following SQL queries:
create role alfresco LOGIN password 'alfresco'; create database alfresco encoding 'utf8'; grant all on database alfresco to alfresco;
Prepare acs6.2.0-ga setup directory structure:
Create directory structure as shown below on your windows
drive (e.g. C:\):
- Install imagemagick in the directory setup as per the structure given above. E.g. install imagemagick in C:\alfresco-community62ga\imagemagick directory (use custom installation option to select the install directory). Alternatively you can download the binary package and extract the image magic binaries in the folder given above as per your choice.
- Install libreoffice in the directory setup as per the structure given above. E.g. install libreoffice in C:\alfresco-community62ga\libreoffice directory (use custom installation option to select the install directory).
- Install Tomcat, get the tomcat binary package (apache-tomcat-8.5.43-windows-x64.zip) downloaded as per the steps given above and extract its contents directly under tomcat directory. For example: C:\alfresco-community62ga\tomcat directory
Note: Make sure ports 8005, 8080, 8443, AJP port 8009 are
open and not in use already. These are default ports used for tomcat. If you
have these ports already in use, make sure you change the ports accordingly in
<TOMCAT_INSTALLATION>/conf/server.xml.
- Install ActiveMQ, get the activemq binary package (apache-activemq-5.15.8-bin.zip) downloaded as per the steps given above and extract its contents directly under activemq directory. For example: C:\alfresco-community62ga\activemq directory. Note that activemq may not be used at this time as we will be setting up with legacy transformation service but keeping the message broker setup ready for future use in case you would like to setup transformation service.
- Set ALF_HOME environment variable, this will be helpful for alfresco scripts such as apply_amps.bat, clean_tomcat.bat etc. to work properly. You always have option to manually change the paths in these files as needed. (Optional step)
- ALF_HOME=C:\alfresco-community62ga
- Copy contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\alf_data\keystore” into “C:\alfresco-community62ga\alf_data\keystore”
Following files will be copied:
- keystore -> Secret key keystore containing the secret key used to encrypt and decrypt node properties.
- keystore-passwords.properties -> Contains password protecting the keystore entries.
- Copy contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\keystore” into “C:\alfresco-community62ga\alf_data\keystore”
Following files will be copied:
- CreateSSLKeystores.txt -> Contains instructions to create an RSA public/private key pair for the repository with a certificate that has been signed by the Alfresco Certificate Authority (CA).
- readme.txt -> Text file containing information about other files in a directory.
- generate_keystores.bat -> Windows batch file for generating secure keys for SOLR communication.
- Copy contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\alfresco-pdf-renderer\alfresco-pdf-renderer-1.1-win64.tgz” into “C:\alfresco-community62ga\alfresco-pdf-renderer” and extract the alfresco-pdf-renderer-1.1-win64.tgz
You would have following file in “C:\alfresco-community62ga\alfresco-pdf-renderer” directory:
- alfresco-pdf-renderer.exe [Full path: C:\alfresco-community62ga\alfresco-pdf-renderer\alfresco-pdf-renderer.exe]
- Copy contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\amps” into “C:\alfresco-community62ga\amps”. We will be installing this alfresco module packages (amps) at later stage.
Following files will be copied:
- alfresco-share-services.amp -> Alfresco share service module containing extensions for search, datalist, sample sites patch etc.
- Copy the contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\bin” into “C:\alfresco-community62ga\bin” folder
Following files will be copied:
- alfresco-mmt.jar -> Alfresco Module Management Tool (MMT), A java library which supports alfresco module package installation/uninstallation/listing and preview operations etc.
- apply_amps.bat -> Utility to install amps kept in “amps” and “amps_share” directory. It will install amps related to alfresco on alfresco.war (keeps the backup of original war file) and amps related to share on share.war (keeps the backup of original war file) For more details visit: https://docs.alfresco.com/community/tasks/amp-install.html
- clean_tomcat.bat -> Windows batch file for cleaning out temporary application server files from previous installations.
- Win32NetBIOS.dll -> DLL handles the connection between the native CIFS server and Alfresco Content Services.
- Win32NetBIOSx64.dll -> DLL handles the connection between the native CIFS server and Alfresco Content Services.
- Win32Utils.dll -> DLL handles the connection between the native CIFS server and Alfresco Content Services.
- Win32Utilsx64.dll -> DLL handles the connection between the native CIFS server and Alfresco Content Services.
- Copy the contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\licenses” into “C:\alfresco-community62ga\licenses” folder. It contains files that have information about license terms used by alfresco including all third party licenses.
- Copy the contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\web-server\conf” into “C:\alfresco-community62ga\tomcat\conf” folder. conf directory contains Catalina repository and Share xml files.
- Copy the contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\web-server\lib” into “C:\alfresco-community62ga\tomcat\lib” or “C:\alfresco-community62ga\tomcat\shared\classes\lib” folder. lib directory contains the PostgreSQL JDBC jar file (postgresql-42.2.6.jar).
- Copy the contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\web-server\shared\classes” into “C:\alfresco-community62ga\tomcat\shared\classes” folder. shared directory includes the Alfresco Content Services configuration files:
- /classes/alfresco-global.properties.sample -> Sample alfresco global properties file, which is used for configuration properties.
- /classes/alfresco -> Contains the directory structure for the configuration override files, including the extension, and web-extension directories.
- Delete all files/folders from “C:\alfresco-community62ga\tomcat\webapps”
- Copy the contents from “C:\Downloads\alfresco-content-services-community-distribution-6.2.0-ga\web-server\webapps” into “C:\alfresco-community62ga\tomcat\webapps” folder.
- alfresco.war -> Alfresco repository web application.
- share.war -> Share interface web application.
- ROOT.war -> Application for the server root, also contains additional code/setup for handling alfresco office services module (alfresco-office-services). Alfresco Office Services (AOS) allow you to access Alfresco Content Services directly from all your Microsoft Office applications. We will not be installing this module since SSL is a mandatory enablement for this module.
- _vti_bin.war -> App to help and support AOS module.
Configure tomcat and alfresco content services:
- Open server.xml file which can be found under: “C:\alfresco-community62ga\tomcat\conf” directory [Full path: C:\alfresco-community62ga\tomcat\conf\server.xml] and update following:
- Find Connector with port "8080”.
- Add the URIEncoding and maxHttpHeaderSize attributes.
- Add the enableLookups, xpoweredBy and server attributes. (Optional Attributes for Tomcat 8.x and later)
- Set xpoweredBy attribute to true to cause Tomcat to advertise support for the Servlet specification using the header recommended in the specification. The default value is false.
- Set enableLookups to true if you want calls to request.getRemoteHost() to perform DNS lookups in order to return the actual host name of the remote client. Set to false to skip the DNS lookup and return the IP address in String form instead (thereby improving performance). By default, DNS lookups are disabled.
- Setting server to true, overrides the server header for the http response. If set, the value for this attribute overrides any Server header set by a web application. If not set, any value specified by the application is used. If the application does not specify a value then no Server header is set.
<Connector port="8080" protocol="HTTP/1.1" URIEncoding="UTF-8" connectionTimeout="20000" maxHttpHeaderSize="32768" redirectPort="8443" enableLookups="false" xpoweredBy="false" server="AlfrescoECM"/>
Tomcat uses ISO-8859-1 character encoding when decoding URLs that are received from a browser. This can cause problems when creating, uploading, and renaming files with international characters. By default, Tomcat uses an 8 KB header buffer size, which might not be large enough for the Kerberos authentication protocol. We need to increase this buffer size.
Update AJP Connector config you are planning to use it. By default it is commented in tomcat server.xml, make sure you add URIEncoding attribute to the config if you are planning to use it. This port is used when configuring external authentication.
See here for more details:
<Connector port="8009" URIEncoding="UTF-8" protocol="AJP/1.3" redirectPort="8443" xpoweredBy="false"/>
- Open the C:\alfresco-community62ga\tomcat\conf\catalina.properties file and update following:
- Change the value of the shared.loader= property to the following:
shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar
- Rename “C:\alfresco-community62ga\tomcat\shared\classes\alfresco-global.properties.sample” to “alfresco-global.properties”
- Open “C:\alfresco-community62ga\tomcat\shared\classes\alfresco-global.properties” and add the following configuration properties:
- Add the “dir.root” property as path to alf_data folder.
dir.root=C:/alfresco-community62ga/alf_data
- Add alfresco and share host, port, context and protocol specific properties. For more details see: https://docs.alfresco.com/content-services/6.2/config/#using-alfresco-globalproperties
alfresco.context=alfresco alfresco.host=${localname} alfresco.port=8080 alfresco.protocol=http share.context=share share.host=${localname} share.port=8080 share.protocol=http
- Add the database connection properties which alfresco will use to create a JDBC connection with db. Use the db name and credentials when we prepared the database.
db.driver=org.postgresql.Driver db.username=alfresco db.password=alfresco db.name=alfresco db.url=jdbc:postgresql://localhost:5432/${db.name} db.pool.max=275 db.pool.validate.query=SELECT 1
- Add the server mode property, leave it default to ‘UNKNOWN’.
system.serverMode=UNKNOWN
- Add the alfresco rmi services port and host properties.
alfresco.rmi.services.port=50500
alfresco.rmi.services.host=0.0.0.0
Within Alfresco, you can transform a document from one format to another. This feature requires you to install LibreOffice or OpenOffice.org.
OOoJODconverter
The JODConverter integration, which is a library that improves the stability and performance of OpenOffice.org or LibreOffice within Alfresco. The OOoJODConverter runs on the same machine as the Alfresco server and it supports:
- a pool of separate OpenOffice processes
- automatic restart of crashed OpenOffice processes
- automatic termination of slow OpenOffice operations
- automatic restart of any OpenOffice process after a number of operations (this is a workaround for OpenOffice memory leaks)
OOoDirect
The subsystem for direct OpenOffice integration, in which the Alfresco server manages OpenOffice directly. To enable or disable this subsystem, use the following property:
ooo.enabled=false
Note:
If you install Alfresco manually, by default, the OOoDirect subsystem is enabled, and the OOoJodconverter subsystem is disabled. Although it is possible to run both subsystems, Alfresco recommends that you enable only one at a time. To take advantage of the stability and performance benefits of the OOoJodconverter subsystem, ensure that you disable OOoDirect and enable OOoJodConverter using the following properties in the alfresco-global.properties file:
ooo.enabled=false
jodconverter.enabled=true
alfresco-pdf-renderer.root=C:/alfresco-community62ga/alfresco-pdf-renderer
alfresco-pdf-renderer.exe=${alfresco-pdf-renderer.root}/alfresco-pdf-renderer.exe img.root=C:/alfresco-community62ga/imagemagick img.dyn=${img.root}/lib img.exe=${img.root}/convert.exe img.coders=${img.root}/modules/coders img.config=${img.root} img.gslib=${img.root}/lib ooo.exe=C:/alfresco-community62ga/libreoffice/program/soffice.exe ooo.enabled=false ooo.port=8100 jodconverter.enabled=true jodconverter.officeHome=C:/alfresco-community62ga/libreoffice jodconverter.portNumbers=8100
- Add the activemq url property and disable messaging subsystem until you want to configure transformation services. It will be used when you setup transformation service.
messaging.subsystem.autoStart=false
We are not setting up transformation service currently but keeping activemq setup ready for future in case you would like to start using transformation service. For more details visit:
How to use local transformation serviceLocal vs Legacy Transformation Service
You can also create a custom t-engine as well, learn about the detailed steps here:
- Creating-a-t-engine: https://github.com/Alfresco/acs-packaging/blob/master/docs/creating-a-t-engine.md
- Developing-a-new-t-engine: https://docs.alfresco.com/content-services/latest/develop/repo-ext-points/content-transformers-renditions/#developing-a-new-t-engine
- Disable transformation service and enable legacy transformation service:
transform.service.enabled=false
local.transform.service.enabled=false legacy.transform.service.enabled=true
- Add property for email notification on invite, it is by default disabled.
notification.email.siteinvite=false
- Add the license location property.
dir.license.external=C:/alfresco-community62ga
- Add following properties related to security, smart folder and JMX. All values are default ootb
security.anyDenyDenies=false smart.folders.enabled=false alfresco.jmx.connector.enabled=false
- Add following properties related to FTP connection (Optional)
ftp.port=2121
ftp.enabled=true ftp.server.enables=true
- Enable logging so that you can configure any custom loggers or change/update log levels (Optional)
- Go to C:\alfresco-community62ga\tomcat\shared\classes\alfresco\extension folder and rename “custom-log4j.properties.sample” to “custom-log4j.properties”
- Mandatory Amps:
- “alfresco-share-services.amp” amp is mandatory for alfresco.war
Note: This amp installation is mandatory otherwise several functionalities including share search may not work. And you will also see following warning when you login to share: Alfresco is running without Share Services. See your System Administrator for more details
- Optional Amps: As part of this installation, we will be installing some optional amps which will be useful for admins/developers that can help in debugging and administration.
- support-tools-repo-1.1.0.0-amp.amp -> A module that provides utilities for developers and administrators via alfresco admin console. Download the amp from here, and copy in “C:\alfresco-community62ga\amps” folder.
- support-tools-share-1.1.0.0-amp.amp -> A module that provides utilities for developers and administrators via share admin console. Download the amp from here, and copy in “C:\alfresco-community62ga\amps_share” folder.
For more details visit:
- javascript-console-repo-0.6.amp -> A module that provides ability for developers and administrators to execute JavaScript code. It is repository layer dependency for share amp. Download the amp from here, and copy in “C:\alfresco-community62ga\amps” folder.
- javascript-console-share-0.6.amp -> A module that provides ability for developers and administrators to execute JavaScript code. Download the amp from here, and copy in “C:\alfresco-community62ga\amps_share” folder.
For more details visit:
- Make sure you update the "repository-url" to point to the alfresco host and port, in case you are setting up alfresco and share on different servers. Default values are "localhost" and "8080". We are setting up both acs and share on same host so we will leave it default.
<!-- If set, will present a WebDAV link for the current item on the Document and Folder details pages. Also used to generate the "View in Alfresco Explorer" action for folders. --> <repository-url>http://localhost:8080/alfresco</repository-url>
- Make sure you update the share "Remote" configuration to point to the alfresco host and port, in case you are setting up alfresco and share on different servers. Default values are "localhost" and "8080". We are setting up both ACS and Share on same host so we will leave it default.
<config evaluator="string-compare" condition="Remote"> <remote> <endpoint> <id>alfresco-noauth</id> <name>Alfresco - unauthenticated access</name> <description>Access to Alfresco Repository WebScripts that do not require authentication</description> <connector-id>alfresco</connector-id> <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url> <identity>none</identity> </endpoint> <endpoint> <id>alfresco</id> <name>Alfresco - user access</name> <description>Access to Alfresco Repository WebScripts that require user authentication</description> <connector-id>alfresco</connector-id> <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url> <identity>user</identity> </endpoint> <endpoint> <id>alfresco-feed</id> <name>Alfresco Feed</name> <description>Alfresco Feed - supports basic HTTP authentication via the EndPointProxyServlet</description> <connector-id>http</connector-id> <endpoint-url>http://localhost:8080/alfresco/s</endpoint-url> <basic-auth>true</basic-auth> <identity>user</identity> </endpoint> <endpoint> <id>alfresco-api</id> <parent-id>alfresco</parent-id> <name>Alfresco Public API - user access</name> <description>Access to Alfresco Repository Public API that require user authentication. This makes use of the authentication that is provided by parent 'alfresco' endpoint.</description> <connector-id>alfresco</connector-id> <endpoint-url>http://localhost:8080/alfresco/api</endpoint-url> <identity>user</identity> </endpoint> </remote> </config>
- Lastly, we need to fix a known bug in Share 6.2.0 where it user searches from admin tools fails to return results. For more info see these issues:
https://github.com/Alfresco/acs-community-packaging/issues/367
https://github.com/Alfresco/acs-community-deployment/issues/85
- To fix the issue we have to update C:\alfresco-community62ga\tomcat\shared\classes\alfresco\web-extension\share-config-custom.xml, Add below given config where <show-authorization-status> value should be false.
<config evaluator="string-compare" condition="Users" replace="true"> <users> <!-- minimum length for username and password --> <username-min-length>2</username-min-length> <password-min-length>3</password-min-length> <!-- Default value is 'true', setting it to 'false' to fix the user search issue. --> <show-authorization-status>false</show-authorization-status> </users> <!-- This enables/disables the Add External Users Panel on the Add Users page. --> <enable-external-users-panel>false</enable-external-users-panel> </config>
- Unzip the “alfresco-search-services-1.4.0.zip” package which we downloaded initially.
- Copy the extracted folder “alfresco-search-services” to e.g. C:\ drive. Full path will be “C:\alfresco-search-services”
- Open “C:\alfresco-community62ga\tomcat\shared\classes\alfresco-global.properties” and add the following configuration properties:
solr.host=localhost solr.port=8983 solr.secureComms=none #Possible values are: none, https solr.base.url=/solr index.subsystem.name=solr6
Note: We are setting up solr6
without SSL, hence using non SSL port and setting secureComms property as none.
- We are enabling the multi language search support, Its optional if you wish to enable it. By default it is disabled. Open “C:\alfresco-search-services\solrhome\conf\shared.properties” and update following:
alfresco.cross.locale.datatype.0={http://www.alfresco.org/model/dictionary/1.0}text alfresco.cross.locale.datatype.1={http://www.alfresco.org/model/dictionary/1.0}content alfresco.cross.locale.datatype.2={http://www.alfresco.org/model/dictionary/1.0}mltext
- We are enabling search suggestions for some properties, it is disabled by default. This feature is optional if you wish to enable it. You can also add additional properties down the line. Open “C:\alfresco-search-services\solrhome\conf\shared.properties” and update following:
alfresco.suggestable.property.0={http://www.alfresco.org/model/content/1.0}name
alfresco.suggestable.property.1={http://www.alfresco.org/model/content/1.0}title alfresco.suggestable.property.2={http://www.alfresco.org/model/content/1.0}description alfresco.suggestable.property.3={http://www.alfresco.org/model/content/1.0}content
More details on shared.properties can be found here: https://docs.alfresco.com/search-services/latest/install/options/
- If you would setup search services on a different or remote machine, you would need to set the SOLR_SOLR_HOST, SOLR_SOLR_PORT, SOLR_SOLR_BASEURL, SOLR_ALFRESCO_HOST, SOLR_ALFRESCO_PORT and SOLR_ALFRESCO_BASEURL environment variables. This is optional but we will keep the mapping for future reference.
- We are setting up without SSL, so set this variable SOLR_ALFRESCO_SECURECOMMS to none. It is mandatory as default value is https. Open “C:\alfresco-search-services\solr.in.cmd” file and add following at the end of the file:
set SOLR_SOLR_HOST=localhost
set SOLR_SOLR_PORT=8983
set SOLR_SOLR_BASEURL=/solr
set SOLR_ALFRESCO_HOST=localhost
set SOLR_ALFRESCO_PORT=8080
set SOLR_ALFRESCO_BASEURL=/alfresco
:: Since we are setting up with no SSL, this property need to be set to none. Default is https
set SOLR_ALFRESCO_SECURECOMMS=none
- You can also set SOLR_HOME variable in solr.in.cmd (if you see error like ERROR: Solr home directory C:\alfresco-search-services must contain solr.xml, then this setting is must)
set SOLR_HOME=C:\alfresco-search-services\solrhome
Alternatively you can set the properties in “C:\alfresco-search-services\solrhome\templates\rerank\conf\solrcore.properties” file as well before cores are created. If you have both alfresco and archive cores already created use the environment variable based approach.
For all the externalized search service configurations (environment variables), visit: https://docs.alfresco.com/search-services/latest/config/#search-services-externalized-configuration
- Starting and stopping solr6 (aka alfresco search service) instructions.
Starting Solr6:
.\solr\bin\solr.cmd start -a "-Dcreate.alfresco.defaults=alfresco,archive"
The command line param, -a passes additional JVM parameters, e.g., system properties using -D.
Note that, -Dcreate.alfresco.defaults=alfresco,archive command automatically creates the alfresco and archive cores. So you need to pass this param only on first/initial startup of solr in order to allow cores being created and configured.
Once Search Services is up and running, you should see a message similar to the following:
Startup message:
Waiting up to 180 seconds to see Solr running on port 8983 [\] Started Solr server on port 8983 (pid=443218). Happy searching!
Stopping Solr6:
.\solr\bin\solr.cmd stop -p 8983 Or .\solr\bin\solr.cmd stop -all
- Configure solr log, The logs are stored in the C:\alfresco-search-services\logs\solr.log file, by default. This can be configured in solr.in.cmd using SOLR_LOGS_DIR. This is optional setup. We are keeping default settings
set SOLR_LOGS_DIR=..\..\logs set LOG4J_CONFIG=file:!SOLR_LOGS_DIR!\log4j.properties
- Verify the SOLR Admin UI. Use the URL below to launch SOLR Admin UI and validate the status and cores:
http://localhost:8983/solr http://localhost:8983/solr/#/alfresco --> To check alfresco core status
Note: If you are planning to use Alfresco Search Services 2.0, make sure you check the Supported Platforms documentation here and use appropriate version of ACS 6.2. Steps would be same irrespective of the versions
Now we are done with all the setup and config changes.
Here are full “alfresco-global.properties”, “custom-log4j.properties”, “shared.properties”
and “solr.in.cmd” files for reference:
############################### ## Common Alfresco Properties # ############################### dir.root=C:/alfresco-community62ga/alf_data # 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 ### database connection properties ### db.driver=org.postgresql.Driver db.username=alfresco db.password=alfresco db.name=alfresco db.url=jdbc:postgresql://localhost:5432/${db.name} # Note: your database must also be able to accept at least this many connections. Please see your database documentation for instructions on how to configure this. db.pool.max=275 db.pool.validate.query=SELECT 1 # The server mode. Set value here # UNKNOWN | TEST | BACKUP | PRODUCTION system.serverMode=UNKNOWN ### RMI registry port for JMX ### alfresco.rmi.services.port=50500 # 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 # 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. #monitor.rmi.service.port=50508 ### External executable locations ### #PDF Renderer config, used for previewing pdf docs. alfresco-pdf-renderer.root=C:/alfresco-community62ga/alfresco-pdf-renderer alfresco-pdf-renderer.exe=${alfresco-pdf-renderer.root}/alfresco-pdf-renderer.exe #Imagemagick config img.root=C:/alfresco-community62ga/imagemagick img.dyn=${img.root}/lib img.exe=${img.root}/convert.exe img.coders=${img.root}/modules/coders img.config=${img.root} img.gslib=${img.root}/lib ####LibreOffice and jodconverter configurations #You can transform a document from one format to another using the OOoJodconverter subsystem. This feature requires you to install LibreOffice. #The Jodconverter integration is a library that improves the stability and performance of LibreOffice in Alfresco Content Services. #The Jodconverter runs on the same machine as the Alfresco Content Services server and it supports: # - a pool of separate LibreOffice processes # - automatic restart of crashed LibreOffice processes # - automatic termination of slow LibreOffice operations # - automatic restart of any LibreOffice process after a number of operations (this is a workaround for LibreOffice memory leaks) #OOoDirect #The subsystem for direct OpenOffice integration, in which the Alfresco server manages OpenOffice directly. To enable or disable this subsystem, use the following property: #ooo.enabled=false #Note: #If you install Alfresco manually, by default, the OOoDirect subsystem is enabled, and the OOoJodconverter subsystem is disabled. #Although it is possible to run both subsystems, Alfresco recommends that you enable only one at a time. #To take advantage of the stability and performance benefits of the OOoJodconverter subsystem, #ensure that you disable OOoDirect and enable OOoJodConverter using the following properties in the alfresco-global.properties file: ooo.enabled=false #jodconverter.enabled=true ooo.enabled=false jodconverter.enabled=true ooo.exe=C:/alfresco-community62ga/libreoffice/program/soffice.exe ooo.enabled=false ooo.port=8100 jodconverter.enabled=true jodconverter.officeHome=C:/alfresco-community62ga/libreoffice jodconverter.portNumbers=8100 ### E-mail site invitation setting ### notification.email.siteinvite=false ### License location ### dir.license.external=C:/alfresco-community62ga #Confiure ActiveMQ URL. messaging.broker.url=tcp://localhost:61616 messaging.subsystem.autoStart=false #Transform service configurations transform.service.enabled=false local.transform.service.enabled=false legacy.transform.service.enabled=true ### Allow extended ResultSet processing security.anyDenyDenies=false ### Smart Folders Config Properties ### smart.folders.enabled=false ### Remote JMX (Default: disabled) ### alfresco.jmx.connector.enabled=false ################ Solr Search service configurations ############### # Index Recovery Mode #------------- #index.recovery.mode=AUTO # Set this property unless you have explicitly chosen to expose some repository APIs without authentication solr.host=localhost solr.port=8983 #none, https solr.secureComms=none solr.base.url=/solr index.subsystem.name=solr6 ### FTP Server Configuration ### ftp.port=2121 ftp.enabled=true ftp.server.enables=true
#Tranformer specific logs
log4j.logger.org.alfresco.repo.content.transform.TransformerDebug=info
log4j.logger.org.alfresco.util.exec.RuntimeExecBootstrapBean=info
log4j.logger.org.alfresco.util.exec.RuntimeExec=info
#ScriptLogger
log4j.logger.org.alfresco.repo.jscript.ScriptLogger=debug
#Log for email executer
log4j.logger.org.alfresco.repo.action.executer.MailActionExecuter=info
#Transaction specific logs
log4j.logger.org.alfresco.repo.transaction.RetryingTransactionHelper=info
#Solr specific logs
log4j.logger.org.alfresco.solr.query.AbstractQParser=debug
log4j.logger.org.alfresco.repo.search.impl.solr.SolrQueryHTTPClient=debug
#Metadata extractor
log4j.logger.org.alfresco.repo.content.metadata.AbstractMappingMetadataExtracter=info
log4j.logger.org.alfresco.repo.content.metadata.MetadataExtracterRegistry=info
#Thumbnail logs
log4j.logger.org.alfresco.repo.thumbnail=info
# FTP server debugging
log4j.logger.org.alfresco.ftp.protocol=info
log4j.logger.org.alfresco.ftp.server=info
# Shared Properties file #Host details an external client would use to connect to Solr solr.host=localhost #If not set then solr.port will be the jetty.port #solr.port=8983 solr.baseurl=/solr # Properties treated as identifiers when indexed alfresco.identifier.property.0={http://www.alfresco.org/model/content/1.0}creator alfresco.identifier.property.1={http://www.alfresco.org/model/content/1.0}modifier alfresco.identifier.property.2={http://www.alfresco.org/model/content/1.0}userName alfresco.identifier.property.3={http://www.alfresco.org/model/content/1.0}authorityName alfresco.identifier.property.4={http://www.alfresco.org/model/content/1.0}lockOwner # Suggestable Properties alfresco.suggestable.property.0={http://www.alfresco.org/model/content/1.0}name alfresco.suggestable.property.1={http://www.alfresco.org/model/content/1.0}title alfresco.suggestable.property.2={http://www.alfresco.org/model/content/1.0}description alfresco.suggestable.property.3={http://www.alfresco.org/model/content/1.0}content # Data types that support cross locale/word splitting/token patterns if tokenised alfresco.cross.locale.property.0={http://www.alfresco.org/model/content/1.0}name alfresco.cross.locale.property.1={http://www.alfresco.org/model/content/1.0}lockOwner # Data types that support cross locale/word splitting/token patterns if tokenised alfresco.cross.locale.datatype.0={http://www.alfresco.org/model/dictionary/1.0}text alfresco.cross.locale.datatype.1={http://www.alfresco.org/model/dictionary/1.0}content alfresco.cross.locale.datatype.2={http://www.alfresco.org/model/dictionary/1.0}mltext alfresco.model.tracker.cron=0/10 * * * * ? *
@echo off
REM Increase Java Min/Max Heap as needed to support your indexing / query needs
set SOLR_JAVA_MEM=-Xms1g -Xmx1g
REM Alfresco configuration. This file is automatically included by solr. You can define your custom settings here
set SOLR_OPTS=%SOLR_OPTS% -Dsolr.jetty.request.header.size=1000000 -Dsolr.jetty.threads.stop.timeout=300000 -Ddisable.configEdit=true
REM Location where Solr should write logs to. Absolute or relative to solr start dir
set SOLR_LOGS_DIR=..\..\logs
set LOG4J_CONFIG=file:!SOLR_LOGS_DIR!\log4j.properties
set SOLR_SOLR_HOST=localhost
set SOLR_SOLR_PORT=8983
set SOLR_SOLR_BASEURL=/solr
set SOLR_ALFRESCO_HOST=localhost
set SOLR_ALFRESCO_PORT=8080
set SOLR_ALFRESCO_BASEURL=/alfresco
:: Since we are setting up with no SSL, this property need to be set to none. Default is https
set SOLR_ALFRESCO_SECURECOMMS=none
There are three services that we need to start one by one in order:
- Start DB
- To start DB, you can do either of the following:
- Use windows services, and start “postgresql-x64-11” service.
- Or Open command prompt and execute this command: C:\PostgreSQL\11\bin\pg_ctl.exe start -D “C:\PostgreSQL\11\data"
- Start Alfresco
- To start Alfresco, you can do either of the following:
- Open command prompt and navigate to “C:\alfresco-community62ga\tomcat\bin” and execute following command: catalina.bat start
- Or navigate to “C:\alfresco-community62ga\tomcat\bin” folder and execute “startup.bat”
- Start Solr6
- To start SOLR6, use the following command by navigating to “C:\alfresco-search-services\solr\bin” folder via command prompt:
- Initial start only: C:\alfresco-search-services\solr\bin\solr.cmd start -a "-Dcreate.alfresco.defaults=alfresco,archive"
- Consecutive start command: C:\alfresco-search-services\solr\bin\solr.cmd start
Note: See the search service configuration section for more details.
I have
created this bat file “start.bat”, you can use this to start all
services instead of doing one by one.
@echo off ECHO ################ Starting ACS, DB and Solr Services ############## ECHO. SET ALF_INSTALL_PATH=%1 SET SOLR_INSTALL_PATH=%2 SET POSTGRES_INSTALL_PATH=%3 :init IF "%~1" == "" ( SET ALF_INSTALL_PATH=C:\alfresco-community62ga ) IF "%~2" == "" ( SET SOLR_INSTALL_PATH=C:\alfresco-search-services ) IF "%~3" == "" ( SET POSTGRES_INSTALL_PATH=C:\PostgreSQL\11 ) goto startDB :startDB echo Starting DB... :: Using the windows service to start the db. :: net start postgresql-x64-11 REM You can also use this command, if there is any issue with permission elevation on windows %POSTGRES_INSTALL_PATH%\bin\pg_ctl.exe restart -D "%POSTGRES_INSTALL_PATH%\data" if errorlevel 1 (goto end) else (goto startACS) :startACS echo. echo Starting ACS... SET CATALINA_HOME=%ALF_INSTALL_PATH%\tomcat start /MIN /WAIT cmd /c %ALF_INSTALL_PATH%\tomcat\bin\catalina.bat start if errorlevel 1 (goto end) else (goto startSolr) :startSolr echo. set "initial=false" :: check if cores exists echo. set "initial=false" CD %SOLR_INSTALL_PATH%\solrhome :: check if cores exists set Exts=alfresco archive for %%A in (%Exts%) do ( echo Checking core: %%A if not exist %%A\NUL ( echo %%A doesn't exist set "initial=true" ) else ( echo %%A already exist set "initial=false" ) ) CD %ALF_INSTALL_PATH% if "%initial%" == "true" ( GOTO startSolrInitial ) else ( GOTO startSolrConsecutive ) :startSolrInitial echo. echo Starting SOLR for the first time, alfresco and archive cores will be created... start /MIN /WAIT cmd /c %SOLR_INSTALL_PATH%\solr\bin\solr.cmd start -a "-Dcreate.alfresco.defaults=alfresco,archive" if errorlevel 1 (goto end) :startSolrConsecutive echo. echo Starting SOLR... start /MIN /WAIT cmd /c %SOLR_INSTALL_PATH%\solr\bin\solr.cmd start if errorlevel 1 (goto end) :end echo. echo Exiting.. timeout 10
Note: If you see any warning in logs such as "org.apache.catalina.webresources.Cache.getResource Unable to add the resource at [/WEB-INF/classes/alfresco/templates/org/alfresco/dashboard.ftl] to the cache for web application [/share] because there was insufficient free space available after evicting expired cache entries - consider increasing the maximum size of the cache" or "org.apache.catalina.webresources.Cache.backgroundProcess The background cache eviction process was unable to free [10] percent of the cache for Context [/share] - consider increasing the maximum size of the cache. After eviction approximately [9,411] KB of data remained in the cache." then you can increase the resource case of disable resource caching. Follow the below given steps if you see these warnings:
- By default value for resource caching is 10240 kbytes, even when not added to [ALF_HOME]\tomcat\conf\context.xml. so either increase it until you stop seeing the warning or disable it completely.
- Make sure you clean the tomcat 'work' (C:\alfresco-community62ga\tomcat\work\Catalina) directory before restarting the server.
<Resources cacheMaxSize="100000" cachingAllowed="true"/>Or disable the caching
<Resources cachingAllowed="false" />
- The above configuration is default for tomcat but since for 'alfresco' and 'share' webapps we have cross contexts under '[ALF_HOME]\tomcat\conf\Catalina\localhost\ ' directory.
- Make the above given configuration changes in "alfresco.xml" and "share.xml" and clean the tomcat 'work' (C:\alfresco-community62ga\tomcat\work\Catalina) directory before restarting the server
<Context crossContext="true">
<Resources cachingAllowed="true" cacheMaxSize="100000">
<PostResources base="${catalina.base}/../modules/platform"
className="org.apache.catalina.webresources.DirResourceSet"
webAppMount="/WEB-INF/lib"/>
</Resources>
</Context>
<Context crossContext="true">
<Resources cachingAllowed="true" cacheMaxSize="100000">
<PostResources base="${catalina.base}/../modules/share"
className="org.apache.catalina.webresources.DirResourceSet"
webAppMount="/WEB-INF/lib"/>
</Resources>
</Context>
Stopping:
There are three services that we need to stop one by one in order:
- Stop Alfresco
- To stop Alfresco, you can do either of the following:
- Open command prompt and navigate to “C:\alfresco-community62ga\tomcat\bin” and execute following command: catalina.bat stop
- Or navigate to “C:\alfresco-community62ga\tomcat\bin” folder and execute “shutdown.bat”
- Stop Solr6
- To stop SOLR6, use the following command by navigating to “C:\alfresco-search-services\solr\bin” folder via command prompt:
- C:\alfresco-search-services\solr\bin\solr.cmd stop -all
- Or C:\alfresco-search-services\solr\bin\solr.cmd stop -p 8983
Note: See the search service configuration section for more details.
- Stop DB
- To stop DB, you can do either of the following:
- Use windows services, and stop “postgresql-x64-11” service.
- Or Open command prompt and execute this command: C:\PostgreSQL\11\bin\pg_ctl.exe stop -D “C:\PostgreSQL\11\data"
I have created this bat file “stop.bat”, you can use this to stop all services instead of doing one by one.
@echo off ECHO ################ Stopping ACS, DB and Solr Services ############## ECHO. SET ALF_INSTALL_PATH=%1 SET SOLR_INSTALL_PATH=%2 SET POSTGRES_INSTALL_PATH=%3 :init IF "%~1" == "" ( SET ALF_INSTALL_PATH=C:\alfresco-community62ga ) IF "%~2" == "" ( SET SOLR_INSTALL_PATH=C:\alfresco-search-services ) IF "%~3" == "" ( SET POSTGRES_INSTALL_PATH=C:\PostgreSQL\11 ) goto stopACS :stopACS echo. echo Stopping ACS from %ALF_INSTALL_PATH% ... SET CATALINA_HOME=%ALF_INSTALL_PATH%\tomcat start /MIN /WAIT cmd /c %ALF_INSTALL_PATH%\tomcat\bin\catalina.bat stop if errorlevel 1 (goto end) else (goto stopDB) :stopDB echo. echo Stopping DB from %POSTGRES_INSTALL_PATH% ... :: Using the windows service to stop the db. :: net stop postgresql-x64-11 REM You can also use this command, if there is any issue with permission elevation on windows %POSTGRES_INSTALL_PATH%\bin\pg_ctl.exe stop -D "%POSTGRES_INSTALL_PATH%\data" if errorlevel 1 (goto end) else (goto stopSolr) :stopSolr echo. echo Stopping SOLR from %SOLR_INSTALL_PATH% ... %SOLR_INSTALL_PATH%\solr\bin\solr.cmd stop -all if errorlevel 1 (goto end) :end echo. echo Exiting.. timeout 10
All the structure and updated files are available here for reference:
https://github.com/abhinavmishra14/alfresco62ga-solr-dist-setup
For Linux platform visit this post:
References:
Can you provide me deployments steps for Centos 7
ReplyDeleteRefer this post: https://javaworld-abhinav.blogspot.com/2021/02/setup-acs62-ga-and-ass14-distribution-stepbystep-centos.html
DeleteHi!
ReplyDeleteThank you very much for this tutorial.
When I am starting catalina I am having this error:
WARNING [main] org.apache.catalina.startup.ClassLoaderFactory.validateFile Problem with directory [C:\alfresco-community62ga\tomcat\shared\lib], exists: [false], isDirectory: [false], canRead: [false]
But I can't find anyhere where this is parameter configured!
I can only relate to this:
Change the value of the shared.loader= property to the following:
shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar
But I've changed that line in catalina.properties exactly as you mentioned.
You have any idea?
Thank you!
Yes shared.loader config looks correct but seems C:\alfresco-community62ga\tomcat\shared\lib directory is missing. Please cross check and create the directory if not created already. Check the directory structure and steps at the beginning.
DeleteYou can also refer sample configuration files in the github project provided for windows platform
Thank you! That was the issue.
DeleteI am glad you are able to resolve the issue.
DeleteHi Abhinav. Thanks for this guide. Am having difficulty in configuring Memory since current installation only shows 1GB. How do i go about specifically Windows Environment.
ReplyDeleteAre you configuring memory for ACS or ASS ?
DeleteFor ACS, just update the catalina.bat file. Look for :
set "JAVA_OPTS=%JAVA_OPTS% -Djava.protocol.handler.pkgs=org.apache.catalina.webresources"
And update it as, example increased the default memory to 2g:
set "JAVA_OPTS=%JAVA_OPTS% -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Xms2g -Xmx2g"
See here for reference: https://github.com/abhinavmishra14/alfresco62ga-solr-dist-setup/blob/master/windows-platform/alfresco-community62ga/tomcat/bin/catalina.bat#L220
----------------------------------------------------------------------------------------------------
For ASS, Update the "SOLR_JAVA_MEM" in solr.in.cmd file. Look for :
set SOLR_JAVA_MEM=-Xms1g -Xmx1g
And update it:
set SOLR_JAVA_MEM=-Xms2g -Xmx2g
See here for reference: https://github.com/abhinavmishra14/alfresco62ga-solr-dist-setup/blob/master/windows-platform/alfresco-search-services/solr.in.cmd#L28
Hello Abhinav,
ReplyDeleteThank you for this step by step clear intallation.
After having done everything I arrive on the authentication page of alfresco but the logins and mp don't work, so I don't arrive on the dashboard.
I've tried admin/admin, alfresco/alfresco, unsuccessfully.
Is there a solution please?
Thanks in advance.
Hi @imane
DeleteYou are right admin/admin should work. Looks like share is up but there is some issue with alfresco, can you check the logs and see if you can spot any errors? Or share the logs here (alfresco.log and catalina.log)
Hello @Abhinav,
DeleteThe problem was that I missed a change on a configuration file, everything is ok now thank you.
Now I want to migrate documents from a document management solution installed on the local server to Alfresco which is installed on the cloud.
is there a tool (like bulk import tool) that can do this?
if not how to do it please if you have any idea?
Thank you in advance.
Glad to hear you are able to resolve the issue.
DeleteFor migration you can use the bulk-import tool like this one:
https://github.com/pmonks/alfresco-bulk-import
or use OOTB option : https://docs.alfresco.com/content-services/6.1/admin/import-transfer/
https://docs.alfresco.com/content-services/community/admin/import-transfer/
Hello, I want to ask links could use to access to alfresco in my browser?
ReplyDeleteIf you have installed locally, to access alfresco app use : http://localhost:8080/alfresco and to access share use: http://localhost:8080/share
Deletethank you Abhinav . your article is very helpful . I was able to launch Alfresco 6.
ReplyDeleteI am looking forward to see article for Alfresco 7 with elastic search .
Thanks Raja. I have instructions for ACS7 here : https://javaworld-abhinav.blogspot.com/2021/06/setup-acs70-ass201-and-transformation-service.html
DeleteElastic search is enterprise only feature. You can find integration steps here: https://docs.alfresco.com/search-enterprise/latest/
I am covering community edition setup as part of the posts which is default integration with Solr6.
Hello Abhinav, Thanks a lot for breaking down the installation process. I get this error at the end of the installation. Can you help me out to point out the problem ?
ReplyDeleteERROR [repo.rendition2.RenditionDefinitionRegistry2Impl] [QuartzScheduler_Worker-2] Config read failed. Illegal access: this web application instance has been stopped already. Could not load [alfresco/renditions/0100-baseRenditions.json]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [alfresco/renditions/0100-baseRenditions.json]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1380)
at org.apache.catalina.loader.WebappClassLoaderBase.getResourceAsStream(WebappClassLoaderBase.java:1109)
at org.alfresco.util.ConfigFileFinder.getResourceAsStream(ConfigFileFinder.java:181)
at org.alfresco.util.ConfigFileFinder.readFromJar(ConfigFileFinder.java:139)
at org.alfresco.util.ConfigFileFinder.readFiles(ConfigFileFinder.java:87)
at org.alfresco.repo.rendition2.RenditionDefinitionRegistry2Impl.readConfig(RenditionDefinitionRegistry2Impl.java:290)
at org.alfresco.repo.rendition2.RenditionDefinitionRegistry2Impl$1.readConfig(RenditionDefinitionRegistry2Impl.java:164)
at org.alfresco.util.ConfigScheduler.readConfigAndReplace(ConfigScheduler.java:208)
at org.alfresco.util.ConfigScheduler$ConfigSchedulerJob.execute(ConfigScheduler.java:64)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
This error is related to transformation service, are you using legacy transformation service or local transformation service. Based on your usage type, set the following properties and see if that fixes the issue.
DeleteLegacy::::::::::::::::::::::
transform.service.enabled=false
local.transform.service.enabled=false
legacy.transform.service.enabled=true
Local:::::::::::::::::
localTransform.core-aio.url=http://localhost:8090/
local.transform.service.enabled=true
messaging.broker.url=tcp://localhost:61616
messaging.subsystem.autoStart=true
legacy.transform.service.enabled=false
Your guide is by far the easiest to follow instruction on Alfresco installation. Thank you so much. But please will you consider doing installing alfresco 7 distribution zip for windows 10 up...Thanks
ReplyDeleteHi, glad to hear that. Take a look at following posts. Win10 is already covered.
DeleteSetup ACS-7.x, ASS-2.x and Local Transformation Service using distribution package --> https://javaworld-abhinav.blogspot.com/2022/05/setup-acs-7-ass-2-and-local-windows.html
Setup ACS-7.2 with Elasticsearch and Transformation Service --> https://javaworld-abhinav.blogspot.com/2022/06/setup-acs-72-with-elasticsearch-and-transformservice.html
Hi Abhinav,
ReplyDeleteHow to use the in-place bulk import tool???
I didn't found any help in documentation.
Thanks
Srik
Take a look at this thread: https://hub.alfresco.com/t5/alfresco-content-services-forum/data-migration-from-4-to-5/m-p/309344/highlight/true#M25500
Deleteand
https://hub.alfresco.com/t5/alfresco-content-services-hub/bulk-importer/ba-p/289507
Hope this helps.
Hi Abhinav,
ReplyDeleteThank you for the details steps. I followed Windows installation steps and when I try to start alfresco-search-service with command .\solr\bin\solr.cmd start -a "-Dcreate.alfresco.defaults=alfresco,archive"
it is giving below message and solr is not starting.
Invalid command-line option: alfresco
Please suggest if I am missing anything.
Thanks
Sid
You may be not going to right context before executing the command.
DeleteTo start SOLR6, use the following command by navigating to “\solr\bin” e.g. “C:\alfresco-search-services\solr\bin” folder via command prompt and execute the commands or provide full path until \solr\bin before command. See examples below:
For initial start only (when starting solr for the first time after setup): C:\alfresco-search-services\solr\bin\solr.cmd start -a "-Dcreate.alfresco.defaults=alfresco,archive"
Consecutive start command: C:\alfresco-search-services\solr\bin\solr.cmd start
Alternatively you can use these convenience scripts:
https://github.com/abhinavmishra14/alfresco62ga-solr-dist-setup/blob/master/windows-platform/alfresco-community62ga/start.bat
More details: https://github.com/abhinavmishra14/alfresco62ga-solr-dist-setup/blob/master/windows-platform/alfresco-community62ga/start.bat#L41
https://github.com/abhinavmishra14/alfresco62ga-solr-dist-setup/blob/master/windows-platform/alfresco-community62ga/stop.bat
More details: https://github.com/abhinavmishra14/alfresco62ga-solr-dist-setup/blob/master/windows-platform/alfresco-community62ga/stop.bat#L41
hello thank you for the guide very easy to follow. i've been able to run alfresco following the guide later i tried to add new module from amp i used the tool 'apply_amps.bat' provided in the alfresco folder everything went well when i try to start the server, alfresco failed to start and share start properly but
ReplyDeletegot stuck on the login page after trying to log in. here is the error from the alfresco log.
2022-11-30 22:20:12,326 WARN [org.springframework.web.context.support.XmlWebApplicationContext] [localhost-startStop-1] Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authorityBridgeTableCache' defined in class path resource [alfresco/cache-context.xml]: Cannot resolve reference to bean 'tenantAdminService' while setting bean property 'tenantAdminService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tenantAdminService' defined in URL [jar:file:/C:/alfresco-community62ga/tomcat/webapps/alfresco/WEB-INF/lib/alfresco-repository-6.55.jar!/alfresco/mt/mt-admin-context.xml]: Cannot resolve reference to bean 'dbNodeServiceImpl' while setting bean property 'nodeService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbNodeService' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'permissionServiceImpl' while setting bean property 'permissionService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'permissionServiceImpl' defined in class path resource [alfresco/public-services-security-context.xml]: Cannot resolve reference to bean 'authorityService' while setting bean property 'authorityService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authorityService' defined in class path resource [alfresco/authority-services-context.xml]: Cannot resolve reference to bean 'personService' while setting bean property 'personService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'personService' defined in class path resource [alfresco/authentication-services-context.xml]: Cannot resolve reference to bean 'personServicePermissionsManager' while setting bean property 'permissionsManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'personServicePermissionsManager' defined in class path resource [alfresco/authentication-services-context.xml]: Cannot resolve reference to bean 'ownableService' while setting bean property 'ownableService';
Replied below.
Deletehello, sorry to repost again, my first post was as an anonymous sorry for that. i my previous post i stated that i ve been able to run alfresco following the guide later i a tried to add new module from amp
ReplyDeletei used the tool 'apply_amps.bat' provided in the alfresco folder everything went well when i try to start the server alfresco faild to start and share start properly but
got stuck on the login page after trying to log in. here is the the error from the alfresco log.
2022-11-30 22:20:12,326 WARN [org.springframework.web.context.support.XmlWebApplicationContext] [localhost-startStop-1] Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authorityBridgeTableCache' defined in class path resource [alfresco/cache-context.xml]: Cannot resolve reference to bean 'tenantAdminService' while setting bean property 'tenantAdminService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tenantAdminService' defined in URL [jar:file:/C:/alfresco-community62ga/tomcat/webapps/alfresco/WEB-INF/lib/alfresco-repository-6.55.jar!/alfresco/mt/mt-admin-context.xml]: Cannot resolve reference to bean 'dbNodeServiceImpl' while setting bean property 'nodeService';
Your repository did not start correctly as per the logs, hence you can not login. Check the logs from start to and end and see if you can find any errors that could be causing the error you posted.
DeleteMake sure your amp has no broken changes. If you are sure that your amp is working correctly when using SDK, then follow these additional steps and see if it fixes the issue:
1- Delete everything from C:\alfresco-community72\tomcat\work\Catalina\localhost
2- Delete the exploded war files "alfresco" and "share"
3- If you have a backup of your previous war files, copy them back and reapply the amps again. Make sure you take the backup of your war files.
See the detailed steps here: https://docs.alfresco.com/content-services/6.2/install/zip/amp/
hello i would like to know if you have any tutorial that deals with AOS configuration for alfresco community version thank you
ReplyDelete