I just downloaded the nightly build and receive this exception when
attempting to start my test....


java.lang.NullPointerException
        at org.apache.oro.text.regex.Perl5Matcher.contains(Unknown
Source)
        at org.apache.oro.text.regex.Util.substitute(Unknown Source)
        at org.apache.oro.text.regex.Util.substitute(Unknown Source)
        at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.encodeSpaces(HTTP
Sampler.java:308)
        at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.setEncodedPath(HT
TPSampler.java:300)
        at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.setProperty(HTTPS
ampler.java:328)
        at
org.apache.jmeter.engine.util.ValueReplacer.setProperties(ValueReplac
er.java:120)
        at
org.apache.jmeter.engine.util.ValueReplacer.replaceValues(ValueReplac
er.java:111)
        at
org.apache.jmeter.engine.PreCompiler.addNode(PreCompiler.java:102)
        at
org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:10
34)
        at
org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:10
35)
        at
org.apache.jorphan.collections.HashTree.traverse(HashTree.java:1020)
        at
org.apache.jmeter.engine.StandardJMeterEngine.compileTree(StandardJMe
terEngine.java:132)
        at
org.apache.jmeter.engine.StandardJMeterEngine.run(StandardJMeterEngin
e.java:278)
        at java.lang.Thread.run(Thread.java:536)


This does not happen with the build from 02/03/04...

-shawn

