I have a web application in which the header is displayed by hitting a URL. Since the header content doesnt change always i wanted to cache the results of the URL inputstream and refresh it for every 60 mins. The code of my header.jsp is :
<%
URL url = new URL(strHeaderURL);
isProxyEnabled = UCMUtility.getProperty("globalheaderproxyenabled");
System.out.println("isProxyEnabled "+isProxyEnabled);
System.out.println("condition "+isProxyEnabled.equals("Y"));
if(isProxyEnabled.equals("Y")){
System.out.println("inside proxy Yes");
proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(UCMUtility.getProperty("globalheaderproxy"), Integer
.parseInt(UCMUtility.getProperty("globalheaderport"))));
connection = url.openConnection(proxy);
}
else{
System.out.println("inside proxy No");
connection = url.openConnection();
}
connection.setDoInput(true);
//connection.setReadTimeout(1000);
//connection.setConnectTimeout(1000);
InputStream inStream = connection.getInputStream();
input = new BufferedReader(new InputStreamReader(inStream));
strContent = new StringWriter();
while ((strLine = input.readLine()) != null) {
strContent.write( strLine+"\n" );
}
out.println(strContent.toString());
%>
I include this header.jsp in all other jsp's.... Now I wanted to cahce the result of this jsp and refresh it for every 60 minutes. How can I do this? Can anyone guide me please. I searched a lot in net but could not find anything which I can understand :( Someone pls help me ..