I have a "web service" that writes the following out from a servlet. ObjectOutputStream outToCaller; response.setContentType("application/octet-stream"); response.setHeader("Cache-Control","public"); response.setHeader("Cache-Control","max-age=10"); try { outToCaller = new ObjectOutputStream(response.getOutputStream()); outToCaller.writeObject(tcos); outToCaller.flush();
.... I read this from the following CONSOLE application. URL urlobj = new URL(servletURL); HttpURLConnection con = (HttpURLConnection) urlobj.openConnection(); // con.setDoInput(true); // con.setDoOutput(true); con.setUseCaches(true); con.setDefaultUseCaches (true); con.setRequestProperty ("Content-Type", "application/octet-stream"); con.setAllowUserInteraction(false); con.setRequestMethod("GET"); InputStream is =(InputStream) con.getInputStream(); ObjectInputStream ois = new ObjectInputStream(is); Serializable objs = (Serializable)ois.readObject(); if (objs instanceof SecondTestComplexObjSer) { tcos = (SecondTestComplexObjSer)objs; System.out.println(tcos); } So I have two questions: How do I set up caching from my "Web Service" servlet? And how do I properly test that it is working? (Note: tcos has a timestamp string, so I was expecting to see some old times since I set the age to 10 sec. I had a sleep set up of 4 sec in console app.)