cancel
Showing results for 
Search instead for 
Did you mean: 

Scanner open-source integration

ciccio17
Champ in-the-making
Champ in-the-making
Hello,

is there any open-source (not Kofax or eCopy) solution for integration with scanner?

Thank you for info.

Regards
26 REPLIES 26

aman79
Champ in-the-making
Champ in-the-making
its giving error 404 Not found

savic_prvoslav
Champ on-the-rise
Champ on-the-rise
what is not found?

aman79
Champ in-the-making
Champ in-the-making
I am getting the following error after copying ocr-transformers-context.xml, and web-client-config-custom.xml files in the extension folder:

HTTP Status 404 -

type Status report

message

description The requested resource () is not available.
Apache Tomcat/6.0.18

savic_prvoslav
Champ on-the-rise
Champ on-the-rise
You must tell my what tomcat says in the log not browser in order to help you.

aman79
Champ in-the-making
Champ in-the-making
This is what I get from log file

09:39:35,234 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/repository.properties]
09:39:35,250 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from class path resource [alfresco/domain/transaction.properties]
09:39:35,250 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from file [C:\Alfresco\tomcat\webapps\alfresco\WEB-INF\classes\alfresco\module\org_alfresco_module_dod5015\alfresco-global.properties]
09:39:35,250 INFO  [org.alfresco.config.JndiPropertiesFactoryBean] Loading properties file from URL [file:/C:/Alfresco/tomcat/shared/classes/alfresco-global.properties]
09:39:35,562 INFO  [org.alfresco.config.JndiPropertyPlaceholderConfigurer] Loading properties file from class path resource [alfresco/alfresco-shared.properties]
09:40:05,109 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'LuceneFullTextSearchIndexer' defined in class path resource [alfresco/core-services-context.xml]: Cannot resolve reference to bean 'luceneFullTextSearchIndexer' while setting bean property 'target'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'luceneFullTextSearchIndexer' defined in class path resource [alfresco/core-services-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer] for bean with name 'transformer.Ocr.Tiff2Pdf' defined in file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\ocr-transformers-context.xml]; nested exception is java.lang.ClassNotFoundException: org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer
   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.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1305)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1067)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:540)
   at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:842)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:416)
   at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261)
   at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:192)
   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:3843)
   at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
   at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
   at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
   at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:627)
   at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
   at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
   at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
   at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
   at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
   at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
   at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
   at org.apache.catalina.core.StandardService.start(StandardService.java:516)
   at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
   at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
   at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'luceneFullTextSearchIndexer' defined in class path resource [alfresco/core-services-context.xml]: Initialization of bean failed; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer] for bean with name 'transformer.Ocr.Tiff2Pdf' defined in file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\ocr-transformers-context.xml]; nested exception is java.lang.ClassNotFoundException: org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
   … 40 more
Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer] for bean with name 'transformer.Ocr.Tiff2Pdf' defined in file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\ocr-transformers-context.xml]; nested exception is java.lang.ClassNotFoundException: org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer
   at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1208)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:568)
   at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1277)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:302)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:381)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:375)
   at org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.setBeanFactory(FullTextSearchIndexerImpl.java:247)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeAwareMethods(AbstractAutowireCapableBeanFactory.java:1422)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1389)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:512)
   … 46 more
Caused by: java.lang.ClassNotFoundException: org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer
   at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
   at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
   at org.springframework.util.ClassUtils.forName(ClassUtils.java:258)
   at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:408)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1229)
   at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1200)
   … 55 more
09:40:18,546 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 51 Web Scripts (+0 failed), 58 URLs
09:40:18,546 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 8 Package Description Documents (+0 failed)
09:40:18,562 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 0 Schema Description Documents (+0 failed)
09:40:18,593 INFO  [org.springframework.extensions.webscripts.AbstractRuntimeContainer] Initialised Spring Surf Container Web Script Container (in 2541.4788ms)
09:40:18,796 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
09:40:19,453 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js
09:40:19,546 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
09:40:19,546 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js
09:40:19,687 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
09:40:19,703 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js
09:40:33,890 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 225 Web Scripts (+0 failed), 232 URLs
09:40:33,906 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 8 Package Description Documents (+0 failed)
09:40:33,906 INFO  [org.springframework.extensions.webscripts.DeclarativeRegistry] Registered 0 Schema Description Documents (+0 failed)
09:40:34,000 INFO  [org.springframework.extensions.webscripts.AbstractRuntimeContainer] Initialised Spring Surf Container Web Script Container (in 4999.912ms)
09:40:34,171 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
09:40:34,328 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js
09:40:34,546 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
09:40:34,562 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js
09:40:34,796 INFO  [org.springframework.extensions.webscripts.TemplateProcessorRegistry] Registered template processor freemarker for extension ftl
09:40:34,812 INFO  [org.springframework.extensions.webscripts.ScriptProcessorRegistry] Registered script processor javascript for extension js

