Subscribe

RSS Feed (xml)

Powered By

Skin Design:
Free Blogger Skins

Powered by Blogger

Tuesday, December 11, 2007

java code for Context accessor

import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ContextAccessor extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {

//get a servlet context attribute
ContextObject contextObj = (ContextObject) getServletContext()
.getAttribute("com.java2s.ContextObject");

if (contextObj != null)
contextObj.put(request.getRemoteAddr(), "" + new java.util.Date());

//display
response.setContentType("text/html");
java.io.PrintWriter out = response.getWriter();
out
.println("Servlet Context Attribute");
if (contextObj != null) {
out.println("

Servlet Context Attribute Values

");
out.println(contextObj.getValues());
} else {
out.println("

Servlet Context Attribute is Null

");
}
out.println("");

} //end doGet

}

//ContextObject.java

class ContextObject {

private Map map;

public ContextObject() {

map = Collections.synchronizedMap(new HashMap());
}

public void put(Object key, Object value) {

if (key == null || value == null)
throw new IllegalArgumentException(
"Invalid parameters passed to ContextObject.put");

map.put(key, value);
}

public Map getMap() {

return map;

}

public String getValues() {

StringBuffer buf = new StringBuffer("");
Set set = map.keySet();

synchronized (map) {

Iterator i = set.iterator();
while (i.hasNext())
buf.append((String) i.next() + "
");
}

return buf.toString();

}

public String toString() {

return getClass().getName() + "[ " + map + " ]";
}

}

No comments: