0

我正在尝试配置 java gemfire 模板以在 spring 应用程序中查询数据。
要创建 spring 模板我需要创建客户端区域,要创建客户端区域我需要创建客户端缓存,要创建客户端缓存我需要创建池。
池参数之一是 server-goup。我需要 gemfire 模板来查询其中的几个。
我没有发现可以为多个服务器组配置池,因此我创建了两个池(具有不同的服务器组)两个客户端缓存两个客户端区域和两个模板并出现错误。

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No unique bean of type [com.gemstone.gemfire.cache.GemFireCache] is defined: expected single bean but found

我错过了什么?如何修复错误或设法为多个服务器组设置客户端区域?

这是春天的背景:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:gfe="http://www.springframework.org/schema/gemfire"
    xmlns:util="http://www.springframework.org/schema/util" 
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/gemfire http://www.springframework.org/schema/gemfire/spring-gemfire.xsd
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd
        http://www.springframework.org/schema/data/gemfire http://www.springframework.org/schema/data/gemfire/spring-data-gemfire.xsd">

    <gfe:pool id="mdfClientDataPool" subscription-enabled="true" server-group="clientData">
        <gfe:locator host="${gemfire.locator.primary.1}" port="${gemfire.locator.primary.port.1}" />
    </gfe:pool>
    <gfe:client-cache id="mdfClientDataCache" pool-name="mdfClientDataPool" properties-ref="gemfireProperties" />
    <gfe:client-region id="mdfClientDataRegion" cache-ref="mdfClientDataCache" />
    <bean id="mdfClientDataTemplate" class="org.springframework.data.gemfire.GemfireTemplate" p:region-ref="mdfClientDataRegion" />

    <gfe:pool id="mdfInstrumentDataPool" subscription-enabled="true" server-group="instrumentData">
        <gfe:locator host="${gemfire.locator.primary.1}" port="${gemfire.locator.primary.port.1}" />
    </gfe:pool>
    <gfe:client-cache id="mdfInstrumentCache" pool-name="mdfInstrumentDataPool" properties-ref="gemfireProperties" />
    <gfe:client-region id="mdfInstrumentRegion" cache-ref="mdfInstrumentCache" />
    <bean id="mdfInstrumentTemplate" class="org.springframework.data.gemfire.GemfireTemplate" p:region-ref="mdfInstrumentRegion" />

</beans>

谢谢。

4

1 回答 1

1

池上有一个服务器组属性。您应该能够创建多个客户端区域,每个区域都有自己的池和一个客户端缓存。只能有一个缓存实例。

于 2014-03-13T16:10:46.873 回答