2013-04-30 151 views
0

我試圖按照以下指南http://wso2.org/library/tutorials/2010/04/sharing-registry-space-across-multiple-product-instances有一個BAM指向共享註冊表。兩個WSO2 BAM +共享註冊表

版本:2.2.0 BAM格雷格4.5.3 平臺的CentOS 6.3 JAVA 1.6

都指向同一個MySQL服務器。

所以配置是3 VM: 1 BAM 1 GREG 1的MySQL

在格雷格

<datasource> 
     <name>WSO2_CARBON_DB</name> 
     <description>The datasource used for registry and user manager</description> 
     <jndiConfig> 
      <name>jdbc/WSO2CarbonDB</name> 
     </jndiConfig> 
     <definition type="RDBMS"> 
      <configuration> 
       <url>jdbc:mysql://wso2mysql.prod.local:3306/odaigreg</url> 
       <username>odaigreg</username> 
       <password>odaigreg1</password> 
       <driverClassName>com.mysql.jdbc.Driver</driverClassName> 
       <maxActive>80</maxActive> 
       <maxWait>60000</maxWait> 
       <minIdle>5</minIdle> 
       <testOnBorrow>true</testOnBorrow> 
       <validationQuery>SELECT 1</validationQuery> 
       <validationInterval>30000</validationInterval> 
      </configuration> 
     </definition> 
    </datasource> 

上BAM

<datasource> 
     <name>WSO2_CARBON_DB</name> 
     <description>The datasource used for registry and user manager</description> 
     <jndiConfig> 
      <name>jdbc/WSO2CarbonDB</name> 
     </jndiConfig> 
     <definition type="RDBMS"> 
      <configuration> 
       <url>jdbc:mysql://wso2mysql.prod.local:3306/odaibam</url> 
       <username>odaibam</username> 
       <password>odaibam1</password> 
       <driverClassName>com.mysql.jdbc.Driver</driverClassName> 
       <maxActive>30</maxActive> 
       <maxWait>60000</maxWait> 
       <minIdle>5</minIdle> 
       <testOnBorrow>true</testOnBorrow> 
       <validationQuery>SELECT 1</validationQuery> 
       <validationInterval>30000</validationInterval> 
      </configuration> 
     </definition> 
    </datasource> 

    <datasource> 
     <name>WSO2BAM_DATASOURCE</name> 
     <description>The datasource used for analyzer data</description> 
     <definition type="RDBMS"> 
      <configuration> 
       <url>jdbc:mysql://wso2mysql.prod.local:3306/odaibam</url> 
       <username>odaibam</username> 
       <password>odaibam1</password> 
       <driverClassName>com.mysql.jdbc.Driver</driverClassName> 
       <maxActive>30</maxActive> 
       <maxWait>60000</maxWait> 
       <minIdle>5</minIdle> 
       <testOnBorrow>true</testOnBorrow> 
       <validationQuery>SELECT 1</validationQuery> 
       <validationInterval>30000</validationInterval> 
      </configuration> 
     </definition> 
    </datasource> 

並在registry.xml

<currentDBConfig>wso2registry</currentDBConfig> 
<readOnly>false</readOnly> 
<enableCache>true</enableCache> 
<registryRoot>/</registryRoot> 

<dbConfig name="wso2registry"> 
    <dataSource>jdbc/WSO2CarbonDB</dataSource> 
</dbConfig> 

<dbConfig name="governanceRegistry"> 
    <url>jdbc:mysql://wso2mysql.prod.local:3306/odaigreg</url> 
    <username>odaigreg</username> 
    <password>odaigreg1</password> 
    <driverClassName>com.mysql.jdbc.Driver</driverClassName> 
    <maxActive>30</maxActive> 
    <maxWait>60000</maxWait> 
    <minIdle>5</minIdle> 
    <testOnBorrow>true</testOnBorrow> 
    <validationQuery>SELECT 1</validationQuery> 
    <validationInterval>30000</validationInterval> 
</dbConfig> 
<remoteInstance url="https://wso2greg.prod.local:9443/registry"> 
    <id>governanceRegistryInstance</id> 
    <dbConfig>governanceRegistry</dbConfig> 
    <readOnly>false</readOnly> 
    <enableCache>true</enableCache> 
    <registryRoot>/</registryRoot> 
</remoteInstance> 

<mount path="/_system/governance" overwrite="true"> 
    <instanceId>governanceRegistryInstance</instanceId> 
    <targetPath>/_system/governance</targetPath> 
</mount> 

我得到這個錯誤:

