2016-11-22 12 views
0

weblogic 12cでHazelcastを統合中に問題が発生しています。設定を変更する必要はありますか?ヘーゼルキャスト統合の問題 - [WebLogic 12c]

com.hazelcast.instance.NodeExtension com.hazelcast.instance.DefaultNodeExtension

工程1:[あるsetDomainEnv.cmd] iが%

のSET CLASSPATH =%のCLASSPATHのパスが追加されていますE:lib \ hazelcast-all-3.7.1.jar;

ステップ2:私は、エラー以下のWebLogic Server

public class HCServer { 
public HCServer() { 
    HazelcastInstance hz = Hazelcast.newHazelcastInstance(); 
} 

public static void main(String[] args) { 
    try { 
     Class.forName("server.HCServer").newInstance(); 

     Set<HazelcastInstance> set = Hazelcast.getAllHazelcastInstances(); 
     for (HazelcastInstance hcInstance : set) { 
      IMap<String, HCTask> iMap = hcInstance.getMap("data"); 

      for (int i = 0; i < 5000; i++) { 
       iMap.put(String.valueOf(i), new HCTask(i)); 
      } 
     } 

    } catch (Exception ex) { 
     ex.printStackTrace(); 
    } 

} 
} 

ためのサンプル起動クラスを書かれているが

<Nov 22, 2016, 4:07:44,922 PM PKT> 
Nov 22, 2016 4:07:45 PM com.hazelcast.config.XmlConfigLocator 
INFO: Loading 'hazelcast-default.xml' from classpath. 
Nov 22, 2016 4:07:46 PM com.hazelcast.instance.DefaultAddressPicker 
INFO: [LOCAL] [dev] [3.7.1] Prefer IPv4 stack is true. 
Nov 22, 2016 4:07:46 PM com.hazelcast.instance.DefaultAddressPicker 
INFO: [LOCAL] [dev] [3.7.1] Picked [192.168.0.37]:5701, using socket ServerSocket[addr=/0:0:0:0:0:0:0:0,localport=5701], bind any local is true 
Nov 22, 2016 4:07:47 PM com.hazelcast.instance.NodeExtensionFactory 
WARNING: DefaultNodeExtension class has been loaded by two different class-loaders. Are you running Hazelcast in an OSGi environment? If so, set the bundle class-loader in the Config using the setClassloader() method 
<Nov 22, 2016, 4:07:47,256 PM PKT> <com.hazelcast.instance.NodeExtensionFactory> <DefaultNodeExtension class has been loaded by two different class-loaders. Are you running Hazelcast in an OSGi environment? If so, set the bundl 
e class-loader in the Config using the setClassloader() method> 
com.hazelcast.core.HazelcastException: java.lang.NoSuchMethodException: com.hazelcast.instance.DefaultNodeExtension.(com.hazelcast.instance.Node) 
at com.hazelcast.util.ExceptionUtil.peel(ExceptionUtil.java:73) 
at com.hazelcast.util.ExceptionUtil.peel(ExceptionUtil.java:52) 
at com.hazelcast.util.ExceptionUtil.rethrow(ExceptionUtil.java:83) 
at com.hazelcast.instance.NodeExtensionFactory.create(NodeExtensionFactory.java:54) 
at com.hazelcast.instance.DefaultNodeContext.createNodeExtension(DefaultNodeContext.java:35) 
at com.hazelcast.instance.Node.createNodeExtension(Node.java:290) 
at com.hazelcast.instance.Node.(Node.java:177) 
at com.hazelcast.instance.HazelcastInstanceImpl.createNode(HazelcastInstanceImpl.java:155) 
at com.hazelcast.instance.HazelcastInstanceImpl.(HazelcastInstanceImpl.java:126) 
at com.hazelcast.instance.HazelcastInstanceFactory.constructHazelcastInstance 
(HazelcastInstanceFactory.java:218) 
at com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance 
(HazelcastInstanceFactory.java:176) 
at com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance 
(HazelcastInstanceFactory.java:126) 
at com.hazelcast.core.Hazelcast.newHazelcastInstance(Hazelcast.java:87) 
at server.HCServer.(HCServer.java:13) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance 
(DelegatingConstructorAccessorImpl.java:45) 
at java.lang.reflect.Constructor.newInstance(Constructor.java:422) 
at java.lang.Class.newInstance(Class.java:442) 
at server.HCServer.main(HCServer.java:18) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:497) 
+0

なぜ各インスタンスから 'hcInstance.getMap(" data ");'を呼び出すのですか? 1つのインスタンスから呼び出すだけで、分散IMapを作成できます。 – sertug

答えて

2

サーバを起動するに発生しますが、コンストラクタを修正しますかHCServerこのように

public HCServer() { 
    Config config = new XmlConfigBuilder().build(); 
    config.setClassLoader(this.getClass().getClassLoader()); 
    HazelcastInstance hz = Hazelcast.newHazelcastInstance(config); 
} 

動作するかどうか教えてください!

関連する問題