[Yanel-commits] rev 26162 -
public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet
michi at wyona.com
michi at wyona.com
Fri Jul 20 11:34:00 CEST 2007
Author: michi
Date: 2007-07-20 11:34:00 +0200 (Fri, 20 Jul 2007)
New Revision: 26162
Modified:
public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java
Log:
login screen is now configurable
Modified: public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java
===================================================================
--- public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java 2007-07-20 09:28:25 UTC (rev 26161)
+++ public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java 2007-07-20 09:34:00 UTC (rev 26162)
@@ -104,7 +104,7 @@
Sitetree sitetree;
File xsltInfoAndException;
- File xsltLoginScreen;
+ String xsltLoginScreenDefault;
public static String IDENTITY_MAP_KEY = "identity-map";
private static String TOOLBAR_KEY = "toolbar";
@@ -137,7 +137,7 @@
servletContextRealPath = config.getServletContext().getRealPath("/");
xsltInfoAndException = org.wyona.commons.io.FileUtil.file(servletContextRealPath, config.getInitParameter("exception-and-info-screen-xslt"));
- xsltLoginScreen = org.wyona.commons.io.FileUtil.file(servletContextRealPath, config.getInitParameter("login-screen-xslt"));
+ xsltLoginScreenDefault = config.getInitParameter("login-screen-xslt");
try {
yanel = Yanel.getInstance();
yanel.init();
@@ -1753,7 +1753,13 @@
} else {
String mimeType = patchMimeType("application/xhtml+xml", request);
response.setContentType(mimeType + "; charset=" + DEFAULT_ENCODING);
- response.setStatus(javax.servlet.http.HttpServletResponse.SC_UNAUTHORIZED);
+ response.setStatus(javax.servlet.http.HttpServletResponse.SC_UNAUTHORIZED);
+
+ File realmDir = realm.getRootDir();
+ if (realmDir == null) realmDir = new File(realm.getConfigFile().getParent());
+ File xsltLoginScreen = org.wyona.commons.io.FileUtil.file(realmDir.getAbsolutePath(), "src" + File.separator + "webapp" + File.separator + xsltLoginScreenDefault);
+ if (!xsltLoginScreen.isFile()) xsltLoginScreen = org.wyona.commons.io.FileUtil.file(servletContextRealPath, xsltLoginScreenDefault);
+
Transformer transformer = TransformerFactory.newInstance().newTransformer(new StreamSource(xsltLoginScreen));
transformer.setParameter("yanel.back2realm", backToRealm);
transformer.setParameter("yanel.reservedPrefix", reservedPrefix);
More information about the Yanel-commits
mailing list