TID: [0] [BAM] [2013-04-30 16:26:01,052] INFO {org.apache.cassandra.config.DatabaseDescriptor} - Loading settings from file:/opt/wso2bam-2.2.0/repository/conf/etc/cassandra.yaml {org.apache. 
cassandra.config.DatabaseDescriptor} 
TID: [0] [BAM] [2013-04-30 16:26:01,146] INFO {org.wso2.carbon.bam.toolbox.deployer.internal.DataBridgeRecieverServiceComponent} - Successfully setted data bridge reciever service {org.wso2. 
carbon.bam.toolbox.deployer.internal.DataBridgeRecieverServiceComponent} 
TID: [0] [BAM] [2013-04-30 16:26:01,153] INFO {org.wso2.carbon.databridge.core.internal.DataBridgeDS} - Successfully deployed Agent Server {org.wso2.carbon.databridge.core.internal.DataBrid 
geDS} 
TID: [0] [BAM] [2013-04-30 16:26:01,622] INFO {org.apache.cassandra.config.DatabaseDescriptor} - DiskAccessMode 'auto' determined to be mmap, indexAccessMode is mmap {org.apache.cassandra.co 
nfig.DatabaseDescriptor} 
TID: [0] [BAM] [2013-04-30 16:26:01,622] INFO {org.apache.cassandra.config.DatabaseDescriptor} - DiskAccessMode 'auto' determined to be mmap, indexAccessMode is mmap {org.apache.cassandra.co 
nfig.DatabaseDescriptor} 
TID: [0] [BAM] [2013-04-30 16:26:01,820] INFO {org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService} - Configured Registry in 222ms {org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry 
Service} 
TID: [0] [BAM] [2013-04-30 16:26:01,939] INFO {org.apache.cassandra.config.DatabaseDescriptor} - Global memtable threshold is enabled at 329MB {org.apache.cassandra.config.DatabaseDescriptor 
} 
TID: [0] [BAM] [2013-04-30 16:26:01,939] INFO {org.apache.cassandra.config.DatabaseDescriptor} - Global memtable threshold is enabled at 329MB {org.apache.cassandra.config.DatabaseDescriptor 
} 
TID: [0] [BAM] [2013-04-30 16:26:01,993] FATAL {org.wso2.carbon.utils.dbcreator.DatabaseCreator} - Failed to create database tables for registry resource store. null {org.wso2.carbon.utils.db 
creator.DatabaseCreator} 
java.sql.SQLException 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:253) 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:694) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:626) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182) 
     at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128) 
     at org.wso2.carbon.utils.dbcreator.DatabaseCreator.createRegistryDatabase(DatabaseCreator.java:58) 
     at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCDataAccessManager.createDatabase(JDBCDataAccessManager.java:122) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.configure(EmbeddedRegistryService.java:189) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.<init>(EmbeddedRegistryService.java:99) 
     at org.wso2.carbon.registry.core.config.RegistryContext.getEmbeddedRegistryService(RegistryContext.java:644) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.getRegistry(MountHandler.java:221) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.resourceExists(MountHandler.java:322) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.resourceExists(MountHandler.java:302) 
     at org.wso2.carbon.registry.core.jdbc.handlers.HandlerManager.resourceExists(HandlerManager.java:3130) 
     at org.wso2.carbon.registry.core.jdbc.handlers.UserDefinedHandlerManager.resourceExists(UserDefinedHandlerManager.java:260) 
     at org.wso2.carbon.registry.core.jdbc.handlers.HandlerLifecycleManager.resourceExists(HandlerLifecycleManager.java:1293) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.resourceExists(EmbeddedRegistry.java:637) 
     at org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:250) 
     at org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:630) 
     at org.wso2.carbon.registry.core.utils.RegistryUtils.systemResourceShouldBeAdded(RegistryUtils.java:573) 
     at org.wso2.carbon.registry.core.utils.RegistryUtils.addServiceStoreCollection(RegistryUtils.java:848) 
     at org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.buildRegistryService(RegistryCoreServiceComponent.java:582) 
     at org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.activate(RegistryCoreServiceComponent.java:120) 
     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.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:252) 
     at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146) 
     at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:346) 
     at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:588) 
     at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:196) 
     at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:328) 
     at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:221) 
     at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:104) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861) 
     at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 
     at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433) 
     at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:68) 
     at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) 
     at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) 
     at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:389) 
     at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1130) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1) 
     at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 
     at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) 
Caused by: java.lang.NullPointerException 
     at java.lang.Class.forName0(Native Method) 
     at java.lang.Class.forName(Class.java:247) 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:245) 
     ... 60 more 
