jython2.5.2を使用するSikuli(sikuli.orgを参照)を使用しています。
JavaレベルでのRegionクラスの概要は次のとおりです。
public class Region {
// < other class methods >
public int type(String text) {
System.out.println("javadebug: "+text); // debug output
// do actual typing
}
}
Pythonレベルには、Wrapperclassがあります。
import Region as JRegion // import java class
class Region(JRegion):
# < other class methods >
def type(self, text):
print "pythondebug: "+text // debug output
JRegion.type(self, text)
これはASCII文字の意図どおりに機能しますが、テキストとしてö、ä、またはüを使用すると、次のようになります。
// python input:
# -*- encoding: utf-8 -*-
someregion = Region()
someregion.type("ä")
// output:
pythondebug: ä
javadebug: ä
Javaオブジェクトに渡されたときに、文字が誤って変換されたようです。
ここで何が問題になっているのか、そしてこれを修正する方法を知りたいので、pythonmethodに入力された文字はjavamethodでも同じです。ご協力いただきありがとうございます