[Yanel-commits] rev 23266 - public/yanel/trunk/src/core/java/org/wyona/yanel/servlet

michi at wyona.com michi at wyona.com
Thu Mar 15 10:51:04 CET 2007


Author: michi
Date: 2007-03-15 10:51:02 +0100 (Thu, 15 Mar 2007)
New Revision: 23266

Modified:
   public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java
Log:
query string and parameters added

Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java	2007-03-14 19:47:28 UTC (rev 23265)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java	2007-03-15 09:51:02 UTC (rev 23266)
@@ -1656,6 +1656,8 @@
      * Custom XHTML Form for authentication
      */
     public void getXHTMLAuthenticationForm(HttpServletRequest request, HttpServletResponse response, Realm realm, String message) throws ServletException, IOException {
+        String path = request.getServletPath();
+        String backToRealm = org.wyona.yanel.core.util.PathUtil.backToRealm(path);
         
         org.w3c.dom.Document doc = null;
         javax.xml.parsers.DocumentBuilderFactory dbf= javax.xml.parsers.DocumentBuilderFactory.newInstance();
@@ -1674,6 +1676,10 @@
             
             Element requestElement = (Element) rootElement.appendChild(doc.createElement("request"));
             requestElement.setAttribute("urlqs", getRequestURLQS(request, null, true));
+
+            if (request.getQueryString() != null) {
+                requestElement.setAttribute("qs", request.getQueryString().replaceAll("&", "&"));
+            }
             
             Element realmElement = (Element) rootElement.appendChild(doc.createElement("realm"));
             realmElement.setAttribute("name", realm.getName());
@@ -1696,7 +1702,9 @@
                 String mimeType = patchMimeType("application/xhtml+xml", request);
                 response.setContentType(mimeType + "; charset=" + DEFAULT_ENCODING);
                 response.setStatus(javax.servlet.http.HttpServletResponse.SC_UNAUTHORIZED);            
-                Transformer transformer = TransformerFactory.newInstance().newTransformer(new StreamSource(xsltLoginScreen));            
+                Transformer transformer = TransformerFactory.newInstance().newTransformer(new StreamSource(xsltLoginScreen));
+                transformer.setParameter("yanel.back2realm", backToRealm);
+                transformer.setParameter("yanel.reservedPrefix", reservedPrefix);
                 transformer.transform(new javax.xml.transform.dom.DOMSource(doc), 
                         new javax.xml.transform.stream.StreamResult(response.getWriter()));
             }




More information about the Yanel-commits mailing list