TID: [0] [BAM] [2013-04-30 16:26:01,996] ERROR {org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService} - Error occurred while creating the database {org.wso2.carbon.registry.core.jdbc.Em 
beddedRegistryService} 
TID: [0] [BAM] [2013-04-30 16:26:01,996] ERROR {org.wso2.carbon.registry.core.config.RegistryContext} - Couldn't initialize EmbeddedRegistryService. Error occurred while creating the database 
{org.wso2.carbon.registry.core.config.RegistryContext} 
org.wso2.carbon.registry.core.exceptions.RegistryException: Error occurred while creating the database 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.configure(EmbeddedRegistryService.java:193) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.<init>(EmbeddedRegistryService.java:99) 
     at org.wso2.carbon.registry.core.config.RegistryContext.getEmbeddedRegistryService(RegistryContext.java:644) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.getRegistry(MountHandler.java:221) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.resourceExists(MountHandler.java:322) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.resourceExists(MountHandler.java:302) 
     at org.wso2.carbon.registry.core.jdbc.handlers.HandlerManager.resourceExists(HandlerManager.java:3130) 
     at org.wso2.carbon.registry.core.jdbc.handlers.UserDefinedHandlerManager.resourceExists(UserDefinedHandlerManager.java:260) 
     at org.wso2.carbon.registry.core.jdbc.handlers.HandlerLifecycleManager.resourceExists(HandlerLifecycleManager.java:1293) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.resourceExists(EmbeddedRegistry.java:637) 
     at org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:250) 
     at org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:630) 
     at org.wso2.carbon.registry.core.utils.RegistryUtils.systemResourceShouldBeAdded(RegistryUtils.java:573) 
     at org.wso2.carbon.registry.core.utils.RegistryUtils.addServiceStoreCollection(RegistryUtils.java:848) 
     at org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.buildRegistryService(RegistryCoreServiceComponent.java:582) 
     at org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.activate(RegistryCoreServiceComponent.java:120) 
     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.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:252) 
     at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146) 
     at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:346) 
     at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:588) 
     at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:196) 
     at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:328) 
     at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:221) 
     at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:104) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861) 
     at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 
     at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433) 
     at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:68) 
     at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) 
     at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) 
     at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:389) 
     at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1130) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1) 
     at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 
     at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) 
Caused by: org.wso2.carbon.registry.core.exceptions.RegistryException: Error in creating the database 
     at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCDataAccessManager.createDatabase(JDBCDataAccessManager.java:125) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.configure(EmbeddedRegistryService.java:189) 
     ... 52 more 
Caused by: java.lang.Exception: Failed to create database tables for registry resource store. null 
     at org.wso2.carbon.utils.dbcreator.DatabaseCreator.createRegistryDatabase(DatabaseCreator.java:69) 
     at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCDataAccessManager.createDatabase(JDBCDataAccessManager.java:122) 
     ... 53 more 
Caused by: java.sql.SQLException 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:253) 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:694) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:626) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:182) 
     at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128) 
     at org.wso2.carbon.utils.dbcreator.DatabaseCreator.createRegistryDatabase(DatabaseCreator.java:58) 
     ... 54 more 
Caused by: java.lang.NullPointerException 
     at java.lang.Class.forName0(Native Method) 
     at java.lang.Class.forName(Class.java:247) 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:245) 
     ... 60 more 
TID: [0] [BAM] [2013-04-30 16:26:02,002] ERROR {org.wso2.carbon.registry.core.ResourceImpl} - Unable to test existence of resource {org.wso2.carbon.registry.core.ResourceImpl} 
org.wso2.carbon.registry.core.exceptions.RegistryException: Couldn't initialize EmbeddedRegistryService. Error occurred while creating the database 
     at org.wso2.carbon.registry.core.config.RegistryContext.getEmbeddedRegistryService(RegistryContext.java:648) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.getRegistry(MountHandler.java:221) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.resourceExists(MountHandler.java:322) 
     at org.wso2.carbon.registry.core.jdbc.handlers.builtin.MountHandler.resourceExists(MountHandler.java:302) 
     at org.wso2.carbon.registry.core.jdbc.handlers.HandlerManager.resourceExists(HandlerManager.java:3130) 
     at org.wso2.carbon.registry.core.jdbc.handlers.UserDefinedHandlerManager.resourceExists(UserDefinedHandlerManager.java:260) 
     at org.wso2.carbon.registry.core.jdbc.handlers.HandlerLifecycleManager.resourceExists(HandlerLifecycleManager.java:1293) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.resourceExists(EmbeddedRegistry.java:637) 
     at org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:250) 
     at org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:630) 
     at org.wso2.carbon.registry.core.utils.RegistryUtils.systemResourceShouldBeAdded(RegistryUtils.java:573) 
     at org.wso2.carbon.registry.core.utils.RegistryUtils.addServiceStoreCollection(RegistryUtils.java:848) 
     at org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.buildRegistryService(RegistryCoreServiceComponent.java:582) 
     at org.wso2.carbon.registry.core.internal.RegistryCoreServiceComponent.activate(RegistryCoreServiceComponent.java:120) 
     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.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:252) 
     at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146) 
     at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:346) 
     at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:588) 
     at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:196) 
     at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:328) 
     at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:221) 
     at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:104) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861) 
     at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 
     at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130) 
     at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433) 
     at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:68) 
     at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) 
     at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) 
     at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) 
     at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:389) 
     at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1130) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438) 
     at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1) 
     at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 
     at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) 
