我做的时候都是先传数组长度,Applet初始化数组,然后元素一个一个地接收。我觉得传数组指针是不可能的。

解决方案 »

  1.   

    用这个方法:
            URL url=new URL("......");
            URLConnection con=url.openConnection();
            con.setUseCaches(false);        
            con.setDoInput(true);
            con.setDoOutput(true);
            ByteArrayOutputStream byteOut =new ByteArrayOutputStream();
            ObjectOutputStream    out     =new ObjectOutputStream(byteOut);
            //write object;
            out.writeObject(你的数组);
            //end;
            out.flush();
            byte buf[]  = byteOut.toByteArray();
            con.setRequestProperty("content-type","application/contet-stream");
            con.setRequestProperty("content-length",""+buf.length);
            DataOutputStream dataOut = new DataOutputStream(con.getOutputStream());
            dataOut.write(buf);
            dataOut.flush();
            dataOut.close();
            ObjectInputStream in = new ObjectInputStream(con.getInputStream());
            System.out.println("pass getInputStream");
            //get the info;
            Object temp  =in.readObject();
            in.close()
    在servlet的server方法中,写
            ObjectInputStream in=new ObjectInputStream(req.getInputStream());       
            resp.setContentType("application/octet-stream");
            ByteArrayOutputStream byteOut=new ByteArrayOutputStream();
            ObjectOutputStream    out=new ObjectOutputStream(byteOut); 
            paramlist=(String[])in.readObject();
    你自己再试试吧
      

  2.   

    Hi, 
    How are you communicating between your applet and servlet? This code works for me: import java.io.*; 
    import java.net.*; 
    import java.awt.*; 
    import java.util.*; 
    import java.applet.Applet; public class WebMemorial extends Applet { private String request, 
    response; public void init () { request = "http://localhost/:8080/Memorial/servlet/" + 
    "DBReader?DataBase=ONLINE_MEMORIAL" + 
    "&Column=PLOTID,GRAVEID,GIVENNAME,SURNAME" + 
    "&Table=LMCLARTY_DECEASED"; 
    try { 
    URL url = new URL( request ); 
    BufferedReader in = new BufferedReader( 
    new InputStreamReader( url.openStream() ) ); 
    response = in.readLine(); 
    in.close(); 
    } catch ( Exception e ) { e.printStackTrace(); } }/*****************/ public void paint ( Graphics g ) { g.drawString( response, 20, 15 ); }/*****************/