summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java
diff options
context:
space:
mode:
authorlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2010-02-26 00:58:02 +0000
committerlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2010-02-26 00:58:02 +0000
commitb4b2a2b6e802b48b2af5c597b7f99feabe2f29cb (patch)
tree8f8350726966fe1e4a848ec20ca9a7e076aa7c8f /sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java
parent78155c8d5c000c250c9cb5a8a816940666cd1261 (diff)
Properly handling contextRoot when retrieving dojo and extension resources
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@916514 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java')
-rw-r--r--sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoResourceServlet.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoResourceServlet.java b/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoResourceServlet.java
index 20c9fe4959..dad72be5f2 100644
--- a/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoResourceServlet.java
+++ b/sca-java-2.x/trunk/modules/web-javascript-dojo/src/main/java/org/apache/tuscany/sca/web/javascript/dojo/DojoResourceServlet.java
@@ -30,6 +30,7 @@ import javax.servlet.http.HttpServletResponse;
import org.apache.tuscany.sca.common.http.HTTPConstants;
import org.apache.tuscany.sca.common.http.HTTPContentTypeMapper;
+import org.apache.tuscany.sca.common.http.HTTPUtil;
/**
@@ -46,14 +47,18 @@ public class DojoResourceServlet extends HttpServlet {
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
+ String contextRoot = URLDecoder.decode(HTTPUtil.getContextRoot(request), HTTPConstants.CHARACTER_ENCODING_UTF8);
String path = URLDecoder.decode(request.getRequestURI(), HTTPConstants.CHARACTER_ENCODING_UTF8);
- if( path.startsWith("/dojo") ) {
+ if( path.startsWith(contextRoot + "/dojo") ) {
if( ! path.contains("tuscany/AtomService.js")) {
//this is a workaround where we need to have dojo files in its own folder
//to avoid clean target to clean other non dojo resources
+ path = path.substring(contextRoot.length());
path = "/dojo" + path;
}
+ } else if (path.startsWith(contextRoot)) {
+ path = path.substring(contextRoot.length() + 1);
} else if( path.startsWith("/")) {
path = path.substring(1);
}