Servlets jython中的servlet过滤器

Servlets jython中的servlet过滤器,servlets,jython,Servlets,Jython,基于,我在jython中创建了以下servlet过滤器(精确代码): 但是,我收到了错误消息: Traceback (most recent call last): File "c:\CCC\webapps\ccc\WEB-INF\pyfilter\Route2Jope.py", line 24, in doFilter wrapped = HttpServletRequestWrapper(request) TypeError: org.python.proxies.__main_

基于,我在jython中创建了以下servlet过滤器(精确代码):

但是,我收到了错误消息:

Traceback (most recent call last):
  File "c:\CCC\webapps\ccc\WEB-INF\pyfilter\Route2Jope.py", line 24, in doFilter
    wrapped = HttpServletRequestWrapper(request)
TypeError: org.python.proxies.__main__$HttpServletRequestWrapper$2(): expected 0 args; got 1

    org.python.core.Py.TypeError(Py.java:259)
    org.python.core.PyReflectedFunction.throwError(PyReflectedFunction.java:209)
    org.python.core.PyReflectedFunction.throwArgCountError(PyReflectedFunction.java:262)
    org.python.core.PyReflectedFunction.throwError(PyReflectedFunction.java:319)
    org.python.core.PyReflectedConstructor.__call__(PyReflectedConstructor.java:177)
    org.python.core.PyObject.__call__(PyObject.java:419)
    org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
    org.python.core.PyMethod.__call__(PyMethod.java:228)
    org.python.core.PyMethod.__call__(PyMethod.java:223)
    org.python.core.Deriveds.dispatch__init__(Deriveds.java:19)
    org.python.core.PyObjectDerived.dispatch__init__(PyObjectDerived.java:1112)
    org.python.core.PyType.type___call__(PyType.java:1713)
    org.python.core.PyType.__call__(PyType.java:1696)
    org.python.core.PyObject.__call__(PyObject.java:461)
    org.python.core.PyObject.__call__(PyObject.java:465)
    org.python.pycode._pyx1.doFilter$6(c:\CCC\webapps\ccc\WEB-INF\pyfilter\Route2Jope.py:25)
    org.python.pycode._pyx1.call_function(c:\CCC\webapps\ccc\WEB-INF\pyfilter\Route2Jope.py)
    org.python.core.PyTableCode.call(PyTableCode.java:167)
    org.python.core.PyBaseCode.call(PyBaseCode.java:307)
    org.python.core.PyBaseCode.call(PyBaseCode.java:198)
    org.python.core.PyFunction.__call__(PyFunction.java:482)
    org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
    org.python.core.PyMethod.__call__(PyMethod.java:228)
    org.python.core.PyMethod.__call__(PyMethod.java:218)
    org.python.core.PyMethod.__call__(PyMethod.java:213)
    org.python.core.PyObject._jcallexc(PyObject.java:3626)
    org.python.proxies.__main__$Route2Jope$3.doFilter(Unknown Source)
    org.python.util.PyFilter.doFilter(PyFilter.java:80)

我认为它告诉我不应该传递参数'request',但这对我来说没有意义。也许我忽略了python和java类之间的映射问题?建议?

构造函数的名称必须是
\uuuu init\uuuu
,而不是
init
:)

不管怎样,第一个init应该是init
Traceback (most recent call last):
  File "c:\CCC\webapps\ccc\WEB-INF\pyfilter\Route2Jope.py", line 24, in doFilter
    wrapped = HttpServletRequestWrapper(request)
TypeError: org.python.proxies.__main__$HttpServletRequestWrapper$2(): expected 0 args; got 1

    org.python.core.Py.TypeError(Py.java:259)
    org.python.core.PyReflectedFunction.throwError(PyReflectedFunction.java:209)
    org.python.core.PyReflectedFunction.throwArgCountError(PyReflectedFunction.java:262)
    org.python.core.PyReflectedFunction.throwError(PyReflectedFunction.java:319)
    org.python.core.PyReflectedConstructor.__call__(PyReflectedConstructor.java:177)
    org.python.core.PyObject.__call__(PyObject.java:419)
    org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
    org.python.core.PyMethod.__call__(PyMethod.java:228)
    org.python.core.PyMethod.__call__(PyMethod.java:223)
    org.python.core.Deriveds.dispatch__init__(Deriveds.java:19)
    org.python.core.PyObjectDerived.dispatch__init__(PyObjectDerived.java:1112)
    org.python.core.PyType.type___call__(PyType.java:1713)
    org.python.core.PyType.__call__(PyType.java:1696)
    org.python.core.PyObject.__call__(PyObject.java:461)
    org.python.core.PyObject.__call__(PyObject.java:465)
    org.python.pycode._pyx1.doFilter$6(c:\CCC\webapps\ccc\WEB-INF\pyfilter\Route2Jope.py:25)
    org.python.pycode._pyx1.call_function(c:\CCC\webapps\ccc\WEB-INF\pyfilter\Route2Jope.py)
    org.python.core.PyTableCode.call(PyTableCode.java:167)
    org.python.core.PyBaseCode.call(PyBaseCode.java:307)
    org.python.core.PyBaseCode.call(PyBaseCode.java:198)
    org.python.core.PyFunction.__call__(PyFunction.java:482)
    org.python.core.PyMethod.instancemethod___call__(PyMethod.java:237)
    org.python.core.PyMethod.__call__(PyMethod.java:228)
    org.python.core.PyMethod.__call__(PyMethod.java:218)
    org.python.core.PyMethod.__call__(PyMethod.java:213)
    org.python.core.PyObject._jcallexc(PyObject.java:3626)
    org.python.proxies.__main__$Route2Jope$3.doFilter(Unknown Source)
    org.python.util.PyFilter.doFilter(PyFilter.java:80)