gpt4 book ai didi

jython - WLST 与 Jython Weblogic 10.3.3 对比

转载 作者:行者123 更新时间:2023-12-01 11:50:15 48 4
gpt4 key购买 nike

我有几个关于 WLST 和 Jython 的问题:

操作系统:Unix/Linux

情况:
1) 无法包含wlst-file使用 writeIniFile 创建自动
2) 使用 org.python.util.jython没有缓存消息

信息:
1) wlst.py使用 writeIniFile 生成在互动中java weblogic.WLST session
2) 使用 java org.python.util.jython 启动 jython 时留言sys-package-mgr: can't create package cache dir, '/opt/oracle/fmw/fmw11gR1PS2/wlserver_10.3/server/lib/weblogic.jar/cachedir/packages'显示
3) 常用模块的位置未知。对于 weblogic.WLST这是<WL-Home>/wlserver_10.3/common/wlst/modules

问题:
1)包含的jython的公共(public)模块应该放在哪里?
2) 如何更改jython缓存位置?
3) 是否可以更新到另一个 jython 版本?

欢迎任何帮助。

最佳答案

是的,您可以使用另一个 jython,但它不受支持,并且您必须忍受一些缺陷。我们使用 jython 2.7a2。

这是我们用来启动 jyton 的脚本。它将更改缓存位置并将 FKUTILS 目录添加到类路径(这是我们存储自己的模块的地方)

#!env sh
# Script to run jython with wlst as a module
# set up WL_HOME, the root directory of your WebLogic installation
WL_HOME="/produkter/oracle/weblogic/wlserver"
WLST_OFFLINE_LOG=/tmp/wlstblaj.$$.log
WLST_CACHEDIR=~/.jythoncachedir
FKUTILS="/program/fkuitls/"
JYTHON="/program/jython"

killed () {
echo ""
echo Cleaning up tempfile: $WLST_OFFLINE_LOG
rm -rf $WLST_OFFLINE_LOG
trap - 0
}


umask 027
touch $WLST_OFFLINE_LOG
chmod 777 $WLST_OFFLINE_LOG
if [ ! -d $WLST_CACHEDIR ] ; then
mdkir -p $WLST_CACHEDIR
fi

trap killed 0 1 2 15
# set up common environment
. "${WL_HOME}/server/bin/setWLSEnv.sh" 2>&1 > /dev/null

CLASSPATH="${CLASSPATH}${CLASSPATHSEP}${FMWLAUNCH_CLASSPATH}${CLASSPATHSEP}${DERBY_CLASSPATH}${CLASSPATHSEP}${DERBY_TOOLS}${CLASSPATHSEP}${POINTBASE_CLASSPATH}${CLASSPATHSEP}${POINTBASE_TOOLS}:${FKUTILS}"

#echo CLASSPATH=${CLASSPATH}

JVM_ARGS="-classpath ${JYTHON}/jython.jar:${CLASSPATH} -Dpython.path=${CLASSPATH}:${HOME} ${WLST_PROPERTIES} ${JVM_D64} ${MEM_ARGS} ${CONFIG_JVM_ARGS} -Dpython.cachedir=$WLST_CACHEDIR -Dwlst.offline.log=$WLST_OFFLINE_LOG -Dweblogic.management.confirmKeyfileCreation=true -Djava.security.egd=file:///dev/urandom"

eval '"${JAVA_HOME}/bin/java"' ${JVM_ARGS} org.python.util.jython '"$@"'

作为解决方法,您必须从 writeInitfile 修改 wlst 文件,(您可能仍会得到堆栈跟踪,但它会起作用)

from weblogic.management.scripting.utils import WLSTUtil
import sys

origPrompt = sys.ps1
# Workaround start..
try:
theInterpreter = WLSTUtil.ensureInterpreter()
except:
pass

theInterpreter = WLSTUtil.ensureInterpreter()

# End workaround.

WLSTUtil.ensureWLCtx(theInterpreter)
execfile(WLSTUtil.getWLSTScriptPath())
execfile(WLSTUtil.getOfflineWLSTScriptPath())
exec(WLSTUtil.getOfflineWLSTScriptForModule())
execfile(WLSTUtil.getWLSTCommonModulePath())
theInterpreter = None
sys.ps1 = origPrompt
modules = WLSTUtil.getWLSTModules()
for mods in modules:
execfile(mods.getAbsolutePath())
wlstPrompt = "false"

之后,您可以启动第一个脚本 jython,并导入您的 wlst 文件。

例如:

 Jython 2.7a2 (default:9c148a201233, May 24 2012, 15:49:00) [Java
HotSpot(TM) 64-Bit Server VM (Sun Microsystems Inc.)] on java1.6.0_34
Type "help", "copyright", "credits" or "license" for more information.
>>> import fkwl as wl
>>> wl.connect('user','password','t3://server')
Connecting to t3://server with userid user ...

关于jython - WLST 与 Jython Weblogic 10.3.3 对比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11881659/

48 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com