Alfresco 5.0.2
手順 procedures
/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/libにcors-filter-1.9.3.jar,java-property-utils-1.9.1.jarが配置されていることを確認します。
Make sure the /opt/alfresco/tomcat/webapps/alfresco/WEB-INF/lib were layout in to the cors-filter-1.9.3.jar,java-property-utils-1.9.1.jar
- /opt/alfresco/tomcat/webapps/alfresco/WEB-INF/web.xmlを編集します。start editing /opt/alfresco/tomcat/webapps/alfresco/WEB-INF/web.xml
<!-- CORS Filter Begin -->から<!-- CORS Filter End -->のコメント化されているfilter要素をコメント解除する。Delete the comment at filter element
from <!-- CORS Filter Begin --> to <!-- CORS Filter End -->
<!-- CORS Filter Begin --> <filter> <filter-name>CORS</filter-name> <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class> <init-param> <param-name>cors.allowGenericHttpRequests</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>cors.allowOrigin</param-name> <param-value>http://localhost:8081</param-value> </init-param> <init-param> <param-name>cors.allowSubdomains</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>cors.supportedMethods</param-name> <param-value>GET, HEAD, POST, PUT, DELETE, OPTIONS</param-value> </init-param> <init-param> <param-name>cors.supportedHeaders</param-name> </init-param> <init-param> <param-name>cors.supportsCredentials</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>cors.maxAge</param-name> <param-value>3600</param-value> </init-param> </filter> <!-- CORS Filter End -->
Please specify the promition to access the URL at cross domain
init-param要素のcors.allowOriginパラメーターで指定されているURLにクロスドメインでのアクセスを許可するURLを指定する。
(ここではすべてのURLからのアクセスを許可する場合はアスタリスクとしていますが環境に応じて適切なURLを指定してください)<init-param> <param-name>cors.allowOrigin</param-name> <!--param-value>http://localhost:8081</param-value--> <param-value>*</param-value> </init-param>
<!-- CORS Filter Mappings Begin -->から<!-- CORS Filter Mappings End -->のコメント化されているfilter-mapping要素をコメント解除する。
<!-- CORS Filter Mappings Begin --> <filter-mapping> <filter-name>CORS</filter-name> <url-pattern>/api/*</url-pattern> <url-pattern>/service/*</url-pattern> <url-pattern>/s/*</url-pattern> <url-pattern>/cmisbrowser/*</url-pattern> </filter-mapping> <!-- CORS Filter Mappings End -->
Alfrescoを再起動します。Reboot the Alfresco.
Alfresco 5.0.1
手順
cors-filter-2.4.jarとjava-property-utils-1.9.1.jarを/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/libに配置します。layout the and to .
/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/web.xmlを下記のように編集します。 exited the to following function.
<filter>要素のCORSはどこに設定しても問題は無し。
ただし、<filter-mapping>はGlobal Localization Filterの後、CMIS security context cleaning filterの前にする必要があるそうです。
<filter> <filter-name>JSF Session Synchronized Filter</filter-name> <filter-class>org.alfresco.repo.web.filter.beans.SessionSynchronizedFilter</filter-class> </filter> <!-- ここから追加 --> <filter> <filter-name>CORS</filter-name> <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class> <init-param> <param-name>cors.allowOrigin</param-name> <param-value>*</param-value> </init-param> <init-param> <param-name>cors.allowSubdomains</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>cors.supportedMethods</param-name> <param-value>GET, POST, HEAD, PUT, DELETE, OPTIONS</param-value> </init-param> <init-param> <param-name>cors.supportedHeaders</param-name> <param-value>Content-Type, Accept, Authorization</param-value> </init-param> </filter> <!-- ここまで追加 --> <filter-mapping> <filter-name>Global Localization Filter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> </filter-mapping> <!-- ここから追加 --> <filter-mapping> <filter-name>CORS</filter-name> <url-pattern>/api/*</url-pattern> <url-pattern>/service/*</url-pattern> <url-pattern>/s/*</url-pattern> <url-pattern>/cmisbrowser/*</url-pattern> </filter-mapping> <!-- ここまで追加 --> <filter-mapping> <filter-name>CMIS security context cleaning filter</filter-name> <url-pattern>/cmisws/*</url-pattern> </filter-mapping>
Alfrescoを再起動します。 Reboot the Alfresco.
参考情報
CORSに間して
Cross-origin resource sharing
W3C Cross-Origin Resource Sharing
Using CORS
AlfrescoのCORSモジュールに関する情報は下記となります。
http://www.slideshare.net/jottley/cors-enable-alfresco-for-cors
http://software.dzhuvinov.com/cors-filter-installation.html
http://software.dzhuvinov.com/cors-filter-configuration.html