Hazelcast集成问题-[WebLogic 12c]

Hazelcast集成问题-[WebLogic 12c],hazelcast,hazelcast-imap,Hazelcast,Hazelcast Imap,在Hazelcast与weblogic 12c集成期间,我面临一个问题。我必须更改任何配置吗? com.hazelcast.instance.NodeExtension com.hazelcast.instance.DefaultNodeExtension 步骤1:[setDomainEnv.cmd]我已经为添加了路径 public class HCServer { public HCServer() { HazelcastInstance hz = Hazelcast.newHazel

在Hazelcast与weblogic 12c集成期间,我面临一个问题。我必须更改任何配置吗?

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

步骤1:[setDomainEnv.cmd]我已经为添加了路径

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)
设置类路径=%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)
公共类HCServer{
公共HCServer(){
HazelcastInstance hz=Hazelcast.newHazelcastInstance();
}
公共静态void main(字符串[]args){
试一试{
Class.forName(“server.HCServer”).newInstance();
Set=Hazelcast.getAllHazelcastInstances();
for(HazelcastInstance:set){
IMap IMap=hcInstance.getMap(“数据”);
对于(int i=0;i<5000;i++){
iMap.put(String.valueOf(i),new-HCTask(i));
}
}
}捕获(例外情况除外){
例如printStackTrace();
}
}
}
启动服务器时发生以下错误

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)

2016年11月22日下午4:07:45 com.hazelcast.config.XmlConfigLocator
信息:正在从类路径加载'hazelcast default.xml'。
2016年11月22日下午4:07:46 com.hazelcast.instance.DefaultAddressPicker
信息:[LOCAL][dev][3.7.1]首选IPv4堆栈为true。
2016年11月22日下午4:07:46 com.hazelcast.instance.DefaultAddressPicker
信息:[LOCAL][dev][3.7.1]拾取[192.168.0.37]:5701,使用套接字服务器socket[addr=/0:0:0:0:0:0,localport=5701],绑定任何本地端口均为true
2016年11月22日下午4:07:47 com.hazelcast.instance.NodeExtensionFactory
警告:DefaultNodeExtension类已由两个不同的类装入器装入。您是否在OSGi环境中运行Hazelcast?如果是,请使用setClassloader()方法在配置中设置bundle类装入器
com.hazelcast.core.HazelcastException:java.lang.NoSuchMethodException:com.hazelcast.instance.DefaultNodeExtension。(com.hazelcast.instance.Node)
在com.hazelcast.util.ExceptionUtil.peel上(ExceptionUtil.java:73)
在com.hazelcast.util.ExceptionUtil.peel上(ExceptionUtil.java:52)
位于com.hazelcast.util.ExceptionUtil.rethrow(ExceptionUtil.java:83)
位于com.hazelcast.instance.NodeExtensionFactory.create(NodeExtensionFactory.java:54)
位于com.hazelcast.instance.DefaultNodeContext.createNodeExtension(DefaultNodeContext.java:35)
位于com.hazelcast.instance.Node.createNodeExtension(Node.java:290)
在com.hazelcast.instance.Node.(Node.java:177)
位于com.hazelcast.instance.HazelcastInstanceImpl.createNode(HazelcastInstanceImpl.java:155)
位于com.hazelcast.instance.HazelcastInstanceImpl.(HazelcastInstanceImpl.java:126)
位于com.hazelcast.instance.HazelcastInstanceFactory.ConstructionHazelcastInstance
(HazelcastInstanceFactory.java:218)
位于com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance
(HazelcastInstanceFactory.java:176)
位于com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance
(HazelcastInstanceFactory.java:126)
位于com.hazelcast.core.hazelcast.newHazelcastInstance(hazelcast.java:87)
在server.HCServer.(HCServer.java:13)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
在sun.reflect.delegatingConstructor或AccessorImpl.newInstance
(DelegatingConstructorAccessorImpl.java:45)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:422)
位于java.lang.Class.newInstance(Class.java:442)
位于server.HCServer.main(HCServer.java:18)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:497)

您想像这样修复
HCServer
的构造函数吗

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

让我知道它是否有效

您想像这样修复
HCServer
的构造函数吗

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

让我知道它是否有效

为什么要调用
hcInstance.getMap(“数据”)来自每个实例?仅仅从一个实例调用它就足以创建一个分布式IMap来自每个实例?仅从一个实例调用它就足以创建分布式IMap。