Removing Request Headers & Cookies from HttpServletRequest

I am trying to filter out (delete) some Request Headers and Cookies out of HttpServletRequest in one servlet, before forwarding the HttpServletRequest object to another servlet for processing.
I can easily get these i.e. "req.getHeader(name)". However I can't seem to find API's to set or delete request headers and cookies.
Does anybody know a technique I can use to do this?
Why aren't there API's to do such things as set and delete?
Thanks,
Art

Hi Schloth,
Is it not possible to read all the headers and
construct another list of headers without the cookie
header ?
Olabora.Yes it is possible. You can overload the getHeader() and filter out cookie. This is how I did it for getCookies(). YOu can do a similiar thing for getHeader().
public Cookie[] getCookies()
ArrayList cookieArrayList;
//Cookie[] retCookies;
String METHODNAME = "getCookies";
if(DEBUG)
{System.out.println(CLASSNAME+"."+METHODNAME+": Begin ");}
Cookie[] origCookies= super.getCookies();
//retCookies= null;
//Cookie[] retCookies = origCookies;
//Add to ArrayList for easy manipulation
//Do not add the SiteMinder cookie
if (origCookies != null)
if(DEBUG)
{System.out.println(CLASSNAME+"."+METHODNAME+" origCookies Array length= "+origCookies.length);}
cookieArrayList= new ArrayList();
for(int i=0; i<origCookies.length; i++)
//Filter out SMIDENTITY cookie
if (!origCookies.getName().equals("SMIDENTITY"))
cookieArrayList.add(origCookies[i]); //appends element to end of list
else
if(DEBUG)
{System.out.println(CLASSNAME+"."+METHODNAME+" Found SMIDENTITY cookie");}
if(DEBUG)
System.out.println(CLASSNAME+"."+METHODNAME+" cookieArrayList.size() "+cookieArrayList.size());
Cookie retCookies[] = new Cookie[cookieArrayList.size()];
retCookies=(Cookie[]) cookieArrayList.toArray(retCookies);
if(DEBUG)
System.out.println(CLASSNAME+"."+METHODNAME+" retCookies details");
printCookieDetails(retCookies);
return retCookies;
          if(DEBUG)
System.out.println(CLASSNAME+"."+METHODNAME+" 2 origCookies Array length= "+origCookies.length);
System.out.println(CLASSNAME+"."+METHODNAME+" returning ");
return origCookies;

