WLST (встроенный) зависает для нескольких команд без каких-либо ошибок или исключений

У меня установлен простой сервер WebLogic 10.3.6 (localhost, порт 7001), и я пытаюсь работать на этом (Admin-) сервере с WLST, встроенным в код Java.

Примечание. Команды WLST работают, если они используются в интерактивном WLST через командную строку.

Это мой простой скрипт на python:

from java.io import FileInputStream
import java.lang
import os
import string

# this works also in embedded mode:
redirect('./logs/wlst.log')
debug('true')

# this works also in embedded mode:
print "call dumpVariables() ..."
dumpVariables()


print "call readDomain('/opt/WebLogic-TestDomain/TestDomain/')"
# this DOESN'T work in embedded mode, it hangs:
readDomain('/opt/WebLogic-TestDomain/TestDomain/');

# this works also in embedded mode:
print "call ls() ..."
ls()

try:
    print "try to connect ..."

    # this DOESN'T work in embedded mode, it hangs:
    connect('myUsername','foobar1234');
except Exception, e:
    print "Error connecting "
    print e
    dumpStack();

print "this line is never printed"

А это мой фрагмент кода Java:

// ...
public void connect()
  {
    System.out.println("start connection with interpreter");

    interpreter = new WLSTInterpreter();
    interpreter.setOut(System.out);
    interpreter.setErr(System.err);

    System.out.println("call Script");
    interpreter.execfile("./lib/connect.py");

    System.out.println("this is never printed");
  }
// ...

Результат в журнале после запуска кода:

start connection with interpreter
call Script
Debug is now turned on.

call dumpVariables() ...
cmo: null
exitonerror: true
recording: false
call readDomain('/opt/WebLogic-TestDomain/JenkinsTestDomain/')

И тогда ничего не приходит после этого! Нет ошибок, нет исключений, нет выходных.

То же самое, если я закомментирую readDomain строка: интерпретатор Python проходит через строку "connect(...)"но потом опять зависает.

Ты хоть представляешь, что здесь происходит? Кажется, код чего-то ждет. Или Admin Server не отвечает. Но почему эти строки работают с интерактивом?

Что я могу сделать, чтобы найти причину? Какие-либо варианты увеличить вывод отладочной информации?

0 ответов

Другие вопросы по тегам