diff --git a/src/helma/servlet/AbstractServletClient.java b/src/helma/servlet/AbstractServletClient.java index f794b92c..1e18b79a 100644 --- a/src/helma/servlet/AbstractServletClient.java +++ b/src/helma/servlet/AbstractServletClient.java @@ -127,6 +127,10 @@ public abstract class AbstractServletClient extends HttpServlet { if (browser != null) reqtrans.set ("http_browser", browser); + String authorization = request.getHeader("authorization"); + if ( authorization != null ) + reqtrans.set ("authorization", authorization ); + for (Enumeration e = request.getParameterNames(); e.hasMoreElements(); ) { // Params parsen String nextKey = (String)e.nextElement(); @@ -214,6 +218,8 @@ public abstract class AbstractServletClient extends HttpServlet { else res.setHeader ("Cache-Control", "no-cache"); // for HTTP 1.1 } + if ( trans.realm!=null ) + res.setHeader( "WWW-Authenticate", "Basic realm=\"" + trans.realm + "\"" ); if (trans.status > 0) res.setStatus (trans.status); res.setContentLength (trans.getContentLength ()); diff --git a/src/helma/servlet/AcmeServletClient.java b/src/helma/servlet/AcmeServletClient.java index 8b795338..1e8348ea 100644 --- a/src/helma/servlet/AcmeServletClient.java +++ b/src/helma/servlet/AcmeServletClient.java @@ -93,6 +93,10 @@ public class AcmeServletClient extends HttpServlet { if (browser != null) reqtrans.set ("http_browser", browser); + String authorization = request.getHeader("authorization"); + if ( authorization != null ) + reqtrans.set ("authorization", authorization ); + for (Enumeration e = request.getParameterNames(); e.hasMoreElements(); ) { // Params parsen String nextKey = (String)e.nextElement(); @@ -170,6 +174,8 @@ public class AcmeServletClient extends HttpServlet { else res.setHeader ("Cache-Control", "no-cache"); // for HTTP 1.1 } + if ( trans.realm!=null ) + res.setHeader( "WWW-Authenticate", "Basic realm=\"" + trans.realm + "\"" ); if (trans.status > 0) res.setStatus (trans.status); res.setContentLength (trans.getContentLength ());