如何使用Jython将Java List传递给Python函数?

时间:2018-01-09 13:47:11

标签: java python jython

我正在尝试将Java arraylist传递给Python函数。我收到了以下错误

  

SEVERE:Servlet [Faces Servlet]的Servlet.service()在路径[/ GEO_DM]的上下文中引发了异常[Cant instantiate class:com.ppts.bean.TriggerLawSocietyServiceBean。]的根本原因       java.lang.IllegalArgumentException:' ofArrayType'必须与[Lorg.python.core.PyObject;的现有数组类型兼容;请参阅java.lang.Class.getName()。

请参阅下面的我的java代码:

 PythonInterpreter interpreter=new PythonInterpreter(); 
    PyList pyList=new PyList(new ArrayList<>());
    interpreter.execfile(getClass().getResourceAsStream("/com/ppts/propertiesfiles/sample_return_script.py"));
    PyObject function=interpreter.get("returnSample");
    PyObject result=function.__call__(new PyInteger(1),pyList,new PyDictionary());
    progress=(int) result.__tojava__(Integer.class);

请参阅我的python代码:

def returnSample(var, list, dict):
    print(var)
    b=1
    flag=True
    print(list[0])
    print(dict.keys())
    return b

请不要在python中看到逻辑。 只是帮我把Arraylist传递给那个python函数

0 个答案:

没有答案