Index: lams_build/lib/lams/lams.jar =================================================================== diff -u -r5b633ecc884b7d321a5164af26bfe268629a2d3f -rb33e717f9a734d318eefab07a17234f07c770c92 Binary files differ Index: lams_central/src/java/org/lamsfoundation/lams/web/action/SignupAction.java =================================================================== diff -u -r84151d175a3fce3cd3ff1bd4eeccfd7cbef01802 -rb33e717f9a734d318eefab07a17234f07c770c92 --- lams_central/src/java/org/lamsfoundation/lams/web/action/SignupAction.java (.../SignupAction.java) (revision 84151d175a3fce3cd3ff1bd4eeccfd7cbef01802) +++ lams_central/src/java/org/lamsfoundation/lams/web/action/SignupAction.java (.../SignupAction.java) (revision b33e717f9a734d318eefab07a17234f07c770c92) @@ -138,8 +138,7 @@ String context = signupForm.getString("context"); signupService.signinUser(login, context); - String redirectUrl = request.getScheme() + "://" + request.getServerName() + ":" - + request.getServerPort() + "/lams/"; + String redirectUrl = Configuration.get(ConfigurationKeys.SERVER_URL); //check if user is logged in already if (SessionManager.getSession() == null || SessionManager.getSession().getAttribute(AttributeNames.USER) == null) { Index: lams_central/src/java/org/lamsfoundation/lams/web/tag/WebAppURLTag.java =================================================================== diff -u -rea02b970f16cb8f0cc01a6e45e45fb86b3dd3202 -rb33e717f9a734d318eefab07a17234f07c770c92 --- lams_central/src/java/org/lamsfoundation/lams/web/tag/WebAppURLTag.java (.../WebAppURLTag.java) (revision ea02b970f16cb8f0cc01a6e45e45fb86b3dd3202) +++ lams_central/src/java/org/lamsfoundation/lams/web/tag/WebAppURLTag.java (.../WebAppURLTag.java) (revision b33e717f9a734d318eefab07a17234f07c770c92) @@ -24,69 +24,58 @@ import java.io.IOException; -import javax.servlet.ServletRequest; import javax.servlet.http.HttpServletRequest; import javax.servlet.jsp.JspException; import javax.servlet.jsp.JspWriter; +import javax.servlet.jsp.tagext.Tag; import javax.servlet.jsp.tagext.TagSupport; import org.apache.log4j.Logger; +import org.lamsfoundation.lams.util.WebUtil; /** - * Output the base part of the current web app url (e.g. http://server/lams/tool/nb11/) - * based on the current servlet details. + * Output the base part of the current web app url (e.g. http://server/lams/tool/nb11/) based on the current servlet + * details. * - * @jsp.tag name="WebAppURL" - * body-content="empty" - * display-name="Base URL for the current web app" - * description="Output the basic URL for the current webapp. e.g. http://server/lams/tool/nb11/" - * + * @jsp.tag name="WebAppURL" body-content="empty" display-name="Base URL for the current web app" + * description="Output the basic URL for the current webapp. e.g. http://server/lams/tool/nb11/" + * * @author Fiona Malikoff */ public class WebAppURLTag extends TagSupport { - private static final long serialVersionUID = -3773379475085729642L; + private static final long serialVersionUID = -3773379475085729642L; - private static final Logger log = Logger.getLogger(WebAppURLTag.class); + private static final Logger log = Logger.getLogger(WebAppURLTag.class); - /** + /** * */ - public WebAppURLTag() { - super(); - } - - public int doStartTag() throws JspException { - ServletRequest sr = pageContext.getRequest(); - if ( HttpServletRequest.class.isInstance(sr) ) { - HttpServletRequest request = (HttpServletRequest) sr; - - String protocol; - if(request.isSecure()){ - protocol = "https://"; - }else{ - protocol = "http://"; - } - - String path = protocol+request.getServerName()+":"+request.getServerPort()+request.getContextPath(); - if ( ! path.endsWith("/") ) - path = path + "/"; + public WebAppURLTag() { + super(); + } - try { - JspWriter writer = pageContext.getOut(); - writer.print(path); - } catch ( IOException e ) { - log.error("ServerURLTag unable to write out server URL due to IOException. ", e); - throw new JspException(e); - } + @Override + public int doStartTag() throws JspException { + HttpServletRequest request = (HttpServletRequest) pageContext.getRequest(); - } else { - log.warn("ServerURLTag unable to write out server URL as the servlet request is not an HttpServletRequest."); - } - return SKIP_BODY; } + String path = WebUtil.getBaseServerURL() + request.getContextPath(); + if (!path.endsWith("/")) { + path += "/"; + } - public int doEndTag() { - return EVAL_PAGE; + try { + JspWriter writer = pageContext.getOut(); + writer.print(path); + } catch (IOException e) { + WebAppURLTag.log.error("ServerURLTag unable to write out server URL due to IOException. ", e); + throw new JspException(e); } - -} + return Tag.SKIP_BODY; + } + + @Override + public int doEndTag() { + return Tag.EVAL_PAGE; + } +} \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/util/WebUtil.java =================================================================== diff -u -rf92865513dd2beca642af28ab42096ee4849ac32 -rb33e717f9a734d318eefab07a17234f07c770c92 --- lams_common/src/java/org/lamsfoundation/lams/util/WebUtil.java (.../WebUtil.java) (revision f92865513dd2beca642af28ab42096ee4849ac32) +++ lams_common/src/java/org/lamsfoundation/lams/util/WebUtil.java (.../WebUtil.java) (revision b33e717f9a734d318eefab07a17234f07c770c92) @@ -650,4 +650,10 @@ userJSON.put("login", user.getLogin()); return userJSON; } + + public static String getBaseServerURL() { + String serverURL = Configuration.get(ConfigurationKeys.SERVER_URL); + // "https://" is 8 characters, so next "/" should be context + return serverURL.substring(0, serverURL.indexOf('/', 9)); + } } \ No newline at end of file Index: lams_learning/src/java/org/lamsfoundation/lams/learning/export/web/action/CSSBundler.java =================================================================== diff -u -rb6b5573e2fcdc96c208fcaba678857503a8e1ca1 -rb33e717f9a734d318eefab07a17234f07c770c92 --- lams_learning/src/java/org/lamsfoundation/lams/learning/export/web/action/CSSBundler.java (.../CSSBundler.java) (revision b6b5573e2fcdc96c208fcaba678857503a8e1ca1) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/export/web/action/CSSBundler.java (.../CSSBundler.java) (revision b33e717f9a734d318eefab07a17234f07c770c92) @@ -117,20 +117,20 @@ File cssDirectoryFile = new File(cssDirectory); cssDirectoryFile.mkdirs(); - String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort(); + String basePath = Configuration.get(ConfigurationKeys.SERVER_URL); for ( Theme theme : themes) { String themeName = theme.getName(); - String url = (!rtl)? basePath + "/lams/css/" + themeName + ".css" : basePath + "/lams/css/" + themeName + "_" + RTL_DIR + ".css"; + String url = (!rtl)? basePath + "css/" + themeName + ".css" : basePath + "css/" + themeName + "_" + RTL_DIR + ".css"; HttpUrlConnectionUtil.writeResponseToFile(url, cssDirectory, (!rtl)? themeName + ".css" : themeName + "_" + RTL_DIR + ".css", cookies); //cookies aren't really needed here. - url = (!rtl)? basePath + "/lams/css/" + themeName + "_learner.css" : basePath + "/lams/css/" + themeName + "_" + RTL_DIR + "_learner.css" ; + url = (!rtl)? basePath + "css/" + themeName + "_learner.css" : basePath + "css/" + themeName + "_" + RTL_DIR + "_learner.css" ; HttpUrlConnectionUtil.writeResponseToFile(url, cssDirectory, (!rtl)? themeName + "_learner.css" : themeName + "_" + RTL_DIR + "_learner.css", cookies); //cookies aren't really needed here. } // include the special IE stylesheet - String url = basePath + "/lams/css/ie-styles.css"; + String url = basePath + "css/ie-styles.css"; HttpUrlConnectionUtil.writeResponseToFile(url, cssDirectory, "ie-styles.css", cookies); //cookies aren't really needed here. } Index: lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GroupingExportPortfolioServlet.java =================================================================== diff -u -r08950e1090443c3423a3d1c587416a2fccd8bbdf -rb33e717f9a734d318eefab07a17234f07c770c92 --- lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GroupingExportPortfolioServlet.java (.../GroupingExportPortfolioServlet.java) (revision 08950e1090443c3423a3d1c587416a2fccd8bbdf) +++ lams_learning/src/java/org/lamsfoundation/lams/learning/web/action/GroupingExportPortfolioServlet.java (.../GroupingExportPortfolioServlet.java) (revision b33e717f9a734d318eefab07a17234f07c770c92) @@ -21,54 +21,45 @@ * **************************************************************** */ -/* $Id$ */ +/* $Id$ */ package org.lamsfoundation.lams.learning.web.action; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.lamsfoundation.lams.learning.service.ICoreLearnerService; -import org.lamsfoundation.lams.learning.service.LearnerServiceProxy; import org.lamsfoundation.lams.util.WebUtil; import org.lamsfoundation.lams.web.servlet.AbstractExportPortfolioServlet; import org.lamsfoundation.lams.web.util.AttributeNames; - -/** - * Export portfolio page for Grouping. If the grouping has been done - * then the groups are shown, otherwise a "not done" message is given. - * The screen is the same for teachers and learners. +/** + * Export portfolio page for Grouping. If the grouping has been done then the groups are shown, otherwise a "not done" + * message is given. The screen is the same for teachers and learners. * * @web:servlet name="groupingExportPortfolio" * @web:servlet-mapping url-pattern="/groupingExportPortfolio" - * - */ -public class GroupingExportPortfolioServlet extends AbstractExportPortfolioServlet { + * + */ +public class GroupingExportPortfolioServlet extends AbstractExportPortfolioServlet { - private static final long serialVersionUID = 677903773190753547L; + private static final long serialVersionUID = 677903773190753547L; - - //--------------------------------------------------------------------- + // --------------------------------------------------------------------- // Class level constants - Session Attributes - //--------------------------------------------------------------------- - public static final String GROUPS = "groups"; - private final String FILENAME = "groups.html"; - - - public String doExport(HttpServletRequest request, HttpServletResponse response, String directoryName, Cookie[] cookies) - { - Long lessonId = WebUtil.readLongParam(request,AttributeNames.PARAM_LESSON_ID); - Long activityId = WebUtil.readLongParam(request, AttributeNames.PARAM_ACTIVITY_ID); - - String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath(); - writeResponseToFile( - basePath+"/grouping.do?method=exportPortfolio&lessonID="+lessonId+"&activityID="+activityId, - directoryName,FILENAME,cookies); - return FILENAME; + // --------------------------------------------------------------------- + public static final String GROUPS = "groups"; + private final String FILENAME = "groups.html"; - } - + @Override + public String doExport(HttpServletRequest request, HttpServletResponse response, String directoryName, + Cookie[] cookies) { + Long lessonId = WebUtil.readLongParam(request, AttributeNames.PARAM_LESSON_ID); + Long activityId = WebUtil.readLongParam(request, AttributeNames.PARAM_ACTIVITY_ID); -} + String basePath = WebUtil.getBaseServerURL() + request.getContextPath(); + writeResponseToFile(basePath + "/grouping.do?method=exportPortfolio&lessonID=" + lessonId + "&activityID=" + + activityId, directoryName, FILENAME, cookies); + return FILENAME; + } +} \ No newline at end of file Index: lams_learning/web/loadToolActivity.jsp =================================================================== diff -u -r606581007abbdaee5483777096f32ffac1c3e3eb -rb33e717f9a734d318eefab07a17234f07c770c92 --- lams_learning/web/loadToolActivity.jsp (.../loadToolActivity.jsp) (revision 606581007abbdaee5483777096f32ffac1c3e3eb) +++ lams_learning/web/loadToolActivity.jsp (.../loadToolActivity.jsp) (revision b33e717f9a734d318eefab07a17234f07c770c92) @@ -28,37 +28,25 @@ <%@ taglib uri="tags-fmt" prefix="fmt" %> <%@ taglib uri="tags-lams" prefix="lams" %> -<% -String protocol; -if(request.isSecure()){ - protocol = "https://"; -}else{ - protocol = "http://"; -} -String pathToRoot = protocol+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/"; - -%>