BeCPG и Alvex
Столкнулся с их несовместимостью, отдельно прекрастно работают. Но если пробывать поставить вместе то альфреска отказывается запускаться. Кто то сталкивался с этим? Есть ли решение?
Ниже привожу кусок лога.
[collapse]
[m[0;32m17:34 15/05/14 [becpg-core] INFO [admin] Connected to database PostgreSQL version 9.2.4
[m[0;31m17:34 15/05/14 [becpg-core] ERROR [ContextLoader] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'schema.upgrade.core' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/dbscripts/db-schema-context.xml]: Cannot resolve reference to bean 'patch.db-V2.2-ACL-From-2.1-A' while setting bean property 'preUpdateScriptPatches' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'patch.db-V2.2-ACL-From-2.1-A' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/patch/patch-services-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 class path resource [alfresco/public-services-context.xml]: Cannot resolve reference to bean 'tenantAdminService' while setting bean property 'target'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tenantAdminService' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/mt/mt-admin-context.xml]: Cannot resolve reference to bean 'WorkflowService' while setting bean property 'workflowService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService_security' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexWorkflowHelper' while setting bean property 'workflowHelper'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexWorkflowHelper' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexOrgchartService' while setting bean property 'orgchartService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexOrgchartService' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-orgchart-ce-repo-1.19.jar!/alfresco/extension/alvex-orgchart-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanInitializationException: Property 'extension' is required for bean 'alvexOrgchartService'
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:353)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:153)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:63)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1073)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1857)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'patch.db-V2.2-ACL-From-2.1-A' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/patch/patch-services-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 class path resource [alfresco/public-services-context.xml]: Cannot resolve reference to bean 'tenantAdminService' while setting bean property 'target'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tenantAdminService' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/mt/mt-admin-context.xml]: Cannot resolve reference to bean 'WorkflowService' while setting bean property 'workflowService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService_security' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexWorkflowHelper' while setting bean property 'workflowHelper'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexWorkflowHelper' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexOrgchartService' while setting bean property 'orgchartService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexOrgchartService' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-orgchart-ce-repo-1.19.jar!/alfresco/extension/alvex-orgchart-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanInitializationException: Property 'extension' is required for bean 'alvexOrgchartService'
[/collapse]
Ниже привожу кусок лога.
[collapse]
[m[0;32m17:34 15/05/14 [becpg-core] INFO [admin] Connected to database PostgreSQL version 9.2.4
[m[0;31m17:34 15/05/14 [becpg-core] ERROR [ContextLoader] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'schema.upgrade.core' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/dbscripts/db-schema-context.xml]: Cannot resolve reference to bean 'patch.db-V2.2-ACL-From-2.1-A' while setting bean property 'preUpdateScriptPatches' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'patch.db-V2.2-ACL-From-2.1-A' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/patch/patch-services-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 class path resource [alfresco/public-services-context.xml]: Cannot resolve reference to bean 'tenantAdminService' while setting bean property 'target'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tenantAdminService' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/mt/mt-admin-context.xml]: Cannot resolve reference to bean 'WorkflowService' while setting bean property 'workflowService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService_security' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexWorkflowHelper' while setting bean property 'workflowHelper'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexWorkflowHelper' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexOrgchartService' while setting bean property 'orgchartService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexOrgchartService' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-orgchart-ce-repo-1.19.jar!/alfresco/extension/alvex-orgchart-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanInitializationException: Property 'extension' is required for bean 'alvexOrgchartService'
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:353)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:153)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:63)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1073)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1857)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'patch.db-V2.2-ACL-From-2.1-A' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/patch/patch-services-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 class path resource [alfresco/public-services-context.xml]: Cannot resolve reference to bean 'tenantAdminService' while setting bean property 'target'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tenantAdminService' defined in file [/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/mt/mt-admin-context.xml]: Cannot resolve reference to bean 'WorkflowService' while setting bean property 'workflowService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'WorkflowService_security' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexWorkflowHelper' while setting bean property 'workflowHelper'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexWorkflowHelper' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-advanced-workflows-ce-repo-1.17.jar!/alfresco/extension/alvex-advanced-workflows-context.xml]: Cannot resolve reference to bean 'alvexOrgchartService' while setting bean property 'orgchartService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'alvexOrgchartService' defined in URL [jar:file:/opt/alfresco-alfa/tomcat/webapps/alfresco/WEB-INF/lib/alvex-orgchart-ce-repo-1.19.jar!/alfresco/extension/alvex-orgchart-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanInitializationException: Property 'extension' is required for bean 'alvexOrgchartService'
[/collapse]
Прикрепленные файлы | Размер |
---|---|
catalina.zip | 342.71 кб |
Комментарии
20/05/2014 - 08:57
20/05/2014 - 09:21
Alvex 2014.04 Community
BeCPG Project Manager 1.6.0 (от 07.05.2014, на данный момент последняя версия)
20/05/2014 - 09:40
Немного ошибся)
21/05/2014 - 14:34
21/05/2014 - 14:40
Спасибо за исправление
27/05/2014 - 13:02
Вот текст при открытия окна бизнес процессов
27/05/2014 - 13:26
И еще: сегодня вышел релиз 2014.05.
27/05/2014 - 13:46
27/05/2014 - 15:21
[0;31m16:11 27/05/14 [becpg-core] ERROR [AbstractRuntime] Exception from executeScript - redirecting to status template error: 04270006 Wrapped Exception (with status template): 04270012 Failed to execute script 'classpath*:alfresco/templates/webscripts/list-definitions/list-definitions.get.js': Namespace prefix alvexbcpr is not mapped to a namespace URI
org.springframework.extensions.webscripts.WebScriptException: 04270006 Wrapped Exception (with status template): 04270012 Failed to execute script 'classpath*:alfresco/templates/webscripts/list-definitions/list-definitions.get.js': Namespace prefix alvexbcpr is not mapped to a namespace URI
28/05/2014 - 14:54
28/05/2014 - 16:53
Вопрос первый: альвекс дружит с кастомными бизнес процессами и списками данных?
Потом я попробывал удалить свои кастомные процессы, система начала ругаться что в namespace нету префикса из моего процесса. Попробывал удалить alvex (чтобы проверить работоспособность, ставил jar файлы), система начала ругаться уже на namespace alvexwfat.
Вопрос второй: Альвекс(jar файлы) при запуске кудато рапаковываються? чтобы очистить систему от альвекса мало удалить jar файлы?
P.S alvex-board-collaboration-ee-repo на месте.
30/05/2014 - 11:40
в логах ошибка:
2014-05-30 12:24:37,468 ERROR [freemarker.runtime] [http-bio-8080-exec-3] Template processing error: "on line 20, column 161 in org/alfresco/components/form/controls/textfield.ftl formLib.renderLocaleImage not found."
Сами логи в вложении.
Все файлы alvex находятся в нужных местах, отсутвующих нет.
12/06/2014 - 17:22
> Вопрос первый: альвекс дружит с кастомными
> бизнес процессами и списками данных?
Да. Поставьтесь без beCPG, залейте свои процессы и модели - все будет работать.
> Вопрос второй: Альвекс(jar файлы) при запуске
> кудато рапаковываються? чтобы очистить систему
> от альвекса мало удалить jar файлы?
Не распаковывается. Но если у вас есть ноды в репозитории, которые используют модели Alvex, то модели нельзя просто так удалять. Нужно сначала удалить ноды, только потом модели (ака jar-ники). Пример - запустили бизнес-процесс (может даже завершили штатно), в репе появились ноды (задачи процесса), которые используют модель этого процесса. Чтобы удалить модель, нужно сначала удалить до конца процессы, в т.ч. завершенные.
Это никак не специфично для Alvex. Попробуйте сделать так на собственных процессах - получите тот же эффект.
> Заметил что ошибка "Процесс не может быть запущен {0}"
> появляется даже если нет моих кастомных процессов (чистая
> Alfresco 4.2.f + BeCPG Project Manager + Alvex 2014.05)
Да, на таком чистом инстале проблема проявляется.
> > Но вообще как-то очень странно этот beCPG устроен.
> > Почему их amp-ы ставятся только с ключом '-force' - загадка.
> у меня вроде и без force ставились.
Оно ставится именно что только с -force. Возможно, Вы ставили скриптом установки от beCPG. Но он внутри себя молча вызывает с -force, причем подавляя вывод предупреждений.
Теперь самое интересное - что же происходит, и что с этим делать. Причина проблемы такая:
1. beCPG перегружает штатное API Alfresco для получения любых форм, в том числе форм задач процесса. Alvex тоже это делает. Почему так - потому что интерфейсов под вставку своего кода Alfresco в этом месте не предусмотрела, остается только замена на свою реализацию. При этом Alvex использует штатный механизм перегрузки, а beCPG при установке просто затирает исходную реализацию, складывая на ее место свою (да, именно для таких манипуляций и нужен ключ -force при установке).
2. В итоге используется реализация имени Alvex. Просто потому что штатный механизм перегрузки сделан именно для того, чтобы заменить реализацию Alfresco на свою. И если на месте реализации имени Alfresco де-факто лежит реализация имени beCPG - это ничего не меняет, она будет перегружена реализацией имени Alvex.
3. beCPG при установке затирает не только API получения форм, но и контролы форм (опять привет -force). Причем буквально все контролы и довольно жестоко - банальный textfield начинает зависеть от того, что отдают API имени beCPG. Именно на этом моменте все падает - потому что реализация имени beCPG заменена на реализацию имени Alvex, а перегруженные контролы никак не проверяют, что нестандартные функции имени beCPG доступны.
Как с этим жить:
1. Самый правильный сценарий:
Заставить Alfresco предусмотреть нужные интерфейсы для расширения API.
Заставить нас и beCPG перейти на них вместо перегрузки. (Мы готовы, не вопрос.)
2. Менее правильный сценарий:
Объяснить beCPG, что так жить нельзя. Заставить их (а) не затирать реализации, а перегружать их, (б) отвязать перегруженные контролы от нестандартных API. (Alvex сделан именно так - если будет использоваться реализация beCPG, у нас отвалятся некоторые красивости, ради которых сделана наша реализация, но вообще-то работать все будет.)
3. Самый быстрый сценарий:
С помощью напильника и колючей проволоки сделать свою третью реализацию API, склеив в ней все функции beCPG и Alvex. С точки зрения правильности - плохая идея, зато никого ни в чем убеждать не надо, можно просто сделать. Смотреть надо в сторону alfresco/site-webscripts/com/alvexcore/components/form/form.lib.ftl из состава Alvex и alfresco/site-webscripts/org/alfresco/components/form/form.lib.ftl из состава beCPG.
17/06/2014 - 11:41