-----Original Message-----
From: Jordi Salvat i Alabart [mailto:[EMAIL PROTECTED] 
Sent: Monday, February 09, 2004 10:19 AM
To: JMeter Users List
Subject: Re: JMeter from time to time doesn't calculate regular
expressions for some threads

Just found the bug just by inspection. My apologies: my earlier review 
was incorrect. I'll fix it now. You'll need to download a nightly or 
(better, given your experience with nightlies) build from CVS. Or, of 
course, wait for the next release, which should happen sooner than
later.

-- 
Salut,

Jordi.

Vladimir Tsygankov wrote:
> Hello, colleagues,
> I'm returning to the problem of "Regular expression problem for many
> threads".
> Maybe that problem has been already fixed but we could not check that.
> Unfortunately nightly builds don't work for now (they even can't
perform
> any request from my tests) - we tried 4 last builds (02/05/2004 -
> 02/08/2004).
> 
> Therefore we tried to clear out what was the problem under release of
> JMeter 1.9.1 (08/17/2003). 
> As we understand regular expression function is called from JMeter
> program but doesn't find necessary string on correct server page for
> some threads. The most terrible is that happens occasionally (for any
> thread. Sometimes it doesn't happen at all).
> 
> Attached file contains more information about texts of requests and
> answers for them which we copied from JMeter's "View Result Tree"
> element. We saved it for "bad" and "good" thread.
> 
> Could you help us please?
> Thanks in advance,
> Vladimir
> 
> 
>>-----Original Message-----
>>From: Jordi Salvat i Alabart [mailto:[EMAIL PROTECTED]
>>Sent: Thursday, February 05, 2004 1:05 PM
>>To: JMeter Users List
>>Subject: Re: JMeter from time to time doesn't calculate regular
>>expressions for some threads
>>
>>Hi Shawn.
>>
>>There was a bug (long since fixed) that may cause this effect. Which
>>version are you using? Could you try a nightly build?
>>
>>--
>>Salut,
>>
>>Jordi.
>>
>>En/na Shawn Elliott ha escrit:
>>
>>>I too have had problems with the regular expression not picking up
>>>matches.  I have closely inspected the response page and it should
> 
> have
> 
>>>picked it up.  Though I have not logged it out to a file to see
> 
> exactly
> 
>>>what it is picking up. (Will do that today)
>>>
>>>Another piece of information is that the regular expression seems to
> 
> not
> 
>>>match correctly at a higher rate when I have a single thread that is
>>>looping, opposed to multiple threads not looping.
>>>
>>>Furthermore I have 4 thread groups each running a regular
> 
> expression...
> 
>>>Example
>>>Thread Grp 1: NumofThreads=1, Loop=10
>>>Thread Grp 2: NumofThreads=1, Loop=10
>>>Thread Grp 3: NumofThreads=1, Loop=10
>>>Thread Grp 4: NumofThreads=1, Loop=10
>>>
>>>Results in the regular expression not matching anything, more than
> 
> the
> 
>>>following scenario
>>>
>>>Thread Grp 1: NumofThreads=10, Loop=1
>>>Thread Grp 2: NumofThreads=10, Loop=1
>>>Thread Grp 3: NumofThreads=10, Loop=1
>>>Thread Grp 4: NumofThreads=10, Loop=1
>>>
>>>....  writing this email just made me think of something...
>>>Each regular expression is saving its result to a variable defined
> 
> in
> 
>>>the 'User Parameters'  is this parameter shared between all the
>>>threads??  There for the expression is just over writing the other
>>>threads value??
>>>
>>>
>>>-shawn
>>>
>>>-----Original Message-----
>>>From: Craig Palmer [mailto:[EMAIL PROTECTED]
>>>Sent: Wednesday, February 04, 2004 11:47 AM
>>>To: JMeter Users List
>>>Subject: Re: JMeter from time to time doesn't calculate regular
>>>expressions for some threads
>>>
>>>It is very difficult to diagnose what appears to be a transient
> 
> issue,
> 
>>>let alone fix it. I think I can guarantee that Jmeter does NOT have
> 
> a
> 
>>>setting/configuration that introduces random problems to occur at
>>>random times.
>>>
>>>In every case that I have found the regular expression not working,
> 
> I
> 
>>>have looked carefully at the content and found my mistake every
> 
> time.
> 
>>>I would bet that it isnt finding a match because there is no match.
>>>
>>>What you need to do is put a 'View Results Tree' on the http sampler
>>>that you want to match the regular expression and run the test
> 
> cycle.
> 
>>>When the "mis-match" occurs (the listener will keep a full history
> 
> of
> 
>>>all the pages fetched"), copy the Result Data to a file and then run
>>>the exact same regular expression over it using Perl 5.003. The same
>>>thing should happen.
>>>
>>>If the regular expression works in Perl, then there is cause to
>>>investigate to the next level. If it doesnt, then either the page
>>>content is not what you are expecting, or you need to revise your
>>>regular expression.
>>>
>>>BTW, I say Perl 5.003 becuase this is the equivalent regular
>>>expression engine that Jmeter uses. If you are not too familiar with
>>>Perl, then here is an example program to give you a jump start
>>>assuming that you saved the page content as "page.html":
>>>
>>>#!/usr/bin/perl
>>>
>>># open file for reading
>>>open(IN, "page.html") || die "unable to open file";
>>>
>>># Run through each line looking to match the regular expression
>>># Note that if you use brackets (), the the results will be found
>>># in $1, $2 etc. E.g. $Line =~ /contentId=(\d+)/ then you could
>>># write in the if statement $contentId = $1;
>>>while($Line = <IN>) {
>>>   if($Line =~ /<reg exp here>/) {
>>>     print "Found Match!";
>>>}
>>>
>>>close(IN);
>>>
>>>
>>>
>>>Vladimir Tsygankov wrote:
>>>
>>>
>>>>Hello, friends!
>>>>We noticed that JMeter from time to time doesn't calculate regular
>>>>expressions in requests for some threads (our test has 20 threads).
>>>>As a result we receive Exceptions from the server instead of correct
>>>>responses. We tried almost everything: increasing of Ramp-Up period,
>>>>time delay between requests, priority of java etc. It doesn't help.
>>>>We'd like to have a guarantee that a regular expression has been
>>>>calculated before a request is sent.
>>>>Is there any settings for JMeter or for script to fix the problem?
>>>>Thanks in advance,
>>>>Vladimir
>>>>
>>>>
>>
>>>---------------------------------------------------------------------
>>>
>>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>For additional commands, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>
>>>
>>>
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: [EMAIL PROTECTED]
>>For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 
> 
>
------------------------------------------------------------------------
> 
>  General information about these test results.
> 
> Test has 20 threads. Regular expression had not been calculated for
"QuestionID" field in 8-th thread only.
> Every thread sent some requests (R1, R2, ..., R13, R14, ...). 
> 
> That file contains the next requests and answers for treads 8
(collectAllMatches.size() = 0) and 9 (collectAllMatches.size() > 0):
> R13, answer for R13 and R14. We copied that requests and answers for
them from JMeter's "View Result Tree" element.
> 
> Regular expressions used in requsts R14 are:
> DuestionID = ${__regexFunction(<INPUT TYPE="HIDDEN" NAME="QuestionID"
value="(.*)">,$1$,1,,,refQuestionID5)}
> ItemSelect = ${refQuestionID5_g1}
> 
> Our opinion: 
> We even inserted debug code in class "RegexFunction" and saw that
method "execute" has been called when it should be 
> but occasionally for some threads it couldn't find nesessary string on
correct html page.
> 
>
************************************************************************
**************
>
************************************************************************
**************
>  Thread #8
>  ID = nDBalr...
>  R13
> 
> http://test.athenium.com/teamthink/rqa1/teamthink
> Query Data:
PageHandler=Home.IMBrokers.EIMBroker&performAction=submitItem&QuestionID
=50&origItemsStored=1&IsProcessData=1&Title=&submitMCMAAnswerAnyway=&ite
mSelect=50&rationaleText=r&messageIDToDelete=&newMessage=c&SessionID=nDB
alrZWDgaD0EMl1o2OYNOrHg2CLJKqoRVXLGCkfJmiqnVpUZFGcRmSnocaUZcqKJBXci
> Cookie Data:
> null
>
************************************************************************
**************
>  Thread #8
>  ID = nDBalr...
>  Answer R13
> 
> HTTP/1.1 200 null
> Date: Fri, 06 Feb 2004 19:45:40 GMT
> Server: Apache/1.3.26 (Unix) Debian GNU/Linux mod_jk/1.1.0 PHP/4.1.2
mod_ssl/2.8.9 OpenSSL/0.9.6g mod_perl/1.26 DAV/1.0.3
> Keep-Alive: timeout=15, max=100
> Connection: Keep-Alive
> Content-Type: text/html; charset=iso-8859-1
> 
> <!-- this template holds all the different ItemMachine Views -->
> 
> <SCRIPT LANGUAGE="JAVASCRIPT">
> 
>                                                      
> 
> var somethingChanged = false;
>                                                      
> function setSomethingChanged(){
> 
>    somethingChanged = true;
> 
> }
> 
> 
> function storeOriginalForm() {
> 
>   document.IMForm.origItemsStored.value = "1";
> }
> 
> 
> function resetAnswer(){
> 
> 
> }
> 
> 
> //this function return true if the user wants the form data to be
processes, otherwise false..
> function determineProcessData() {
> 
>       if (document.IMForm.origItemsStored.value != "1") {
>               return false;
>       }
>       
>    if (somethingChanged) {
>               var agree=confirm("Click OK to Submit your changes to
this page, or Cancel to forget them.");
>       } else {
>               document.IMForm.IsProcessData.value = 0;
>               return true;
>       }
>       if (agree) {
>               document.IMForm.IsProcessData.value = 1;
>               return true;
>       } else {
>               document.IMForm.IsProcessData.value = 0;
>               return true;
>       }
> }
> 
> 
> 
> 
> function submitItem(){
>    
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="submitItem";
>    document.IMForm.submit();
> 
> }
> 
> function selectItem(){
>    if (determineProcessData()){                              
>       document.IMForm.performAction.value="useItemSelect";
>       document.IMForm.submit();
>    }
> }
> 
> 
> function addItem(){
>    document.IMForm.IsProcessData.value = "1";
>    document.IMForm.performAction.value="addItem";
>    document.IMForm.submit();
> }
> 
> 
> function deleteItem(){
> 
>    okToDelete = confirm("Are you sure you want to delete this
question?  This cannot be undone.");
>    if(!okToDelete){
>       return;
>    }
> 
>    document.IMForm.IsProcessData.value = "1";
>    document.IMForm.performAction.value="deleteItem";
>    document.IMForm.submit();
> }
> 
> 
> function addAnswerFoil(){
>    
>    document.IMForm.IsProcessData.value = "1";
>    document.IMForm.performAction.value="addFoil";
>    document.IMForm.submit();
> }
> 
> 
> function changeCat(){
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeCat";
>    document.IMForm.submit();
> }
> 
> 
> function changeClassif(){
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeClassif";
>    document.IMForm.submit();
> }
> 
> function changeQuesType(){
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeQuesType";
>    document.IMForm.submit();
> }
> 
> 
> function deleteFoil(foilToDelete){
>    
>    okToDelete = confirm("Are you sure you want to delete this answer?
This cannot be undone.");
>    if(!okToDelete){
>       return;
>    }
>    
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.foilToDelete.value= foilToDelete;
>    document.IMForm.performAction.value="deleteMCFoil";
>    document.IMForm.submit();
> }
> 
> 
> //unchecks the checked radio button
> function clearAnswers(){
>    
>    for(i=0; i < document.IMForm.MCFoil.length; i++){
>       if(document.IMForm.MCFoil[i].checked){
>          document.IMForm.MCFoil[i].checked = false;
>       }
>    }
>    setSomethingChanged();
> }
> 
> 
> function useFeedbackClicked(){
>    
>    var okToToggle = true;
> 
>    if(!document.IMForm.useFeedback.checked){
>       okToToggle =confirm("If you chose not to use the feedback text,
the feedback texts will be deleted.  This cannot be undone.  Are you
sure you want to do this?");
>    }
> 
>    if(okToToggle){
>       document.IMForm.IsProcessData.value = 1;
>       document.IMForm.performAction.value="toggleUseFeedback";
>       document.IMForm.submit();
>    }else{
>       //return checkbox to its original state
>       document.IMForm.useFeedback.checked = true;
>       return;
>    }
> 
> }
> 
> function clearNACheck(){
>    //do nada
> }
> 
> 
> </script>
> 
> 
> 
> <script>
> var headerTitle = "Author Answers";
> if (parent.header != null && parent.header.updateBannerText != null)
parent.header.updateBannerText(headerTitle);
> 
> 
> function changeRuleShow(){
> 
>    //we still want to process and changed form stuff, so process the
data      
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeRuleShow";
>    document.IMForm.submit();
> }
> 
> function changeTypeRuleShow(whichRuleType){
> 
>    //we still want to process and changed form stuff, so process the
data      
>    document.IMForm.IsProcessData.value = 1;
> 
>    var performActionString;
> 
>    if (whichRuleType == 0) {
>       performActionString = "changeQuestionRuleShow";
>    } else if (whichRuleType == 1) {
>       performActionString = "changeTaxonomyRuleShow";
>    }if (whichRuleType == 2) {
>       performActionString = "changeQuestionSetRuleShow";
>    }
> 
>    document.IMForm.performAction.value=performActionString;
>    document.IMForm.submit();
> }
> 
> function okToNav(){
> 
>  if(somethingChanged != null && somethingChanged){
>   okToNav = confirm("If you would like to save your changes click
\'cancel\' and submit.  Otherwise, click \'OK\' to return without saving
your changes");
> 
>   if(okToNav){
>       return true;
>   }else{
>       return false;
>   }
>  }else{
>   return true;
>  }
>               
> }
> 
> 
> //used for rapid random question filling in for QA purposes.  Will
call the method QAfillInQuestionFields() that is written for each
question type
> //fill in the mesage field and submit.
> 
> function fillInQA(){
> 
>    if(usingQAFillIn  != null){
>       QAfillInQuestionFields();
>    }
> 
>       if(document.IMForm.newMessage != null){
>               document.IMForm.newMessage.value = "THis is a QA comment
for question 4";
>       }
>     
>       submitItem();
> }
> 
> 
> function getRandom(min,max)
> {
>    return (Math.round(Math.random()*(max-min)))+min;
> }
> 
> function flipDV(version) {
>   document.IMForm.FlipDV.value=version;
>   document.IMForm.submit();
> }
> 
> </script>
> 
> 
> 
> <body bgcolor="#FFFFFF"  onLoad="storeOriginalForm();" LINK="BLUE"
VLINK="BLUE" ALINK="BLUE" >
> 
> <form name="IMForm"
ACTION="/teamthink/rqa1/teamthink?SessionID=nDBalrZWDgaD0EMl1o2OYNOrHg2C
LJKqoRVXLGCkfJmiqnVpUZFGcRmSnocaUZcqKJBXci" METHOD="POST"  ONSUBMIT="if
(this.submitted) return true; else return false;">
>       <input type=hidden name="SessionID"
value="nDBalrZWDgaD0EMl1o2OYNOrHg2CLJKqoRVXLGCkfJmiqnVpUZFGcRmSnocaUZcqK
JBXci"> <input type="hidden" name="PageHandler"
value="Home.IMBrokers.EIMBroker">
> 
>       <INPUT TYPE="HIDDEN" NAME="performAction" value="">
>       <INPUT TYPE="HIDDEN" NAME="QuestionID" value="49">
>       <INPUT TYPE="HIDDEN" NAME="origItemsStored" value="0">
>       <INPUT TYPE="HIDDEN" NAME="IsProcessData" value="0">
>       <INPUT TYPE="HIDDEN" NAME="Title" value="">
>       <INPUT TYPE="HIDDEN" NAME="FlipDV" value="">
>    
>     
>       <A href="javascript:fillInQA();"><IMG
SRC="/teamthink/rqa1/images/clearpixel.gif" BORDER="0" WIDTH="10"
HEIGHT="10"></A>
>        
>       <center>
>               <BR>
> 
>               
> 
>               <table border="0" width="650" cellspacing="0"
cellpadding="0" >
>                       <tr>
>                               <td><script>
> 
> var windowReference;
> function openViewResponsePopup(){
>    windowReference =
window.open('/teamthink/rqa1/teamthink?SessionID=nDBalrZWDgaD0EMl1o2OYNO
rHg2CLJKqoRVXLGCkfJmiqnVpUZFGcRmSnocaUZcqKJBXci&PageHandler=Home.IMBroke
rs.UserResponsesQuestionBroker&QuestionID=49', 'ViewUserResponses',
'resizable=yes,scrollbars=yes,height=400,width=650');
>    if (!windowReference.opener){
>        windowReference.opener = self;
>    }
> }
> 
> 
> </script>
> <TABLE border="0" cellSpacing="0" width="100%" cellpadding="3">
>      <TR>
>         <td valign="middle" align="left" >
>             <font face="Arial"><b><font size="2">Question:</font></b>
>             <SELECT NAME="itemSelect" ONCHANGE="selectItem()"><option
value="52" >1 *</option>
> <option value="51" >2</option>
> <option value="50" >3</option>
> <option value="49"  selected >4 *</option>
> <option value="48" >5 *</option>
> <option value="47" >6 *</option>
> <option value="46" >7 *</option>
> <option value="45" >8 *</option>
> <option value="44" >9 *</option>
> <option value="43" >10 *</option>
> <option value="42" >11 *</option>
> <option value="41" >12 *</option>
> <option value="40" >13 *</option>
> <option value="39" >14 *</option>
> <option value="38" >15 *</option>
> <option value="37" >16 *</option>
> <option value="36" >17 *</option>
> <option value="35" >18 *</option>
> <option value="34" >19 *</option>
> </SELECT>
>             </font>
>             </td>
>         <td align="right" >&nbsp;<FONT
>         face="Arial"><SMALL><STRONG>Type:</STRONG>
>         MC   </SMALL></FONT></td>
> <TD align="center"  WIDTH="33%" >
>               
>                       
>             <font face="Arial"> <SMALL><A href="#"
onClick="openViewResponsePopup()">Team Response</A> </SMALL></font>
>                       
>                       
>                       &nbsp;
>                       
> 
>                       </font></td>
>                       
>     </tr>
> </table>
> 
> </td>
>                       </tr>
>                       <TR>
>                               <td>
>                                       <table border="0"
cellSpacing="0" width="100%" cellpadding="3" >
> 
>                                               <TR>
>     <TD>
>         <TABLE BORDER="0" CELLSPACING="0" WIDTH="100%">
>            
>             <TR>
>     <TD>
>         <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
>             <tr>
>                 <td width="21" bgcolor="#E1E0C2" >&nbsp;</td>
>                 <td  bgcolor="#E1E0C2" WIDTH="100%" ><font
face="Arial" size="3">MC</font></td>
>             </tr>
>         </TABLE>
>     </TD>
> </TR>
> 
> 
>             <TR>
>   <TD> 
>          <INPUT TYPE="HIDDEN" NAME="foilToDelete" value="">
>        <table border="0" cellspacing="2" cellpadding="0"  width="100%"
bgcolor="#FFFFFF">
>            
>            <TR bgcolor="#E1E0C2" >
>     <TD COLSPAN="3" >
>         <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
>             <TR>
>                 <TD align="LEFT">
>                                       <font face="Arial"
><SMALL><STRONG>&nbsp; &nbsp; &nbsp; Select Answer </STRONG></font></TD>
>                           
>                                                 </TR>
>         </TABLE>
>               </TD>
> </TR>
> 
> 
> 
>              
>                  <tr BGCOLOR="#E1E1E1">
>     <td width="21" ><font face="Arial" size="2">&nbsp;A)</font></td>
>     <td width="591"><font face="Arial" size="2">a</font></td>
>     <td width="22" align="middle"  height="18">
>         <INPUT VALUE="A" NAME="MCFoil" TYPE="radio"
ONCLICK="clearNACheck(); setSomethingChanged()" >
>     </td>
> </tr>
> 
>   
> 
> <tr BGCOLOR="#FFFFFF">
>     <td width="21" ><font face="Arial" size="2">&nbsp;B)</font></td>
>     <td width="591"><font face="Arial" size="2">b</font></td>
>     <td width="22" align="middle"  height="18">
>         <INPUT VALUE="B" NAME="MCFoil" TYPE="radio"
ONCLICK="clearNACheck(); setSomethingChanged()" >
>     </td>
> </tr>
> 
>   
> 
> <tr>
>     <td colspan="2" ALIGN="CENTER">
>                                                        
>       
>       </td>
>     
>     <td   align="center" >
>       
>         <font size="1" face="Arial"> <A
href="javascript:clearAnswers(); ">clear</A></font>
>     
>       
>       
>       </td>
> </tr>
> 
> 
>                                                
>                </table>
>    </TD>
> </TR>
> 
> 
>             
> <TR bgcolor="#E1E0C2" >
>     <TD><font face="Arial" ><SMALL><STRONG>&nbsp; &nbsp; &nbsp;  Enter
Rationale: 
>     </STRONG> <small>(optional)</SMALL></SMALL></font></TD>
> 
> </TR>
> 
> <TR>
>     <TD vAlign="top" ALIGN="CENTER">
>         <table border="0" cellSpacing="0" width="100%" cellpadding="0"
bgcolor="#FFFFFF">
>             <tr>
>                 <td width="100%" ALIGN="CENTER"><TEXTAREA
NAME="rationaleText"cols="60" rows= "3" WRAP="VIRTUAL"
ONCHANGE="setSomethingChanged()" style="width: 100%;"></TEXTAREA>
>                 <td>
>             </tr>
>         </table>
>     </TD>
> </TR>
> 
>             
>                       
>                       
> 
>         </TABLE>
> 
>     </TD>
> </TR>
> 
> 
>                                               
>

>                                               
> 
>                                               
>

>                                               
>                                               
>                                               
> <TR>
>       <TD>
> 
>               <table width="100%">
>                       <script language="JavaScript">
>             <!--
>             var windowReference;
> 
>             function openPopup(messageID) {
>                windowReference =
window.open('/teamthink/rqa1/teamthink?SessionID=nDBalrZWDgaD0EMl1o2OYNO
rHg2CLJKqoRVXLGCkfJmiqnVpUZFGcRmSnocaUZcqKJBXci&PageHandler=MessageEdito
r&messageID='+ messageID, 'messageEditor',
'height=300,width=600,resizable=yes');
>                if (!windowReference.opener)
>                   windowReference.opener = self;
>             }
>             //-->
>                       </script>
> 
> 
>                       <INPUT TYPE="hidden" NAME="messageIDToDelete"
value="">
> 
>                       
> 
>                        
>                       
>               </table>
> 
>       </TD>
> </TR>
> <TR>
>       <TD>
>               <table width="100%">
>                       <tr width="100%">
>                               <td bgcolor="#E1E0C2" width="100%"><font
face="arial"><STRONG><SMALL> &nbsp; &nbsp;&nbsp;  Add a
Comment:</SMALL></STRONG> </FONT></td>
>                       </tr>
>                       <tr>
>                               <td ALIGN="CENTER"><textarea cols="60"
rows="3" name="newMessage" WRAP="VIRTUAL" style="width: 100%;"
ONCHANGE="setSomethingChanged();" TABINDEX="1000"></textarea></td>
>                       </tr>
>               </table>
> 
>       </TD>
> </TR>
> 
> 
>                                               
> <tr>
>     <td  ALIGN="RIGHT">
>                
>           
>               
>               <input name="IMSubmitButton" type="button"
value="Submit" onclick="submitItem();" TABINDEX="2000">
>                
>                
>         
>          
>                                                       
>        
>       
> 
>  <br>
>     </td>
>    
> </tr>
> 
> 
> 
>                                       </table>
>                               </td>

>                       </tr>
>               </table>
>       </CENTER>
> </form>
> </BODY>
>
************************************************************************
**************
>  Thread #8
>  R14
>  ID = NDBalr...
> 
>  !!! Incorrect request (regular expressions have not been calculated
for "QuestionID")
> 
> http://test.athenium.com/teamthink/rqa1/teamthink
> Query Data:
PageHandler=Home.IMBrokers.EIMBroker&performAction=submitItem&QuestionID
=&origItemsStored=1&IsProcessData=1&Title=&submitMCMAAnswerAnyway=&itemS
elect=${refQuestionID5_g1}&foilToDelete=&MCFoil=A&rationaleText=r&messag
eIDToDelete=&newMessage=c&SessionID=nDBalrZWDgaD0EMl1o2OYNOrHg2CLJKqoRVX
LGCkfJmiqnVpUZFGcRmSnocaUZcqKJBXci
> Cookie Data:
> null
> 
>
************************************************************************
**************
>  Thread #9
>  Correct request:
>  R13
>  ID = kWO2...
> 
> http://test.athenium.com/teamthink/rqa1/teamthink
> Query Data:
PageHandler=Home.IMBrokers.EIMBroker&performAction=submitItem&QuestionID
=50&origItemsStored=1&IsProcessData=1&Title=&submitMCMAAnswerAnyway=&ite
mSelect=50&rationaleText=r&messageIDToDelete=&newMessage=c&SessionID=kWO
2YEOgF1VQMRUkH2rRJK2eJ2CYGVhFWaZHZVji0mREQIA0WOmZMXXUScA
> Cookie Data:
> null
> 
>
************************************************************************
**************
>  Thread #9
>  Answer R13:
> 
> HTTP/1.1 200 null
> Date: Fri, 06 Feb 2004 19:45:51 GMT
> Server: Apache/1.3.26 (Unix) Debian GNU/Linux mod_jk/1.1.0 PHP/4.1.2
mod_ssl/2.8.9 OpenSSL/0.9.6g mod_perl/1.26 DAV/1.0.3
> Keep-Alive: timeout=15, max=79
> Connection: Keep-Alive
> Content-Type: text/html; charset=iso-8859-1
> 
> <!-- this template holds all the different ItemMachine Views -->
> 
> <SCRIPT LANGUAGE="JAVASCRIPT">
> 
>                                                      
> 
> var somethingChanged = false;
>                                                      
> function setSomethingChanged(){
> 
>    somethingChanged = true;
> 
> }
> 
> 
> function storeOriginalForm() {
> 
>   document.IMForm.origItemsStored.value = "1";
> }
> 
> 
> function resetAnswer(){
> 
> 
> }
> 
> 
> //this function return true if the user wants the form data to be
processes, otherwise false..
> function determineProcessData() {
> 
>       if (document.IMForm.origItemsStored.value != "1") {
>               return false;
>       }
>       
>    if (somethingChanged) {
>               var agree=confirm("Click OK to Submit your changes to
this page, or Cancel to forget them.");
>       } else {
>               document.IMForm.IsProcessData.value = 0;
>               return true;
>       }
>       if (agree) {
>               document.IMForm.IsProcessData.value = 1;
>               return true;
>       } else {
>               document.IMForm.IsProcessData.value = 0;
>               return true;
>       }
> }
> 
> 
> 
> 
> function submitItem(){
>    
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="submitItem";
>    document.IMForm.submit();
> 
> }
> 
> function selectItem(){
>    if (determineProcessData()){                              
>       document.IMForm.performAction.value="useItemSelect";
>       document.IMForm.submit();
>    }
> }
> 
> 
> function addItem(){
>    document.IMForm.IsProcessData.value = "1";
>    document.IMForm.performAction.value="addItem";
>    document.IMForm.submit();
> }
> 
> 
> function deleteItem(){
> 
>    okToDelete = confirm("Are you sure you want to delete this
question?  This cannot be undone.");
>    if(!okToDelete){
>       return;
>    }
> 
>    document.IMForm.IsProcessData.value = "1";
>    document.IMForm.performAction.value="deleteItem";
>    document.IMForm.submit();
> }
> 
> 
> function addAnswerFoil(){
>    
>    document.IMForm.IsProcessData.value = "1";
>    document.IMForm.performAction.value="addFoil";
>    document.IMForm.submit();
> }
> 
> 
> function changeCat(){
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeCat";
>    document.IMForm.submit();
> }
> 
> 
> function changeClassif(){
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeClassif";
>    document.IMForm.submit();
> }
> 
> function changeQuesType(){
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeQuesType";
>    document.IMForm.submit();
> }
> 
> 
> function deleteFoil(foilToDelete){
>    
>    okToDelete = confirm("Are you sure you want to delete this answer?
This cannot be undone.");
>    if(!okToDelete){
>       return;
>    }
>    
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.foilToDelete.value= foilToDelete;
>    document.IMForm.performAction.value="deleteMCFoil";
>    document.IMForm.submit();
> }
> 
> 
> //unchecks the checked radio button
> function clearAnswers(){
>    
>    for(i=0; i < document.IMForm.MCFoil.length; i++){
>       if(document.IMForm.MCFoil[i].checked){
>          document.IMForm.MCFoil[i].checked = false;
>       }
>    }
>    setSomethingChanged();
> }
> 
> 
> function useFeedbackClicked(){
>    
>    var okToToggle = true;
> 
>    if(!document.IMForm.useFeedback.checked){
>       okToToggle =confirm("If you chose not to use the feedback text,
the feedback texts will be deleted.  This cannot be undone.  Are you
sure you want to do this?");
>    }
> 
>    if(okToToggle){
>       document.IMForm.IsProcessData.value = 1;
>       document.IMForm.performAction.value="toggleUseFeedback";
>       document.IMForm.submit();
>    }else{
>       //return checkbox to its original state
>       document.IMForm.useFeedback.checked = true;
>       return;
>    }
> 
> }
> 
> function clearNACheck(){
>    //do nada
> }
> 
> 
> </script>
> 
> 
> 
> <script>
> var headerTitle = "Author Answers";
> if (parent.header != null && parent.header.updateBannerText != null)
parent.header.updateBannerText(headerTitle);
> 
> 
> function changeRuleShow(){
> 
>    //we still want to process and changed form stuff, so process the
data      
>    document.IMForm.IsProcessData.value = 1;
>    document.IMForm.performAction.value="changeRuleShow";
>    document.IMForm.submit();
> }
> 
> function changeTypeRuleShow(whichRuleType){
> 
>    //we still want to process and changed form stuff, so process the
data      
>    document.IMForm.IsProcessData.value = 1;
> 
>    var performActionString;
> 
>    if (whichRuleType == 0) {
>       performActionString = "changeQuestionRuleShow";
>    } else if (whichRuleType == 1) {
>       performActionString = "changeTaxonomyRuleShow";
>    }if (whichRuleType == 2) {
>       performActionString = "changeQuestionSetRuleShow";
>    }
> 
>    document.IMForm.performAction.value=performActionString;
>    document.IMForm.submit();
> }
> 
> function okToNav(){
> 
>  if(somethingChanged != null && somethingChanged){
>   okToNav = confirm("If you would like to save your changes click
\'cancel\' and submit.  Otherwise, click \'OK\' to return without saving
your changes");
> 
>   if(okToNav){
>       return true;
>   }else{
>       return false;
>   }
>  }else{
>   return true;
>  }
>               
> }
> 
> 
> //used for rapid random question filling in for QA purposes.  Will
call the method QAfillInQuestionFields() that is written for each
question type
> //fill in the mesage field and submit.
> 
> function fillInQA(){
> 
>    if(usingQAFillIn  != null){
>       QAfillInQuestionFields();
>    }
> 
>       if(document.IMForm.newMessage != null){
>               document.IMForm.newMessage.value = "THis is a QA comment
for question 4";
>       }
>     
>       submitItem();
> }
> 
> 
> function getRandom(min,max)
> {
>    return (Math.round(Math.random()*(max-min)))+min;
> }
> 
> function flipDV(version) {
>   document.IMForm.FlipDV.value=version;
>   document.IMForm.submit();
> }
> 
> </script>
> 
> 
> 
> <body bgcolor="#FFFFFF"  onLoad="storeOriginalForm();" LINK="BLUE"
VLINK="BLUE" ALINK="BLUE" >
> 
> <form name="IMForm"
ACTION="/teamthink/rqa1/teamthink?SessionID=kWO2YEOgF1VQMRUkH2rRJK2eJ2CY
GVhFWaZHZVji0mREQIA0WOmZMXXUScA" METHOD="POST"  ONSUBMIT="if
(this.submitted) return true; else return false;">
>       <input type=hidden name="SessionID"
value="kWO2YEOgF1VQMRUkH2rRJK2eJ2CYGVhFWaZHZVji0mREQIA0WOmZMXXUScA">
<input type="hidden" name="PageHandler"
value="Home.IMBrokers.EIMBroker">
> 
>       <INPUT TYPE="HIDDEN" NAME="performAction" value="">
>       <INPUT TYPE="HIDDEN" NAME="QuestionID" value="49">
>       <INPUT TYPE="HIDDEN" NAME="origItemsStored" value="0">
>       <INPUT TYPE="HIDDEN" NAME="IsProcessData" value="0">
>       <INPUT TYPE="HIDDEN" NAME="Title" value="">
>       <INPUT TYPE="HIDDEN" NAME="FlipDV" value="">
>    
>     
>       <A href="javascript:fillInQA();"><IMG
SRC="/teamthink/rqa1/images/clearpixel.gif" BORDER="0" WIDTH="10"
HEIGHT="10"></A>
>        
>       <center>
>               <BR>
> 
>               
> 
>               <table border="0" width="650" cellspacing="0"
cellpadding="0" >
>                       <tr>
>                               <td><script>
> 
> var windowReference;
> function openViewResponsePopup(){
>    windowReference =
window.open('/teamthink/rqa1/teamthink?SessionID=kWO2YEOgF1VQMRUkH2rRJK2
eJ2CYGVhFWaZHZVji0mREQIA0WOmZMXXUScA&PageHandler=Home.IMBrokers.UserResp
onsesQuestionBroker&QuestionID=49', 'ViewUserResponses',
'resizable=yes,scrollbars=yes,height=400,width=650');
>    if (!windowReference.opener){
>        windowReference.opener = self;
>    }
> }
> 
> 
> </script>
> <TABLE border="0" cellSpacing="0" width="100%" cellpadding="3">
>      <TR>
>         <td valign="middle" align="left" >
>             <font face="Arial"><b><font size="2">Question:</font></b>
>             <SELECT NAME="itemSelect" ONCHANGE="selectItem()"><option
value="52" >1 *</option>
> <option value="51" >2</option>
> <option value="50" >3</option>
> <option value="49"  selected >4 *</option>
> <option value="48" >5 *</option>
> <option value="47" >6 *</option>
> <option value="46" >7 *</option>
> <option value="45" >8 *</option>
> <option value="44" >9 *</option>
> <option value="43" >10 *</option>
> <option value="42" >11 *</option>
> <option value="41" >12 *</option>
> <option value="40" >13 *</option>
> <option value="39" >14 *</option>
> <option value="38" >15 *</option>
> <option value="37" >16 *</option>
> <option value="36" >17 *</option>
> <option value="35" >18 *</option>
> <option value="34" >19 *</option>
> </SELECT>
>             </font>
>             </td>
>         <td align="right" >&nbsp;<FONT
>         face="Arial"><SMALL><STRONG>Type:</STRONG>
>         MC   </SMALL></FONT></td>
> <TD align="center"  WIDTH="33%" >
>               
>                       
>             <font face="Arial"> <SMALL><A href="#"
onClick="openViewResponsePopup()">Team Response</A> </SMALL></font>
>                       
>                       
>                       &nbsp;
>                       
> 
>                       </font></td>
>                       
>     </tr>
> </table>
> 
> </td>
>                       </tr>
>                       <TR>
>                               <td>
>                                       <table border="0"
cellSpacing="0" width="100%" cellpadding="3" >
> 
>                                               <TR>
>     <TD>
>         <TABLE BORDER="0" CELLSPACING="0" WIDTH="100%">
>            
>             <TR>
>     <TD>
>         <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
>             <tr>
>                 <td width="21" bgcolor="#E1E0C2" >&nbsp;</td>
>                 <td  bgcolor="#E1E0C2" WIDTH="100%" ><font
face="Arial" size="3">MC</font></td>
>             </tr>
>         </TABLE>
>     </TD>
> </TR>
> 
> 
>             <TR>
>   <TD> 
>          <INPUT TYPE="HIDDEN" NAME="foilToDelete" value="">
>        <table border="0" cellspacing="2" cellpadding="0"  width="100%"
bgcolor="#FFFFFF">
>            
>            <TR bgcolor="#E1E0C2" >
>     <TD COLSPAN="3" >
>         <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
>             <TR>
>                 <TD align="LEFT">
>                                       <font face="Arial"
><SMALL><STRONG>&nbsp; &nbsp; &nbsp; Select Answer </STRONG></font></TD>
>                           
>                                                 </TR>
>         </TABLE>
>               </TD>
> </TR>
> 
> 
> 
>              
>                  <tr BGCOLOR="#E1E1E1">
>     <td width="21" ><font face="Arial" size="2">&nbsp;A)</font></td>
>     <td width="591"><font face="Arial" size="2">a</font></td>
>     <td width="22" align="middle"  height="18">
>         <INPUT VALUE="A" NAME="MCFoil" TYPE="radio"
ONCLICK="clearNACheck(); setSomethingChanged()" >
>     </td>
> </tr>
> 
>   
> 
> <tr BGCOLOR="#FFFFFF">
>     <td width="21" ><font face="Arial" size="2">&nbsp;B)</font></td>
>     <td width="591"><font face="Arial" size="2">b</font></td>
>     <td width="22" align="middle"  height="18">
>         <INPUT VALUE="B" NAME="MCFoil" TYPE="radio"
ONCLICK="clearNACheck(); setSomethingChanged()" >
>     </td>
> </tr>
> 
>   
> 
> <tr>
>     <td colspan="2" ALIGN="CENTER">
>                                                        
>       
>       </td>
>     
>     <td   align="center" >
>       
>         <font size="1" face="Arial"> <A
href="javascript:clearAnswers(); ">clear</A></font>
>     
>       
>       
>       </td>
> </tr>
> 
> 
>                                                
>                </table>
>    </TD>
> </TR>
> 
> 
>             
> <TR bgcolor="#E1E0C2" >
>     <TD><font face="Arial" ><SMALL><STRONG>&nbsp; &nbsp; &nbsp;  Enter
Rationale: 
>     </STRONG> <small>(optional)</SMALL></SMALL></font></TD>
> 
> </TR>
> 
> <TR>
>     <TD vAlign="top" ALIGN="CENTER">
>         <table border="0" cellSpacing="0" width="100%" cellpadding="0"
bgcolor="#FFFFFF">
>             <tr>
>                 <td width="100%" ALIGN="CENTER"><TEXTAREA
NAME="rationaleText"cols="60" rows= "3" WRAP="VIRTUAL"
ONCHANGE="setSomethingChanged()" style="width: 100%;"></TEXTAREA>
>                 <td>
>             </tr>
>         </table>
>     </TD>
> </TR>
> 
>             
>                       
>                       
> 
>         </TABLE>
> 
>     </TD>
> </TR>
> 
> 
>                                               
>

>                                               
> 
>                                               
>

>                                               
>                                               
>                                               
> <TR>
>       <TD>
> 
>               <table width="100%">
>                       <script language="JavaScript">
>             <!--
>             var windowReference;
> 
>             function openPopup(messageID) {
>                windowReference =
window.open('/teamthink/rqa1/teamthink?SessionID=kWO2YEOgF1VQMRUkH2rRJK2
eJ2CYGVhFWaZHZVji0mREQIA0WOmZMXXUScA&PageHandler=MessageEditor&messageID
='+ messageID, 'messageEditor', 'height=300,width=600,resizable=yes');
>                if (!windowReference.opener)
>                   windowReference.opener = self;
>             }
>             //-->
>                       </script>
> 
> 
>                       <INPUT TYPE="hidden" NAME="messageIDToDelete"
value="">
> 
>                       
> 
>                        
>                       
>               </table>
> 
>       </TD>
> </TR>
> <TR>
>       <TD>
>               <table width="100%">
>                       <tr width="100%">
>                               <td bgcolor="#E1E0C2" width="100%"><font
face="arial"><STRONG><SMALL> &nbsp; &nbsp;&nbsp;  Add a
Comment:</SMALL></STRONG> </FONT></td>
>                       </tr>
>                       <tr>
>                               <td ALIGN="CENTER"><textarea cols="60"
rows="3" name="newMessage" WRAP="VIRTUAL" style="width: 100%;"
ONCHANGE="setSomethingChanged();" TABINDEX="1000"></textarea></td>
>                       </tr>
>               </table>
> 
>       </TD>
> </TR>
> 
> 
>                                               
> <tr>
>     <td  ALIGN="RIGHT">
>                
>           
>               
>               <input name="IMSubmitButton" type="button"
value="Submit" onclick="submitItem();" TABINDEX="2000">
>                
>                
>         
>          
>                                                       
>        
>       
> 
>  <br>
>     </td>
>    
> </tr>
> 
> 
> 
>                                       </table>
>                               </td>

>                       </tr>
>               </table>
>       </CENTER>
> </form>
> </BODY>
> 
>
************************************************************************
**************
>  Thread #9
>  ID = kWO2...
>  R14
> 
> Query Data:
PageHandler=Home.IMBrokers.EIMBroker&performAction=submitItem&QuestionID
=49&origItemsStored=1&IsProcessData=1&Title=&submitMCMAAnswerAnyway=&ite
mSelect=49&foilToDelete=&MCFoil=A&rationaleText=r&messageIDToDelete=&new
Message=c&SessionID=kWO2YEOgF1VQMRUkH2rRJK2eJ2CYGVhFWaZHZVji0mREQIA0WOmZ
MXXUScA
> Cookie Data:
> null
> 
> 
>
------------------------------------------------------------------------
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to