rleland 2003/08/28 10:09:28
Modified: src/share/org/apache/struts/taglib/bean IncludeTag.java
Log:
Bug#: 22309
factor out set cookie to support clustering.
Revision Changes Path
1.23 +21 -10
jakarta-struts/src/share/org/apache/struts/taglib/bean/IncludeTag.java
Index: IncludeTag.java
===================================================================
RCS file:
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/bean/IncludeTag.java,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- IncludeTag.java 27 Jul 2003 06:54:28 -0000 1.22
+++ IncludeTag.java 28 Aug 2003 17:09:28 -0000 1.23
@@ -241,14 +241,7 @@
conn.setDoOutput(false);
// Add a session id cookie if appropriate
HttpServletRequest request = (HttpServletRequest)
pageContext.getRequest();
- if ((conn instanceof HttpURLConnection)
- && urlString.startsWith(request.getContextPath())
- && (request.getRequestedSessionId() != null)
- && request.isRequestedSessionIdFromCookie()) {
- StringBuffer sb = new StringBuffer("JSESSIONID=");
- sb.append(request.getRequestedSessionId());
- conn.setRequestProperty("Cookie", sb.toString());
- }
+ setCookie(conn, urlString, request);
// Connect to the requested resource
conn.connect();
} catch (Exception e) {
@@ -282,6 +275,24 @@
// Skip any body of this tag
return (SKIP_BODY);
+ }
+ /**
+ * Add a session id cookie if appropriate. Can be overloaded to
+ * support a cluster.
+ * @param conn
+ * @param urlString
+ * @param request
+ * @ since Struts 1.2.0
+ */
+ protected void setCookie(URLConnection conn, String urlString,
HttpServletRequest request) {
+ if ((conn instanceof HttpURLConnection)
+ && urlString.startsWith(request.getContextPath())
+ && (request.getRequestedSessionId() != null)
+ && request.isRequestedSessionIdFromCookie()) {
+ StringBuffer sb = new StringBuffer("JSESSIONID=");
+ sb.append(request.getRequestedSessionId());
+ conn.setRequestProperty("Cookie", sb.toString());
+ }
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]