int main(int argc, char **argv) { try { JvCreateJavaVM(NULL); JvAttachCurrentThread(NULL, NULL); java::lang::String *message = JvNewStringLatin1("hello cni"); JvInitClass(&java::lang::String::class$); java::lang::System::out->println(message); JvInitClass(&TestClass::class$); TestClass *to = new TestClass(); int v = to->foo(100); std::cout << "v = " << v << std::endl; int x = 0; for (int i = 0; i < 10000000; ++i) { x = to->bar(); } std::cout << "x = " << x << std::endl; JvDetachCurrentThread(); } catch (java::lang::Throwable *t) { java::lang::System::err->println(JvNewStringLatin1( "unhandled java exception")); t->printStackTrace(); } return 0; }
java::lang::Object *toJava(const QoreString &str, ExceptionSink *xsink) { if (str.getEncoding() == QCS_UTF8) return JvNewStringUTF(str.getBuffer()); if (str.getEncoding() == QCS_ISO_8859_1) return JvNewStringLatin1(str.getBuffer()); TempEncodingHelper ustr(str, QCS_UTF8, xsink); if (!ustr) return 0; return JvNewStringUTF(ustr->getBuffer()); }
java::lang::Object *toJava(const char *str) { return JvNewStringLatin1(str); }