Coherence配置默认覆盖路径

时间:2015-06-09 20:56:20

标签: java serialization override weblogic12c oracle-coherence

我已经花了超过2天的时间尝试完成这项工作而没有任何结果。服务器是带有嵌入式Coherence服务器的WebLogic 12c。值得一提的是,我没有在独立模式下运行Coherence,而是在可以通过JNDI上下文访问Coherence的应用服务器旁边自动启动。我正在尝试使用PortableObject接口实现POF序列化方法,以序列化我在Coherence中保存的某些对象。我还创建了相应的pof-config.xml,用于注册我计划序列化的对象。唯一的问题是:如何将覆盖添加到coherence类路径?

根据http://docs.oracle.com/cd/E24290_01/coh.371/e22837/gs_config.htm#COHDG5014,我可以使用以下系统属性:

java -Dtangosol.pof.config=MyPOF.xml -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer

这里唯一的问题是我不知道要编辑哪个sh / cmd文件,因为我对Oracle_Home \ coherence \ bin \中的文件所做的所有编辑都没有效果。

同样的文章说有一种方法可以确认pof-config覆盖:

  

Coherence节点的输出指示启动时加载的POF配置部署描述符的位置和名称。配置消息是在发布Coherence版权文本后显示的消息之一,并且与配置为使用POF的高速缓存服务相关联。在开发和测试Coherence应用程序和解决方案时,输出特别有用。

Loading POF configuration from resource "file:/D:/coherence/my-pof-config.xml"

但是我无法在服务器实例生成的日志中找到任何提到的行。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

不要编辑Oracle_Home内的文件,而是在weblogic管理控制台中尝试以下内容:

  • 登录管理控制台
  • 服务器链接 - >服务器名称
  • 单击“服务器启动”选项卡
  • 编辑参数:文本框并添加-Dtangosol.pof.config=MyPOF.xml
    • 您还可以在此处更改类路径,类路径:框,如果需要

每次服务器启动时都应具有该属性。如果您没有使用nodemanager启动服务器,则应该执行以下操作。请记住,这将更改weblogic域中每个服务器的属性:

  • 导航至您的<domain home> / bin目录
  • 修改startWebLogic.sh/cmd
  • 修改JAVA_OPTIONS=行并添加-Dtangosol.pof.config=MyPOF.xml
    • 如果需要,您还可以在此处更改类路径CLASSPATH=