savic_prvoslav
Champ on-the-rise
Champ on-the-rise
Class missing:  org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer

put this class instead org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer .

hope this helps.

aman79
Champ in-the-making
Champ in-the-making
Thanks for your reply, can you please tell me the steps, how to do this ?

savic_prvoslav
Champ on-the-rise
Champ on-the-rise
<bean id="transformer.Ocr.Tiff2Pdf"
      class="org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer"
      parent="baseContentTransformer">
      <property name="checkCommand">
            <bean class="org.alfresco.util.exec.RuntimeExec">
         
            <property name="commandMap">
               <map>

                  <entry key="Linux">
                     <value>some value -help</value>
                  </entry>
                  <entry key="Windows.*">
                     <value>some value -help</value>….
   

check if alfresco repo .jar is missing

savic_prvoslav
Champ on-the-rise
Champ on-the-rise
ps : maybe we have version difference ,
see instruction hire

http://wiki.alfresco.com/wiki/Content_Transformations

as you can see it uses different class : <bean id="transformer.worker.dwg2pdf" class="org.alfresco.repo.content.transform.RuntimeExecutableContentTransformerWorker"> … I guess this is solution to your problem . sorry for previous mislead .

joe_l3
Confirmed Champ
Confirmed Champ
Hi aman79,

Intelliant OCR-AlfrescoTM Bundle 1.1 was originally released for Alfresco 3.0. In the old version, Alfresco used a single class "org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer" to perform content transformations by executable commands (such as intelliant ocr.exe). Now, from 3.2 up, Alfresco uses 2 classes:
1. "org.alfresco.repo.content.transform.ProxyContentTransformer" as a "proxy" to allows separation between the content transformer registry and the various third party subsystems performing the transformation
2. "org.alfresco.repo.content.transform.RuntimeExecutableContentTransformerWorker" as a configurable wrapper to execute any command line transformation that accepts an input and an output file on the command line ( ocr.exe –replace –language fr –pdf –output-file "${target}" "${source}" ).
For this reason, Spring fails to create the bean 'transformer.Ocr.Tiff2Pdf' on Alfresco 3.3. All that appears on the log you posted:

09:40:05,109 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed
org.springframework.beans.factory.BeanCreationException: …….Initialization of bean failed; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer] for bean with name 'transformer.Ocr.Tiff2Pdf' defined in file [C:\Alfresco\tomcat\shared\classes\alfresco\extension\ocr-transformers-context.xml]; nested exception is java.lang.ClassNotFoundException: org.alfresco.repo.content.transform.RuntimeExecutableContentTransformer….

Now, you must change the bean declaration in ocr-transformers-context.xml file on all transformers. Here an example for TIFF to PDF transformer:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>
<beans>
<!– ************ –>
<!– TIFF to PDF  –>
<!– ************ –>
   <!– Define ProxyContentTransformer –>
   <bean id="transformer.Ocr.Tiff2Pdf"  class="org.alfresco.repo.content.transform.ProxyContentTransformer"  parent="baseContentTransformer">
       <property name="worker">
            <ref bean="transformer.worker.Ocr.Tiff2Pdf" />
       </property>
   </bean>
   <!– Define RuntimeExecutableContentTransformerWorker –>
   <bean id="transformer.worker.Ocr.Tiff2Pdf" class="org.alfresco.repo.content.transform.RuntimeExecutableContentTransformerWorker" >
      <property name="mimetypeService">
         <ref bean="mimetypeService" />
      </property>
     <property name="explicitTransformations">
         <list>           
            <bean class="org.alfresco.repo.content.transform.ExplictTransformationDetails" >
               <property name="sourceMimetype"><value>image/tiff</value></property>
               <property name="targetMimetype"><value>application/pdf</value></property>
            </bean>
         </list>
      </property>
      <property name="checkCommand">
         <bean class="org.alfresco.util.exec.RuntimeExec">
            <property name="commandMap">
               <map>
                  <entry key=".*">
                     <value>ocr.exe –about</value>
                  </entry>
               </map>
            </property>
            <property name="errorCodes">
               <value>1,2</value>
            </property>
         </bean>
      </property>     
      <property name="transformCommand">
         <bean class="org.alfresco.util.exec.RuntimeExec">
            <property name="commandMap">
               <map>
                  <entry key="Windows.*">
                     <value>
                        ocr.exe –replace –language fr –pdf –output-file "${target}" "${source}"
                     </value>
                  </entry>
               </map>
            </property>
            <property name="errorCodes">
               <value>1,2</value>
            </property>
         </bean>
      </property>
     
   </bean>
……. and so on…..

GOOD luck
joe.l3 :wink: