mne to funguje takto:
servlet :
---------------------------------------------------------------------------
import java.io.IOException;
import java.io.ObjectOutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Server extends HttpServlet{
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest arg0, HttpServletResponse
arg1) throws ServletException, IOException {
Data d = new Data(1, "pokus");
ObjectOutputStream os = new
ObjectOutputStream(arg1.getOutputStream());
os.writeObject(d);
os.close();
}
}
data :
---------------------------------------------------------------------------
import java.io.Serializable;
public class Data implements Serializable{
private static final long serialVersionUID = 1L;
public int a;
public String b;
public Data(int a, String b) {
super();
this.a = a;
this.b = b;
}
public String toString(){
return "a=["+a+"] b=["+b+"]";
}
}
client :
-------------------------------------------------------------------------
import java.io.ObjectInputStream;
import java.net.URL;
import java.net.URLConnection;
public class Client {
public static void main(String[] args) throws Exception{
URL u = new URL("http://localhost:8080/serializeTest/Server");
URLConnection c = u.openConnection();
c.setDoOutput(false);
c.setDoInput(true);
c.setDefaultUseCaches(false);
c.setUseCaches(false);
ObjectInputStream i = new ObjectInputStream( c.getInputStream()
);
Object o = i.readObject();
i.close();
System.out.println(o.toString());
}
}
server je tomcat
a vo web.xml je to namapovane nasledovne
<servlet>
<servlet-name>Server</servlet-name>
<servlet-class>Server</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Server</servlet-name>
<url-pattern>/Server</url-pattern>
</servlet-mapping>