|
Original steps were somewhat convoluted, and are reproduced below.
See the next comment for a cleaner use case that has a similar but not identical result. Steps are: 1. Import WAR to RAD 6 using defaults for WAR import [9/21/06 13:11:55:122 EDT] 00000142 SystemErr R java.io.IOException: URI length is greater than Windows limit of 259 characters. C:\Program Files\IBM\Rational\SDP\6.0\runtimes\base_v6\profiles\RASMASDev\wstemp\10dd15c8615\workspace\cells\LS1257602DNode01Cell\applications\atlassian-bamboo-web-app-0_4EAR.ear\deployments\atlassian-bamboo-web-app-0_4EAR\atlassian-bamboo-web-app-0_4.war\META-INF\MANIFEST.MF 4. Attempt to resolve by shortening WAR name and context root. Application fails to start 5. Throw away web project and reimport WAR using old EAR as enclosure 6. Shorten URI by renaming Web Project only 7. Observe repeating call behaviour. See the attached document for a cleaner use case that imports with shorter names, working around the character length problem. The clean import also encounters problems at startup, although slightly different.
Gist of attachement is: 1. Import WAR to RAD, assigning shorter names at import The page isn't redirecting properly
Server log shows: [9/22/06 12:52:22:028 EDT] 00000028 WebGroup A SRVE0169I: Loading Web Module: Bamboo. Use case 2 screenshots, as summarized
Robert,
Sorry for the delay here. Looking at the "trace 2" and the code more closely, the problem seems to be from Websphere always returning a '' for request.getServletPath. We're currently trying to setup a Websphere 6 environment running Bamboo, to see if we can try to get it working. If you could possiby use the standalone zip version in the mean time, that'd be great. Thanks for your screenshots, by the way. Cheers, Mark C No problem using standalone ... figured on that, but wanted to be of
assistance with WS. I'll look into the servletPath issue from my end as well, as that's R. Robert,
Thanks for the help! I did manage to hunt down some code in WebWork that deals with differences in Servlet 2.2 & 2.3 for getServletPath. We'll try to use this code for 0.5 release as opposed to the standard getServletPath call. So you should be able to check it out in the 0.5 release. Cheers Mark C /**
* Retrieves the current request servlet path.
* Deals with differences between servlet specs (2.2 vs 2.3+)
*
* @param request the request
* @return the servlet path
*/
public static String getServletPath(HttpServletRequest request) {
String servletPath = request.getServletPath();
if (null != servletPath && !"".equals(servletPath)) {
return servletPath;
}
String requestUri = request.getRequestURI();
int startIndex = request.getContextPath().equals("") ? 0 : request.getContextPath().length();
int endIndex = request.getPathInfo() == null ? requestUri.length() : requestUri.lastIndexOf(request.getPathInfo());
if (startIndex > endIndex) { // this should not happen
endIndex = startIndex;
}
return requestUri.substring(startIndex, endIndex);
}
Hi Robert,
For 0.5 we've updated Bamboo with the Webwork code to hopefully resolve this issue. Thanks for reporting and let us know if you still run into any problems. Ben |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
I've tried reproducing the bug using Jetty but haven't had any luck.
Could you please outline the steps you took which led to the behaviour which generated trace 2?
Regards
Ben