Caused by: org.wso2.carbon.registry.core.exceptions.RegistryException: Error occurred while creating the database 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.configure(EmbeddedRegistryService.java:193) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.<init>(EmbeddedRegistryService.java:99) 
     at org.wso2.carbon.registry.core.config.RegistryContext.getEmbeddedRegistryService(RegistryContext.java:644) 
     ... 50 more 
Caused by: org.wso2.carbon.registry.core.exceptions.RegistryException: Error in creating the database 
     at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCDataAccessManager.createDatabase(JDBCDataAccessManager.java:125) 
     at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistryService.configure(EmbeddedRegistryService.java:189) 
     ... 52 more 
Caused by: java.lang.Exception: Failed to create database tables for registry resource store. null 
     at org.wso2.carbon.utils.dbcreator.DatabaseCreator.createRegistryDatabase(DatabaseCreator.java:69) 
     at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCDataAccessManager.createDatabase(JDBCDataAccessManager.java:122) 
     ... 53 more 
Caused by: java.sql.SQLException 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:253) 
     at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:694) 
     at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:626) 
     at 

任何提示? 謝謝 Luca

回答

0

該教程有一些過時的配置。您需要遵循 http://docs.wso2.org/wiki/display/BAM220/Sharing+Registry+Space+Among+Multiple+Products

獲取更新的文檔。

您可以從registry.xml中刪除以下內容並在BAM上執行以下更改。

<dbConfig name="governanceRegistry"> 
    <url>jdbc:mysql://wso2mysql.prod.local:3306/odaigreg</url> 
    <username>odaigreg</username> 
    <password>odaigreg1</password> 
    <driverClassName>com.mysql.jdbc.Driver</driverClassName> 
    <maxActive>30</maxActive> 
    <maxWait>60000</maxWait> 
    <minIdle>5</minIdle> 
    <testOnBorrow>true</testOnBorrow> 
    <validationQuery>SELECT 1</validationQuery> 
    <validationInterval>30000</validationInterval> 
</dbConfig> 

並且還改變DBCONFIG。

<remoteInstance url="https://wso2greg.prod.local:9443/registry"> 
    <id>governanceRegistryInstance</id> 
    <dbConfig>wso2registry</dbConfig> 
    <readOnly>false</readOnly> 
    <enableCache>true</enableCache> 
    <registryRoot>/</registryRoot> 
</remoteInstance> 

如果你有問題依然。

此外,您可以使用H2數據庫(或使用其他數據庫)來存儲BAM的數據,而不用全部使用正確的方法。

要快速做到這一點 在BAM服務器上,請嘗試以下操作。

保持exisiting H2 databsae爲WSO2_CARBON_DB(主datasources.xml)

<datasource> 
      <name>WSO2_CARBON_DB</name> 
      <description>The datasource used for registry and user manager</description> 
      <jndiConfig> 
       <name>jdbc/WSO2CarbonDB</name> 
      </jndiConfig> 
      <definition type="RDBMS"> 
       <configuration> 
        <url>jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000</url> 
        <username>wso2carbon</username> 
        <password>wso2carbon</password> 
        <driverClassName>org.h2.Driver</driverClassName> 
        <maxActive>50</maxActive> 
        <maxWait>60000</maxWait> 
        <testOnBorrow>true</testOnBorrow> 
        <validationQuery>SELECT 1</validationQuery> 
        <validationInterval>30000</validationInterval> 
       </configuration> 
      </definition> 
     </datasource> 

和重命名等DBCONFIG,它將使用WSO2BAM_DATASOURCE(registry.xml)

<dbConfig name="wso2registry"> 
    <dataSource>jdbc/WSO2BAM_DATASOURCE</dataSource> 
</dbConfig> 
+0

問題部分解決。 – 2013-05-02 13:35:44

+0

錯誤消失了,但是如果我在GREG中登錄並且在BAM中登錄,我發現自己的過期會話是正確的,但它還有其他一些我必須設置來解決這個問題。它似乎與羣集問題相關聯,但是兩個axix2.xml文件都將修改後的設置設爲true 是否有任何其他東西留下? – 2013-05-02 13:51:04

+0

你可以嘗試使用兩個瀏覽器訪問管理控制檯嗎?如果啓用註冊表緩存,並且該羣集消息將在需要時使緩存失效,則需要啓用羣集。通常註銷不是一個問題,而是一個次要的可用性問題。 – 2013-05-02 18:22:59