ターゲットの展開環境で既に実行されている Gemfire ロケーターとキャッシュサーバー プロセスがあるとします。ターゲット デプロイメント環境は、クライアント/サーバー トポロジを使用します。
Gemfire キャッシュを使用したい Spring 3.1 MVC アプリケーションがあります。Spring Data Gemfire 1.2.2 および Gemfire 6.6.1 を使用しています
だから私は私のspring.xml
<util:properties id="gemfire-props">
<prop key="log-level">${gemfire.log-level}</prop>
<prop key="mcast-port">${gemfire.mcast-port}</prop>
<prop key="locators">${gemfire.locators}</prop>
</util:properties>
<gfe:cache id="gemfireCache" properties-ref="gemfire-props"/>
<gfe:replicated-region id="myCacheRegion" cache-ref="gemfireCache">
<gfe:cache-listener>
<ref bean="gemfireCacheLogListener"/>
</gfe:cache-listener>
<gfe:entry-ttl timeout="${gemfire.myCacheRegion.ttl}" action="DESTROY"/>
</gfe:replicated-region>
<bean id="gemfireCacheLogListener" class="org.awong.GemfireCacheLogListener"></bean>
<bean id="cacheManager" class="org.springframework.data.gemfire.support.GemfireCacheManager"
p:cache-ref="gemfireCache">
<property name="regions">
<set>
<ref bean="myCacheRegion"/>
</set>
</property>
</bean>
外部 JAR 依存関係がすべて Maven などで正しく定義されていると仮定します。また、上記のプロパティ値を定義するプロパティ ファイルが読み込まれているとします。プロパティは、locators
すでに開始されている Gemfire ロケーターの IP とポートを使用するように定義されています。
MVC アプリケーションで Bean に@Cacheable
. これらの構成により、アプリケーション サーバーでロケーターが起動され、Gemfire グリッドに接続され、Gemfire キャッシュ サーバーに追加myCacheRegion
されcacheManager
、新しいキャッシュ リージョンを使用できるようになるはずです。
BeanCreationException
Spring の起動時にロケーターへの接続に失敗したために発生した s を取得しています。
4-Mar-2013 16:02:08.750 SEVERE org.apache.catalina.core.ApplicationContext.log StandardWrapper.Throwable
org.springframework.beans.factory.BeanCreationException:
[rest of stack trace snipped out]
nested exception is com.gemstone.gemfire.GemFireConfigException: Unable to contact a Locator service. Operation either timed out or Locator does not exist.
Configured list of locators is "[hostnameOfLocator<v0>:portOfLocator]".
しかし、ターゲット環境にデプロイすると、ロケーター プロセスが接続できないため、Gemfire Bean の作成に失敗します。私は何が欠けていますか?