I don't think HREF's pass along the name value pairs from the form. Only buttons and images do. For example, note that each ND generated HREF needs to pass along the SPIDERSESSION in the URL, which at times even makes it fail (due to ND4 packing all kinds of stuff into SPIDERSESSION, and the browsers having tighter limits on URL length than on name value pairs being passed via "SUBMIT". So while the HREF is a wonderfully intuitive use for drilldowns, since ND4 it has become a problem, because it may not work due to becoming too long. TechSupport from ND can't suggest much better than to use buttons. And due to the increased length of ND4 SPIDERSESSIONS, a page listing 500 rows of 100 bytes of HTML code Which would normally represent a 50k page. With ND4 SPIDERSESSION tags often being close to 1k, sometimes 2-3k each(!) So our original 50k page with ND4 style HREFS(let's say there a 2 HREF's on each line), can easily grow into a page of .5 MB to 1MB. To compound the issue, the SPIDERSESSION in a name value pair contains a number of characters (since it really is an encrypted binary field), which need to be escaped via %nn (nn being the ASCI code), when passed in the URL. So for a number of positions in the SPIDERSESSION, the HREF needs to send 3 bytes through the URL, whereas the button sends 1 in the name value pair). Have a look at a ND page with both: HREF(s) and button(s) - you'll see the difference between the SPIDERSESSIONs immediately. This may not be much of a problem over a 100BaseT intranet which isn't saturated, but over a modem line or a coporate WAN with 32kbs - 128kbs throughput, the above sample page becomes quite a lengthy load. Or even on a fast network, on older, slower machines even the browser takes longer to load these big pages. It is quite remarkable to see the difference. That's why buttons or repeating small images (image is only sent once, if it is reused) tend to be more efficient on downloading the page to the browser. (Even if the GUI is not as nice). I suspect, this is inherent in the HTTP protocol definition, and I'm not aware of any way to modify this behaviour (i.e. make an HREF send name value pairs). If one should desire to have the nice GUI of the HREF, yet make pages efficient, one would probably have to write some JavaScript to intercept the clicking on the HREF, but then fake the pressing of a button. If one would like to do that, one would have to manually code the HREF, instead of using the ND Studio generated one (to prevent attaching the SPIDERSESSION to each repeating HREF). A big caveat: I don't consider myself a HTTP/HTML guru, but I've checked into this, and for the life of me couldn't figure out any way of making name value pairs transmitted along with the HREF. Thus I'm humbly assuming it's not possible, but would be grateful to be proven wrong, by a real HTML/HTTP guru. -----Original Message----- From: Curt Springer [mailto:[EMAIL PROTECTED]] Sent: Monday, June 21, 1999 11:21 PM To: [EMAIL PROTECTED] Subject: Re: [ND] Attempt to grab a href value and store it as a session variable seems to fail Hi, I don't claim to know all all the ins and outs of the ND pointy-clicky hrefs. We rarely use them. We sometimes build ours by generating html from static text fields, so that we have control over what is happening. But I don't believe that the source values of the pointy-clicky href are available as web vars. You could verify this by executing CSpider.getWebVars(), which gives you a list of all the current web vars. -- Curt Springer, Team ND At 09:44 PM 6/21/99 -0800, [EMAIL PROTECTED] wrote: > >HI ALL, > >Can somebody tell me why this code below dosen't seem to work?? >I could be missing something here. >Its a simple attempt to grab a href value and store it as a session variable. >Then retrieve the session variable value on the target page's ON_BEFORE_DISPLAY_EVENT. > >public int hrefOfferID_onWebEvent(CSpWebEvent event) > { > int command = PROCEED; > command = doAction(event); > CSpValue cspvOfferID = CSpider.getWebVar("doSPSelect.hrefOfferID"); > CSpider.putUserSessionObject("ssOfferID", cspvOfferID); > CSpLog.send(this, CSpLog.CRITICAL, CSpider.getWebVar("doSPSelect.hrefOfferID")); > return(command); > } > > >I tried to see what was being passed as the CGI name value pair and it seemed to be okay >Here is the URL string > >http://24.0.21.70:2080/cgi-bin/ndCGI.exe/MSOAdminDraft10/ >pgSPSelection.hrefOfferID_onWebEvent(hrefOfferID)?hrefOfferID=1280%2e0& >/* this is what i am looking for - hrefOfferID = 1280 */ > >/* string contd..*/ >SPIDERSESSION=%3f%3f%3f%3f%3f%5f%3f%3f%3f%40%5b%3f%3f%3f%3fBOs >%5cH%3f%3f%3f%3f%3f%3f%3f%3f%3fLaHv%3fhfnKz%7c%7b%5f%3f%3f%3fPC%3fIQLGGpobQ % >40a%7dXoDeQaxG%5bC%60k%3fUsWX%60loQqLGJRSbQFCWSFdGG%40PxTvobHOWiDqXLYPHyBQ% >7bL%5e%40KuOaxU%5c%3ftwXvtIND%5cp%5brpAYf%3fLPehLHotGGs%5fbECg%7dOFsJQFtgGs %5fbEC% >7blPfloJvLJRUXU%5cSg%7bRFXONotTPO%5cp%5csgdRTpkEuH%7bCvcbECGyPUoaQAKiGS%5fb ECGlTvtpDcXgRbtk% >5e%60GkBVXmXf%40VR%40hSYu%5beSVdFASxpSuXCQt%5bmCa%60%3fJT%5cp%5b%40%60E%5cA DGGp% >60LHqKW%5bPXEYAXGGqWQJ%3ftsOatV%5eS%3flREhOIT%5cISADR%5cEgkSDpmXf%40VUadE%5 eE% >5beSVdFASxpSuXCQt%5bmCa%60%3fJT%5cp%5b%40%60E%5cCsfEAKdQAG&%5euniqueValue=9 30025844315 > > >The above code bombs with an error as follows: >On the page where i try to get the user session value - which seems to be null > >spider.event.adapters.CSpPageEventAdapter.relayGenericEventProcessing: Unexpected exception from an event (java.lang.NullPointerException). This is when >invoking method this_onBeforeDisplayEvent for event spider.event.CSpDisplayEvent [ON_BEFORE_DISPLAY_EVENT] on pgPreview: >spider.event.adapters.CSpPageEventAdapter.relayGenericEventProcessing: Unexpected Exception (java.lang.NullPointerException) caught. Top of stack: >|java.lang.NullPointerException at spider.util.CSpLog._log(Compiled Code) at spider.util.CSpLog.send(Compiled Code) at > > and that is explained below .. bcos the getWebVar returned a null value!! > >spider.event.adapters.CSpPageEventAdapter.relayGenericEventProcessing: Unexpected exception from an event (java.lang.NullPointerException). This is when >invoking method hrefOfferID_onWebEvent for event spider.event.CSpWebEvent[ON_BEFORE_WEB_EVENT, >Method=MSOAdminDraft10.pgSPSelection.hrefOfferID_onWebEvent (hrefOfferID)] on spider.visual.CSpHref: >spider.event.adapters.CSpPageEventAdapter.relayGenericEventProcessing: Unexpected Exception (java.lang.NullPointerException) caught. Top of stack: >|java.lang.NullPointerException at MSOAdminDraft10.pgSPSelection.hrefOfferID_onWebEvent(pgSPSelection.java:80) at > > >Thanx in advance for all who take time to review the code. >- Art >_________________________________________________________________________ > >For help in using, subscribing, and unsubscribing to the discussion >forums, please go to: http://www.netdynamics.com/support/visitdevfor.html > >For dire need help, email: [EMAIL PROTECTED] > _________________________________________________________________________ For help in using, subscribing, and unsubscribing to the discussion forums, please go to: http://www.netdynamics.com/support/visitdevfor.html For dire need help, email: [EMAIL PROTECTED] _________________________________________________________________________ For help in using, subscribing, and unsubscribing to the discussion forums, please go to: http://www.netdynamics.com/support/visitdevfor.html For dire need help, email: [EMAIL PROTECTED]
