2011-12-16 9 views
2

異なるクラスタに2つのキャッシュがあります。私は自分の拡張クライアント経由で両方にアクセスしたい。 最初のキャッシュファイン(いずれか1つ)にアクセスできますが、2番目のキャッシュファーストへのアクセスは失敗します。例えば異なるクラスタ上の異なるキャッシュにアクセスするCoherenceキャッシュ・クライアント

NamedCache cacheOne= CacheFactory.getCache("Cache-One"); 
NamedCache cacheTwo= CacheFactory.getCache("Cache-Two"); 

第二コールはで失敗します:

Exception in thread "main" java.lang.IllegalArgumentException: No scheme for cache: "Cache-Two". 

私はクライアントを経由してキャッシュの両方にアクセスするにはどうすればよいですか?クライアントの設定は以下の通りです:

*

<cache-config> 
    <caching-scheme-mapping> 
     <cache-mapping> 
      <cache-name>Cache-One</cache-name> 
      <scheme-name>Scheme-One</scheme-name> 
     </cache-mapping> 
     <cache-mapping> 
      <cache-name>Cache-Two</cache-name> 
      <scheme-name>Scheme-Two</scheme-name> 
     </cache-mapping> 
    </caching-scheme-mapping> 
    <caching-schemes> 
     <remote-cache-scheme> 
      <scheme-name>Scheme-One</scheme-name> 
      <service-name>TCPProxyCacheService</service-name> 
      <initiator-config> 
       <tcp-initiator> 
        <remote-addresses> 
         <socket-address> 
          <address>address of proxy one</address> 
          <port>2077</port> 
         </socket-address> 
        </remote-addresses> 
        <connect-timeout>300s</connect-timeout> 
       </tcp-initiator> 
       <outgoing-message-handler> 
        <request-timeout>300s</request-timeout> 
       </outgoing-message-handler> 
      </initiator-config> 
     </remote-cache-scheme> 
     <remote-cache-scheme> 
       <scheme-name>extend-castle</scheme-name> 
       <service-name>TCPProxyCacheService</service-name> 
       <initiator-config> 
        <tcp-initiator> 
        <remote-addresses> 
           <socket-address> 
            <address>address of proxy two</address> 
            <port>20088</port> 
           </socket-address> 
         </remote-addresses> 
         <connect-timeout>300s</connect-timeout> 
        </tcp-initiator> 
        <outgoing-message-handler> 
         <request-timeout>300s</request-timeout> 
        </outgoing-message-handler> 
       </initiator-config> 
     </remote-cache-scheme> 
    </caching-schemes> 
</cache-config> 

*

答えて

1

あなたはScheme-Twoスキームが定義されている必要がありますextend-castleスキームを定義しています。 2番目のremote-cache-schemeにスキーム名を変更するか、Scheme-Twoに変更するか、スキーム名をcache-mappingに変更してextend-castleに変更してください。

関連する問題