I always get this fatal error. The only thing i want to do is to pass my HttpServletResponse from my Servlet to my JNI, and then again from my JNI to my Servlet (but another method). Can you tell me what i do wrong?
---------------------------------------------------------------- Here is the java code:

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.lang.String.*;
import java.util.*;

public class PushC5 extends HttpServlet {

//public ServletOutputStream out;
public void vcInit() {
}

public native int xxc(int arr[], HttpServletResponse response);

static {
System.loadLibrary("DELL5");
}

//private ServletOutputStream out;
private String[] message=new String[] {"un",
"deux",
"trois",
"quatre",
"cinq"};

public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
ServletOutputStream out;
out = response.getOutputStream();

response.setContentType("multipart/x-mixed- replace;boundary=End");
out.println();

out.println("Content-Type: text/html");
out.println();

out.println("--End--");
out.flush();
out.println("Content-Type: text/html");
out.println();

//sendHTML(message[0]);
out.println("<HTML><HEAD><TITLE>Push Servlet</TITLE></HEAD>" +
"<BODY><H1 ALIGN=CENTER>" + message[0]
+ "</H1>" +
"</BODY></HTML>");

out.println();
out.println("--End");
out.flush();

int arr[] = new int [10];

arr[0] = Integer.parseInt(request.getParameter("0"));
arr[1] = Integer.parseInt(request.getParameter("1"));
arr[2] = Integer.parseInt(request.getParameter("2"));
arr[3] = Integer.parseInt(request.getParameter("3"));
arr[4] = Integer.parseInt(request.getParameter("4"));
arr[5] = Integer.parseInt(request.getParameter("5"));
arr[6] = Integer.parseInt(request.getParameter("6"));
arr[7] = Integer.parseInt(request.getParameter("7"));
arr[8] = Integer.parseInt(request.getParameter("8"));
arr[9] = Integer.parseInt(request.getParameter("9"));

int help=new PushC5().xxc(arr, response);
message[4] = Integer.toString(help);

for (int nbr = 0; nbr+1 < message.length; nbr++) {

out.println("Content-Type: text/html");
out.println();

//sendHTML(message[nbr]);
out.println("<HTML><HEAD><TITLE>Push Servlet</TITLE></HEAD>" +
"<BODY><H1 ALIGN=CENTER>" + message[nbr+1]
+ "</H1>" +
"</BODY></HTML>");

out.println();
out.println("--End");
out.flush();

try {
Thread.sleep(Math.abs(new Random().nextInt() % 100) * 10);
Thread.sleep(1000);
} catch (InterruptedException e) {
}

}

out.println("--End--");
out.flush();
}

private void PrintIt(String s, HttpServletResponse responseprint) throws IOException
{
ServletOutputStream outprint;
outprint = responseprint.getOutputStream();
outprint.println("<HTML><HEAD><TITLE>Ik moest printen:</TITLE></HEAD>" +
"<BODY><H1 ALIGN=CENTER>Ik moest iets printen: " + s + "</H1>" +
"</BODY></HTML>");
}
}

---------------------------------------------------------------- THIS IS THE C code for my JNI:

#include <jni.h>
#include "PushC5.h"
#include <stdio.h>

// Peut-être on doit inclure ces fichiers parce que j'ai un erreur avec la
// déclaration:
// char tstr[100]="Print da nekeer";
// l'erreur est: "error C2143 syntax error: missing ';' before 'type'

/*#include <string.h>
#include <iostream.h>
#include <conio.h>
*/

JNIEXPORT jint JNICALL

Java_PushC5_xxc(JNIEnv *env, jobject obj, jintArray arr, jobject response)
{
// juste un petit texte qui doit être retourné vers le servlet pour le visualiser
// le texte sur le browser

char tstr[]="Print da nekeer";

// GetObjectClass retourne la classe d'un objet, nécessaire pour aller chercher
// le methodID.

jclass cls = (*env)->GetObjectClass(env, obj);

// GetMethodID est le methodID du methode qui doit imprimer ce petit texte tstr[]

jmethodID mid = (*env)->GetMethodID(env, cls, "PrintIt", "(I) V");

// Récuperer les arguments du servlet (les 10 numéro pour faire l'addition

jsize len = (*env)->GetArrayLength(env, arr);
int i, s, s2, h, sum = 0;

jint *body = (*env)->GetIntArrayElements(env, arr, 0);
for (i=0; i<len; i++)
sum += body[i];

/*strcpy (tstr, "Print da nekeer");
for (s=0; s<10000; s++) {
for (s2=0; s2<10000; s2++) {
h = sqrt(1002);
}
}*/

(*env)->ReleaseIntArrayElements(env, arr, body, 0);
(*env)->CallVoidMethod(env, obj, mid, tstr, response);

return sum;
}
--------------------------------------------------------------- THIS IS THE ERROR:

JAVA a causé une défaillance de page dans
le module JVM.DLL à 0177:504caf23.
Registres :
EAX=00881940 CS=0177 EIP=504caf23 EFLGS=00010246 EBX=00881940 SS=017f ESP=069cf298 EBP=00000100
ECX=0088e660 DS=017f ESI=01825cd8 FS=53ff
EDX=00000000 ES=017f EDI=00000000 GS=0000
Octets à CS : EIP :
f6 47 0c 08 74 0b 68 9c aa 50 50 50 e8 1c f8 ff
État de la pile :
007a859b 05516fa0 069cf338 007a859b 8a805048 018244e0 069cff64 10010048 007a859b 00000000 069cf338 069cf2aa 00000000 504cc14c 00881940 05516f94