Similar Messages

  • FNDLOAD: How to remove a concurrent program from a request group

    Hi,
    I want to remove a concurrent program from a request group using FNDLOAD utility. Since impacted environment is Production (controlled environment) I do not want to remove concurrent program manually from the request group. Is there a way to use FNDLOAD utility for this purpose or some other means?
    Environment: Oracle EBS R12.1.1
    OS: Linux
    Thanks,
    Nitin

    Hi,
    Unfortunately this CP cannot be disabled as it has to be removed from certain RGs but not all. Also removing it through RG forms is always an option but production gatekeepers won't allow to do that. I would have done that in a min.
    If FNDLOAD is not an option then I guess only other option is pl/sql script.
    Best regards,
    Nitin

  • TS1424 Message "your request could not be completed...make sure computer date is correct and will accept cookies from ITunes Store"

    Attempting to purchase music on ITunes Store which I have done for years, now get message "your request could not be completed, make sure your computer date is correct and computer accepts cookies from ITunes Store." I have changed nothing. Of course the date and time are correct and my browser accepts cookies.

    Now the apple support team won't even e-mail me back. Not even saying no. This is rediculus.

  • Can you remove column headers from report downloads?

    I'd like to remove the column header from the report downloads. For example, the report download file currently looks like:
    EMPNO,ENAME
    7839, KING
    7698, BLAKE
    Where as I'd like it to just be:
    7839, KING
    7698, BLAKE
    Does anyone know if this is possible?
    Thank you,
    Martin
    http://www.talkapex.com

    There is a work around that I used before:
    - Create a new page.
    - create a report region and copy your origional report query in it
    - in report attributes >> choose no header
    - in report attributes >> choose "CVS report" as your new report tempate.
    - go back to your origional report, create a button in that page ( call it EXPORT ) that submits as EXPORT
    - create a conditional branch that goes to your new report page , make it conditional ( when EXPORT button is clicked)
    This way, you will have a new EXPORT button on top ( or whereever you want ) of you report, when you click on it , it shows a download prompt for your export , the export won't have headers..
    Sam

  • Passing Cookies from Previous Web HTTP Request to the Next

    Hi,
    I have two Web Http Requests. The first one performs a Login and the second one executes another method called ListRecoveryPlans.
    First SOAP calls for Login looks like this:
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap-url>https://srm-app-003:9007</soap-url>
    <connection>
    <name>srm_connection_test_01</name>
    <terminate-on-exit>false</terminate-on-exit>
    </connection>
    <SOAP-ENV:Body>
    <urn:SrmLogin xmlns:urn="urn:srm0">
    <urn:_this xmlns:urn="urn" type="SrmApi">Srm</urn:_this>
    <urn:username>cisco\xxx</urn:username>
    <urn:password>xxx</urn:password>
    </urn:SrmLogin>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    The second soap looks like this:
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap-url>https://srm-app-003:9007</soap-url>
    <connection>
    <name>srm_connection_test_01</name>
    <terminate-on-exit>false</terminate-on-exit>
    </connection>
    <connectionCookie>
    <name>
    <xsl:text disable-output-escaping="no">DE78D964-DDF4-40B6-BCB7-BEB44624826D</xsl:text>
    </name>
    </connectionCookie>
    <SOAP-ENV:Body>
    <urn:ListRecoveryPlans xmlns:urn="urn:srm0">
    <urn:_this xmlns:urn="urn" type="SrmApi">
    <xsl:text disable-output-escaping="no">Srm</xsl:text>
    </urn:_this>
    </urn:ListRecoveryPlans>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    In addition, under the Cookies tab for the ListRecoveryPlans request, I passed the cookies from the previous request:
    However, I am getting a "session is not authenticated" error.
    The remote server returned an error: (500) Internal Server Error.
    <?xml version="1.0" encoding="UTF-8"?>
    <soapenv:Envelope xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <soapenv:Fault><faultcode>ServerFaultCode</faultcode><faultstring>The session is not authenticated.</faultstring><detail><SecurityErrorFault xmlns="urn:srm0" xsi:type="SecurityError"></SecurityErrorFault></detail></soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>
    Can you shed some light on how I can fix this issue? I am using CPO v. 2.2.0.1409.
    Thank you.
    Regards,
    Mary Jane Cofino

    Hi,
    Thank you for the prompt reply.
    For the first request, here is the response header I am getting
    I checked the "Accept cookies from this request" checkbox button and am now getting a new error:
    The remote server returned an error: (500) Internal Server Error.
    <?xml version="1.0" encoding="UTF-8"?>
    http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    ServerFaultCodeThe object has already been deleted or has not been completely created
    Regards,
    Mary Jane Cofino

  • Exchange 2013 EAC shows "error Sorry, your request couldn't be completed. Try deleting the cookies from your browser, and then sign in again. If the problem continues, contact your helpdesk."

    Hi,
    My Exchange 2013 Hybrid environment is at CU5 level. Multiple administrators have started experiencing the error message
    "error
    Sorry, your request couldn't be completed. Try deleting the cookies from your browser, and then sign in again. If the problem continues, contact your helpdesk."
    It only started two weeks ago and did not coincide with any infrastructure changes. The message occurs when clicking anything on the EAC GUI and it eventually allows you to perform the operation but only after the message
    pops up a few times.
    I have tried clearing the browser cookies, history, etc. Note that using the Office 365 EAC does not yield the same messages and it only happens in IE (IE 11).
    Thanks.

    Hi,
    From your description, please make sure that the "Require SSL" is checked in IIS Manager -> Sites -> Exchange Back End -> ECP -> SSL Settings.
    What's more, ensure that EAC site is added to the “Compatibility Mode”.
    Hope this can be helpful to you.
    Best regards,
    Amy Wang
    TechNet Community Support

  • Allow-http-request-headers-from    Question

    I have a crossdomain.xml file in place, but am still getting this error:
    "Security error accessing url"
    I searched the web and is it true that because I am accessing a SOAP web service I need to add this to the crosssdomain.xml file:
    <allow-http-request-headers-from domain="MYDOMAINHERE" headers="SOAPAction"/>
    Is there anything else from a crossdomain.xml file perspective, or anything else in general to be able to access these web services from my Flex app?
    Thanks for your responses.

    The SWF is at MyDomain.com (for example).
    The crossdomain.xml file is on the 3rd party web service provider at the root of their web server, and it correctly has an entry to MyDomain.com.
    The exact error is "Security error accessing url".
    I read on the web that when accessing SOAP web services you need to add these entries to the crossdomain.xml file:
    <allow-http-request-headers-from domain="MyDomain.com" headers="SOAPAction"/>
    Is that the case and is there anything else extra I need to do to get web services to work in this case?
    Thanks Alex, for helping with this.

  • Applescript to remove cookie from Safari

    A web site I have to visit regularly loads faulty cookies that do not auto-delete as they are supposed to. As a result the next time I log in, days later, I get a message that my session has "timed out". I can use the Safari preferences and delete the offending cookies manually.
    Would some one be so kind as to write a script that would automate this for me. There are 6 cookies from the website "dbiweb.sfgov.org" the cookie names are "style", "ASP,NET_SessionId", "_utmz", and "__utma"
    Any useful response will be sincerely appreciated and good Karma will rain upon you.
    A sincere thanx, in advance.

    If you don't mind using [GUI Scripting|http://www.macosxautomation.com/applescript/uiscripting/index.html], you might try this:
    *set theWebsite to "dbiweb.sfgov.org"*
    --However I tested the script with "sfdbi.org" instead of "dbiweb.sfgov.org"
    *tell application "Safari" to activate*
    *tell application "System Events" to tell process "Safari"*
    *click menu item 4 of menu 1 of menu bar item 2 of menu bar 1* -- Preferences…
    *tell window 1*
    *click button -2 of tool bar 1* -- Security
    *click button 1 of group 1 of group 1* -- Show Cookies
    *keystroke theWebsite* -- enter the Website string
    *keystroke tab*
    *delay 1* -- (optional, just for visual feedback)
    *keystroke "a" using command down* -- Select All
    *click button 1 of sheet 1* -- Remove (without alert)
    *end tell*
    *keystroke return* -- Done
    *keystroke "w" using command down* -- close the Security window
    *end tell*

  • I am getting an error Bad Request Request too long HTTP Error 400. The size of the request headers is too long.

    When I sign into Methodintegration.com my data base I can get in ok. When I sign out I get the following error: I am getting an error Bad Request Request too long HTTP Error 400. The size of the request headers is too long. If I close Fire Fox and go back in it will work one time and then I get the same error message.

    That is usually a problem with corrupted cookies.
    Clear the cache and the cookies from sites that cause problems.
    * "Clear the Cache": Tools > Options > Advanced > Network > Offline Storage (Cache): "Clear Now"
    * "Remove the Cookies" from sites causing problems: Tools > Options > Privacy > Cookies: "Show Cookies"

  • If I access the website of Cebu Pacific I get as reply upon entering a search request "HTTP Error 400. The size of the request headers is too long.", but if i use private browsing i do not get this reply. How do i resolve that?

    If I access the website of Cebu Pacific Air I get as reply upon entering a search request "HTTP Error 400. The size of the request headers is too long.", but if i use private browsing i do not get this reply. This refers to Firefox 5.0 on ubuntu 11.04
    I have tried to resolve this through deleting history and the cookies, but i always get the same reply. Although if i use firefox (ubuntu) private browsing or Firefox on Windows 7 i do not get this error message.
    What causes this error and how do i resolve this?

    Copied from the link mentioned below.
    ''That is usually a problem with corrupted cookies. Clear the cache and the cookies from sites that cause problems.
    "Clear the Cache": Tools > Options > Advanced > Network > Offline Storage (Cache): "Clear Now"
    "Remove the Cookies" from sites causing problems: Tools > Options > Privacy > Cookies: "Show Cookies" ''
    https://support.mozilla.com/en-US/questions/785186?s=http+error+400&as=s
    Check and tell if its working.

  • How do I add my own headers to the default set of request headers without using a plug-in?

    When I open HTTP Live Headers, I see that there are default request headers that go out from the browser to the server. I want to add a Pragma header with a specific value to be sent. This will help me to remove a plug-in from my arsenal and thereby be sure that all the request headers are going as a part of the request.

    I think this probably requires an extension. As far as I know, there is no preference you could change in about:config or user.js to "add a header".
    Or are you generating the request with JavaScript?

  • Writing Cookie from a Portlet

    Hi,
    I am unable to write a cookie from a portlet. From the portlet JSP I am
    writing the cookie to response object and the cookie is not getting to the
    client.
    So How can I write a client-side cookie from a portlet JSP?
    Thanks
    Regards,
    UDay

    Uday,
    The portal page is composed of many JSPs originating from portal.jsp. Portlets
    are ultimately included via a <jsp:include> tag. This is what the JSP spec says
    about <jsp:include>
    "An included page only has access to the JspWriter object and it cannot set headers.
    This precludes invoking methods like setCookie(). A request-time Exception will
    be raised if this constraint is not satisfied. The constraint is equivalent to
    the one imposed on the include() method of the RequestDispatcher class."
    You will need to set your cookie from portal.jsp.
    PJL
    "Uday Tangs" <[email protected]> wrote:
    Hi,
    I am unable to write a cookie from a portlet. From the portlet JSP I
    am
    writing the cookie to response object and the cookie is not getting to
    the
    client.
    So How can I write a client-side cookie from a portlet JSP?
    Thanks
    Regards,
    UDay

  • How do you stop unauthorized cookies from appearing in Safari?

    Hi ,
    I'm using Safari 5.1.10 and system 10.6.8.  I've gotten all the security downloads available, but I seem to having issues with unauthorized  cookies appearing. These seem to appear even though I've not visited their websites, and have Safari set to accept cookies from only sites I've visited.
    After going to Preferences:Privacy: remove all website data: then remove all cookies,
    If I just wait a few minutes, I get 72 website cookies restored to  my computer, without doing anything. These include cookies from google, alibaba, 2mdn.net, facebook, microsoft, oracle and many more.  Some of these  declare they are using local storage, others the catch, while others just declare themselves as cookies.
    These appear in spite of the fact that I have the preferences set to block cookies from third party advertizers, set Extensions to OFF, but have Javascript enabled, and allow Java, but deny all other plug-ins.
    If I unclick the allow Java button in Preferences:security, then  11 of these cookies sneek back in, but the others seem to be blocked. Those that come back include Alibaba, apple, google-analytics, "local documents on my computer", machine-seeker, wikipedia, and a few others.
    If I disable JavaScript in Preferences:Security, now I get only cookies from sites I've visited, as I'm supposed to, according to the settings in my Safari preferences.
    So it seems that some unscrupulous information collectors are collecting data  even when the Safari settings should prohibit it. Unfortunately, some of the sites I visit ( Like Apple support communities)  require that Javascript be enabled, so I don't know how to stop this. 
    The problem is that I've found these unwarrented cookies appear to slow down my internet connection speeds  by  ~ 95% ( Try removing them and disabling Javascript to see what happens) in addition to it being an invasion of my privacy. In addition, it really bothers me that some of these sites are storing local documents on my computer without permission.
    As I've said, I've already installed ALL the pertinent security updates.  Does anybody have any idea how to stop this from happening? I presume this is also happening on my iphone and ipad as well, but haven't checked.
    I see that Safari was sued by Apple in 2012 for doing just this same thing, but they appear to be up to their old tricks, as well as many other companies.
    Thanks

    Hi,
    I've investigated this phenomena  of UNauthorized Cookies a bit more  in the past few days and found their cause  and uses goes very deep down the internet rabbit hole.  While most browsers allow the user to delete cookies, or to block cookies from third parties, third parties may place cookies or "cookie equivalents" on your computer through a large variety of back doors. The most pernicious type  of such cookie is euphemistically  called a "Zombie Cookie"  or a "supercookie".
    These may reside in a number of places either in  your own computer or remotely on the web. Deleting zombie cookies or supercookies is generally ineffective, because they are reinstalled in your browser, or worse, just exchange information with your browser withouth leaving a trail of cookie crumbs, the next time you get online. Some of these zombie cookies are not browser specific, so they can be accessed through all browsers on your computer. 
    The reason that you may never have heard of supercookies, and the reason they are so hard to find and get rid of, is that their deployment is deliberately sneaky and designed to evade detection and deletion. This means that most people who think they have cleared their computers of tracking objects have likely not. The European Union has recently taken action to make illegal the emplacement of "non-essential" cookies  on your computer, but the United States, being less concerned about your personal privacy, and more concerned about  making it easy for companies (and the government) to eavesdrop, has not.
    The following is a list ( probably incomplete) where zombie cookies may be hiding on your computer:
    Standard HTTP cookies
    Storing cookies in and reading out web history
    Storing cookies in HTTP ETags
    Internet Explorer userData storage (starting IE9, userData is no longer supported)
    HTML5 Session Storage
    HTML5 Local Storage
    HTML5 Global Storage
    HTML5 Database Storage via SQLite
    Storing cookies in RGB values of auto-generated, force-cached PNGs using HTML5 Canvas tag to read pixels (cookies) back out
    Local Shared Objects
    Silverlight Isolated Storage
    Cookie syncing scripts that function as a cache cookie and respawn the MUID cookie[4]
    If a user is not able to remove the cookie from every one of these data stores then the cookie will be recreated to all of these stores on the next visit to the site that uses that particular cookie, or in some cases, just the next visit to the internet, even though you may have barred 3rd party cookies from being emplaced in your browser. Every company has their own implementation of zombie cookies and most are kept proprietary, although an open-source implementation of zombie cookies, called Evercookie,[5] is available and commonly used.
    One  such common type of supercookie is called Local shared objects (LSOs), or more commonly Flash cookies (due to their similarities with HTTP cookies), are pieces of data that websites which use Adobe Flash may store on a user's computer. Local shared objects are used by all versions of Adobe Flash Player and version 6 and above of Macromedia's now-obsolete Flash Player.[1]
    It is possible to see who is using Flash cookies on your computer, (and remove them) by going to the adobe website storage settings panel : (http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_man ager07.html).  This takes you to a settings manager  figure. This  Settings Manager figure that you see on this page is not an image; it is the actual Settings Manager for your computer. Click the tabs to see different panels, and click the options in the panels to change your Adobe Flash Player settings.
    So far, I have not been able to find a method of removing or inhibiting zombie cookies that use HTML5 local or global storage locations. Some browsers may provide such power, but Apple Safari apparently does not.
    For more information on supercookies see:
    https://www.bestvpn.com/blog/8177/super-cookies-flash-cookies/
    There are some ways to reduce your load of unwanted cookies and local storage  type cookies using  extensions such as AdBlock or Disconnect,  But I've tried some of these and it doesn't seem to  stop very many of them, even though the Disconnect extension is said to block over 2000 of these types of  cookies.
    For those who are trying to ride under the radar by using some of these extensions or software blockers, be aware that use of these may actually make you more visible because of browser fingerprinting.  Whenever you visit a website your browser sends data to the server hosting that site. This data includes basic information, including the browser name, operating system, and exact version number of the browser. This information is known as passive browser fingerprint because it happens automatically. However websites when blocked, can also easily install other types of scripts that ask for additional information, such as a list of all installed fonts and plugins, supported data types (so-called MIME types), screen resolution, system colors and much more. Because this information has to be solicited from your browser, it is known as active fingerprinting. Taken altogether, the various fingerprint attributes can be almost instantly (it takes just a few milliseconds to run algorithms that compare millions of fingerprints) combined to create a unique fingerprint that can be used to very accurately identify an individual user, no matter if cookies have been deleted or IP address changed between website visits.
    For an article on browser fingerprinting, See : https://www.bestvpn.com/blog/8159/browsers-fingerprint-reduce/
    The bottom line is that if you use the internet, your browser history is being tracked by a myriad of companies and government agents, and it is likely not possible to stop this.  For those who work in science, industry or government and are working on sensitive topics or novel product development  that  another company or government may find interesting, there appears to be many ways to recreate  what you are working on by studying your browser history, or installing worms to view exactly what you are writing or reading.  It came as somewhat of a shock to me to see just how pervasive internet spying has become, and it's not just malicious or destrustive agents who are doing so. Google didn't become a $350 billion company by simply bringing nice toys to us to play with. The real value of the internet comes from the trade and sale of secretly obtained personal information from you and I and everyone else, and its sale to all who will pay for it.

  • How to get the cookie from a web service using Axis

    I used the AXIS wizard to consume a WSDL and create a bunch of boiler plate code. It works great in that I can talk to the web service and submit requests.
    The problem is that I need to retrieve the cookie from the login request and use it when making subsequent requests. I have been unable to find the cookie and would appreciate a point in the right direction.
    Currently I'm trying something like this
    String cookie = (String)((Stub)service)._getCall().getMessageContext().getProperty(HTTPConstants.HEADER_COOKIE);
    Thanks in advance.

    Answered on my own:
    Just have to use
    x_result = http_client->response->get_data( ).
    instead of
    x_result = http_client->response->to_xstring( ).
    Just don't knwo why the filesize is wrong also - but I can work with this image!

  • Can I remove a SPECIFIC file from the "Recents" list?

         As far as I can see, Adobe Reader for Android has only the option of clearing ALL the files in the "Recents" list. It doesn't have the option of removing a specific file from the "Recents" list.
         Maybe I'm just missing the option I'm talking about or Adobe Reader doesn't really have that feature.
         Sensible answers to my question will be greatly appreciated. Thanks!

    Hi iSTULIN
    I assume you can delete the complete list, not the single file ...
    Please check the below link : http://blogs.adobe.com/readermobile/2011/09/09/faqs-for-adobe-reader-on-android/
    You can raise a feature request on the below link : https://www.adobe.com/cfusion/mmform/index.cfm?name=wishform

Maybe you are looking for

  • Bit of a difficult one

    Okay so here is the persistent problem, I have an iPhone 4 and ever since updating to iOS 7 i have had endless problems. The biggest one being that every app that i have ever bought/downloaded, keep downloading all at once and it happens when i try t

  • My book mark bar constantly asks me to refresh

    My mac book pro continually brings up the refresh icon in the bookmark bar no matter how many times I refresh, has any one any suggestions?

  • 39L4333DG - cannot display Flash content in web browser

    Hello, When I try to access Flash sites the web browser shows 'Missing plugin' in the frame where flash player should display the content. Am I omitting anything? I have installed the latest firmware: 7.1.90.34.01.1. For a 2013 TV it is annoying not

  • Oracle 10 -   Avoiding Duplicate Records During Import Process

    I have two databases on different servers(DB1&DB2) and a dblink connecting the two. In DB2, I have 100 million records in table 'DB2Target'. I tried to load 100 million more records from tables DB1Source to DB2Target on top of existing 400 million re

  • Trying to sync

    IThe question is: How do I get the songs that are currently on my iPod to the LIBRARY (that is empty) in iTunes that is on the laptop? I have a 4G ipod, working well with my desktop PC (WinXP) I have just purchased a laptop (WinXP)and have installed