1 Reply Latest reply: May 23, 2013 6:27 AM by Mike-Matthews-Oracle RSS

    Multiple Instances of OEDQ on a single server

    gauty
      Hi,

      I am running a Linux Machine (Linux 2.6.18-308.1.1.0.1.el5), on which I have the latest version of Oracle 11g release 2 installed.
      I have an instance of oracle Enterprise Data Quality tool running on an apache-tomcat-7 server. Port 8080

      Now I have a requirement of Installing another instance of OEDQ on the same server, but a different APACHE_HOME directory and a different Port Number (8081).

      So the question is, Can we install multiple instances of OEDQ on a single server?
      If so, what are the prerequisites to be maintained.

      I did my bit of tries, but ended up having issues with some java errors.
      I have posted the error message below.
      --------------
      SEVERE: Context initialization failed
      *org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'casemanager' defined in class path resource [conf/casemanagement.xml]: Cannot resolve reference to bean 'casedao' while setting bean property 'caseDAO';*
      ---------------

      The complete Error Log in the Catalina.out file is pasted below.

      INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /u100/app/PCEXDB/orpcexmt/oracle/loqate:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
      May 13, 2013 12:50:08 AM org.apache.coyote.AbstractProtocol init
      INFO: Initializing ProtocolHandler ["http-bio-8081"]
      May 13, 2013 12:50:08 AM org.apache.coyote.AbstractProtocol init
      INFO: Initializing ProtocolHandler ["ajp-bio-8010"]
      May 13, 2013 12:50:08 AM org.apache.catalina.startup.Catalina load
      INFO: Initialization processed in 792 ms
      May 13, 2013 12:50:08 AM org.apache.catalina.core.StandardService startInternal
      INFO: Starting service Catalina
      May 13, 2013 12:50:08 AM org.apache.catalina.core.StandardEngine startInternal
      INFO: Starting Servlet Engine: Apache Tomcat/7.0.29
      May 13, 2013 12:50:08 AM org.apache.catalina.startup.HostConfig deployWAR
      INFO: Deploying web application archive /u100/app/PCEXDB/orpcexmt/oracle/OEDQ2/apache-tomcat-7.0.29/webapps/dndirector.war
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-tiles is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-html is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-bean is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-logic is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-nested is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-bean is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-html is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-logic is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-nested is already defined
      May 13, 2013 12:50:13 AM org.apache.catalina.startup.TaglibUriRule body
      INFO: TLD skipped. URI: http://struts.apache.org/tags-tiles is already defined
      May 13, 2013 12:50:14 AM org.springframework.web.context.ContextLoader initWebApplicationContext
      INFO: Root WebApplicationContext: initialization started
      May 13, 2013 12:50:14 AM org.springframework.context.support.AbstractApplicationContext prepareRefresh
      INFO: Refreshing com.datanomic.director.startup.WebApplicationContext@2dfe88b8: display name [Root WebApplicationContext]; startup date [Mon May 13 00:50:14 CDT 2013]; root of context hierarchy
      May 13, 2013 12:50:16 AM com.datanomic.director.startup.WebApplicationContext loadBeanDefinitions
      INFO: Spring bean loading complete.
      May 13, 2013 12:50:24 AM org.springframework.web.context.ContextLoader initWebApplicationContext
      SEVERE: Context initialization failed
      org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'casemanager' defined in class path resource [conf/casemanagement.xml]: Cannot resolve reference to bean 'casedao' while setting bean property 'caseDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'casedao' defined in class path resource [conf/casemanagement.xml]: Cannot resolve reference to bean 'casemetadata' while setting bean property 'caseMetadata'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'casemetadata' defined in class path resource [conf/casemanagement.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
      PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'flags' threw exception; nested exception is java.lang.NullPointerException
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:275)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
      at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
      at com.datanomic.director.startup.WebApplicationContext.refresh(WebApplicationContext.java:109)
      at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
      at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
      Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'casedao' defined in class path resource [conf/casemanagement.xml]: Cannot resolve reference to bean 'casemetadata' while setting bean property 'caseMetadata'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'casemetadata' defined in class path resource [conf/casemanagement.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
      PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'flags' threw exception; nested exception is java.lang.NullPointerException
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:275)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
      at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
      at com.datanomic.director.startup.WebApplicationContext.refresh(WebApplicationContext.java:109)
      at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
      at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
      at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
      at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4791)
      at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285)
      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:618)
      at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:963)
      at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1600)
      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:1110)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      at java.lang.Thread.run(Thread.java:722)
      Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'casemetadata' defined in class path resource [conf/casemanagement.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
      PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'flags' threw exception; nested exception is java.lang.NullPointerException
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1279)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
      at java.security.AccessController.doPrivileged(Native Method)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
      at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
      ... 46 more
      Caused by: org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
      PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'flags' threw exception; nested exception is java.lang.NullPointerException
      at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:104)
      at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:59)
      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1276)
      ... 57 more

      May 13, 2013 12:50:24 AM org.apache.catalina.core.StandardContext startInternal
      SEVERE: Error listenerStart
      May 13, 2013 12:50:24 AM org.apache.catalina.core.StandardContext startInternal
      SEVERE: Context [dndirector] startup failed due to previous errors
      May 13, 2013 12:50:25 AM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
      SEVERE: The web application [dndirector] registered the JDBC driver [oracle.jdbc.OracleDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
      May 13, 2013 12:50:25 AM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
      SEVERE: The web application [dndirector] registered the JDBC driver [org.postgresql.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
      May 13, 2013 12:50:25 AM org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks
      SEVERE: The web application [dndirector] created a ThreadLocal with key of type [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@623e20db]) and a value of type [java.lang.Class] (value [class oracle.sql.TypeDescriptorFactory]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
      May 13, 2013 12:50:25 AM org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks
      SEVERE: The web application [dndirector] created a ThreadLocal with key of type [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@da1c402]) and a value of type [java.lang.Class] (value [class oracle.sql.AnyDataFactory]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
      May 13, 2013 12:50:25 AM org.apache.catalina.startup.HostConfig deployDirectory
      INFO: Deploying web application directory /u100/app/PCEXDB/orpcexmt/oracle/OEDQ2/apache-tomcat-7.0.29/webapps/docs
      May 13, 2013 12:50:25 AM org.apache.catalina.startup.HostConfig deployDirectory
      INFO: Deploying web application directory /u100/app/PCEXDB/orpcexmt/oracle/OEDQ2/apache-tomcat-7.0.29/webapps/examples
      May 13, 2013 12:50:25 AM org.apache.catalina.startup.HostConfig deployDirectory
      INFO: Deploying web application directory /u100/app/PCEXDB/orpcexmt/oracle/OEDQ2/apache-tomcat-7.0.29/webapps/manager
      May 13, 2013 12:50:25 AM org.apache.catalina.startup.HostConfig deployDirectory
      INFO: Deploying web application directory /u100/app/PCEXDB/orpcexmt/oracle/OEDQ2/apache-tomcat-7.0.29/webapps/ROOT
      May 13, 2013 12:50:25 AM org.apache.catalina.startup.HostConfig deployDirectory
      INFO: Deploying web application directory /u100/app/PCEXDB/orpcexmt/oracle/OEDQ2/apache-tomcat-7.0.29/webapps/host-manager
      May 13, 2013 12:50:25 AM org.apache.coyote.AbstractProtocol start
      INFO: Starting ProtocolHandler ["http-bio-8081"]
      May 13, 2013 12:50:25 AM org.apache.coyote.AbstractProtocol start
      INFO: Starting ProtocolHandler ["ajp-bio-8010"]
      May 13, 2013 12:50:25 AM org.apache.catalina.startup.Catalina start
      INFO: Server startup in 16882 ms

      Can someone please tell me what is going wrong here?
        • 1. Re: Multiple Instances of OEDQ on a single server
          Mike-Matthews-Oracle
          Hi,

          Multiple instances of EDQ on a single server is technically possible provided the installer takes care to avoid port conflicts. It is not the case that there is a single port used by an EDQ server, for example.

          For various reasons, it is not officially supported; attempting to diagnose issues on custom installations on Tomcat is especially difficult and we do not provide documentation on this. In general, the requirement usually comes up for Dev/Test instances (as there is no performance advantage of using multiple instances on a single server), where we would recommend the use of virtualization where this is a requirement.

          Regards,

          Mike