Retorno de parámetros en métodos nativos(JNI)

mtortosa_pelegrina
05 de Diciembre del 2001
Estoy tratando de crear un metodo nativo que reciba como parámetro de entrada un String(jstring en la parte nativa) y de como salida otro parámetro de tipo String(jstring) resultado de una transformación del parámetro String de entrada. En el tutorial sobre JNI se incluye el ejemplo getLine que retorna un String(jstring)pero mediante un return. Yo necesitaría devolver el parámetro String de salida pero no mediante un return sino a través de uno de los parámetros de entrada al método nativo. El problema es que una vez que yo tengo disponible la cadena(char*) a retornar necesito traspasarla al parámetro de salida final de tipo jstring y para ello utilizo la función NewStringUTF: recvbuff = (*env)->NewStringUTF(env, rcvbuff); donde recvbuff es uno de los parámetros de entrada de tipo jstring que utilizo para devolver el buffer resultante. En el lado Java no obtengo nada y me da la sensación que al hacer el NewStringUTF estoy reasignado el puntero y por tanto ya no coincide con el parámetro de entrada. Podría devolverlo del mismo modo que el ejemplo getLine pero utilizo el retorno de la función para devolver un entero(jint) que indique el codigo de error si lo hubiera. Muchas gracias de antemano.