Issue 74: Context Root
Status:  Fixed
Owner:
Closed:  Mar 2008
Cc:
Project Member Reported by a.hask...@gmail.com, Mar 5, 2008
What steps will reproduce the problem?
1. Install ColdFusion into something with a context root other than /
2. Run a test
3. View in EXT view

What is the expected output? 
 EXT output

What do you see instead?
 Errors...The path to all the EXT files is incorrect

What version of the product are you using? On what operating system?
0.9.86-rc1 OS is irrelevant

Please provide any additional information below.
FIX: Line 251 of TestResult.cfc (the method is getEXTResults and the
argument to edit is EXTRoot) add
#getPageContext().getRequest().getContextPath()#  to the default value. The
new default value will be
#getPageContext().getRequest().getContextPath()#/mxunit/resources/ext2

Questions & Concerns: a.haskell@gmail.com

For more information: 
http://cfrant.blogspot.com/2007/12/open-source-projects.html


 
Mar 12, 2008
Project Member #1 marc.es...@gmail.com
i'll take a look at this shortly.

Owner: marc.esher
Cc: virtix
Mar 12, 2008
Project Member #2 virtix
Check the source code. I thought I made the change and tested it. But possibly it was
not committed. 
Mar 13, 2008
Project Member #3 virtix
We should also look at this from installations not directly under webroot; e.g.,
;/mxunit/. There appears to be issues with ExtJS restults in these instances. 

Might be a good idea to call a service that knows where mxunit is installed and I'm
working on this, but we may need a workaround until then ...
Status: Accepted
Mar 13, 2008
Project Member #4 virtix
Bob C. also reports: "I found a couple other places where I had to adjust the path 
in order to get the extJS version to work in EXTTestResult.cfc. The javascripts and 
css files where not lining up correctly." And his install is on JBoss:
/home/jboss-4.0.5.GA/server/XXXXX/./deploy/cfusion.ear/cfusion.war/XXXX/XXXXX/mxunit/
Mar 13, 2008
Project Member #5 marc.es...@gmail.com
just so you know....

if you look at the ExtResult component, it has an argument for passing in the root.
it just defaults to /mxunit...

Now, maybe the thing to do is to simply have the TestResult.getResultsOutput(type)
take an extra set of params, and that function can pass them through to the various
results objects. so you'd do this:

<cfoutput>#result.getResultsOutput(type="extjs",extroot="/my/custom/root")</cfoutput>

So... the extresult already provides for this, it's just that the generic way of
getting results doesn't!  
Mar 13, 2008
Project Member #6 a.hask...@gmail.com
The original request was to fix the default so it would account for a context root.
The secondary request that now seems to be lumped in here is to automagically find
the correct path. I would view these as drastically different, the secondary being a
feature request the original being a bug fix. 

A different approach to the solution may be to evaluate the possibility of using
relative paths to include the CSS and javascript. 
Mar 13, 2008
Project Member #7 virtix
We gotchya covered. The scope creep is only implied. 
Mar 13, 2008
Project Member #8 virtix
I lied a little. The scope did creep. When I noticed that the extjs results failed
for nested directories I wrote some tests and code to attempt to determine the
install paths and component root; e.g., /foo/mxunit/framework/ or foo.mxunit or
whatever. I used the cfcproxy, which I hope will work in CF 6 ... Anyway, the code is
committed and available for further QA. I do feel confident it will work for J2EE
installs.
Status: In
Mar 13, 2008
Project Member #9 virtix
Actually, the CFCProxy was not used for this issue. Please disregard. However, I did
write some test for it in /tests/install/cfcproxytest.cfc. I am planning on trying to
use this for the installation verification page.
Mar 14, 2008
Project Member #10 virtix
New build is available and has this fix. tested only on woindows, but with cf8
multiserver config, which is a j2ee config, I believe. 0.9.88-rc1 [03/14/2008]
Status: Fixed