SPONSORS:






User Tag List

Thanks Thanks:  0
Likes Likes:  0
Dislikes Dislikes:  0
Results 1 to 5 of 5
  1. #1
    Junior Member
    Join Date
    Mar 2004
    Location
    india
    Posts
    2
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Error on Running VuGen script after recording

    We have to test a Java-RMI application using LoadRunner. We were able
    to record a complete transaction, but when running the script again
    the script throws the following error:
    Error -17999 : System.err:
    java.lang.NullPointerException

    Error
    System.err: at
    sun.rmi.transport.StreamRemoteCall.exceptionReceiv edFromServer
    (StreamRemoteCall.java:245)

    Error
    System.err: at sun.rmi.transport.StreamRemoteCall.executeCall
    (StreamRemoteCall.java:220)

    Error
    System.err: at sun.rmi.server.UnicastRef.invoke
    (UnicastRef.java:122)

    Error
    System.err: at server.CrcSystemImpl_Stub.readSpcs(Unknown
    Source)

    Error
    System.err: at Actions.action
    (Actions.java:68)

    Error
    Error -17999 : java.lang.NullPointerException
    Error -17999 : at
    sun.rmi.transport.StreamRemoteCall.exceptionReceiv edFromServer
    (StreamRemoteCall.java:245)
    at sun.rmi.transport.StreamRemoteCall.executeCall
    (StreamRemoteCall.java:220)
    at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:1 22)
    at server.CrcSystemImpl_Stub.readSpcs(Unknown Source)
    at Actions.action(Actions.java:68)
    Abort was called from an action

    Code excerpt where this exception is thrown:
    //////////////////////////////////////////////////////////////
    lr.think_time( 15 );
    // ((models.RemoteRequestImpl_Stub)<undefined&gt.setCompanyOrderRef
    ("1");

    // _receiver = ((models.RemoteRequestImpl_Stub)
    <undefined&gt.getReceiver();

    // _company = ((models.RemoteRequestImpl_Stub)<undefined&gt.getCompany
    ();

    // _receiver2 = ((models.RemoteRequestImpl_Stub)
    <undefined&gt.getReceiver();

    // _company2 = ((models.RemoteRequestImpl_Stub)<undefined&gt.getCompany
    ();

    /*
    * The exception is thrown at the following line.
    * The variable _company2 has not been initialized anywhere
    * There are lots of commented lines where a <undefined>
    * is cast to an different object type. What is the use of
    * these commented lines?
    */

    _vector2 = _crcsystem.readSpcs(_company2, "12DMM=", new
    java.lang.Integer(1));

    _vector3 = _crcsystem.readSpcs(_company2, "12DMM=", new
    java.lang.Integer(0));
    //////////////////////////////////////////////////////////////

    Any suggestion are welcome. Kindly advise.
    Thanks in advance.
    regards,
    nikki

  2. #2
    Senior Member
    Join Date
    May 2002
    Location
    Scranton, PA
    Posts
    405
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Error on Running VuGen script after recording

    Looks a good question for developer, unless _crcsystem is referring to NULL for some reason.
    Pankaj Bhatte
    Cognizant Technology Solutions.
    Scranton, PA
    pankajbhatte@yahoo.com

    while traveling parallel to a tangent , it's difficult to be normal, isn't it?

  3. #3
    Junior Member
    Join Date
    Mar 2004
    Location
    india
    Posts
    2
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Error on Running VuGen script after recording

    Hi pankaj,
    Thanks a lot for replying. The problem in the above case is that the RemoteRequestImpl_Stub object is null. The main reason behind RemoteRequestImpl_Stub being null is that "Enable stub serialization" options were not enabled when recording was done.

    This causes the other associated objects also to be null. When the "Enable stub serialization" was enabled in the above case then the RemoteRequestImpl_Stub object got serialized and all associated objects got initialized properly.

    This is causing another problem because when this script is run everytime the same object instance is used after deserialization. So if the same object is used the test case fails when run again because the transaction does not allow same actions to be run again on the same data (in simple words it throws a primary key violation)

    Actually Loadrunner does not capture all the function calls from the client to the server. Because of this I think the call at which the RemoteRequest object was actually returned from server didnt get recorded and that is causing a lot of problems.

    Can anybody tell me if there is a method in Loadrunner where i can specify that all the function calls be listed in script instead of a select few?
    Also what logic does Loadrunner use for recording function calls while recording Vuser scripts?

    I went through the LR documentation and there was a mention about guidelines and limitations associated with Java Vuser scripts. Can you please guide me to the sections where these guidelines and limitations are listed?

    I know i am asking a lot here. Just hope somebody hears my call.

    Thanking you in advance,
    Nikki

  4. #4
    Senior Member
    Join Date
    May 2002
    Location
    Scranton, PA
    Posts
    405
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Error on Running VuGen script after recording

    Hmm,
    Nikki, you have ventured into a gray area where nothing is certain. I will tell you, what I think is the issue (You might be expecting a solution, but it can't be as simple as I making it up merely by guesswork).

    For recording Java-RMI Vuser LR puts a hook in the native JVM. As an obvious consequence of this, it can't record calls to native APIs (local DLLs). Also if there is an asynchronous response from the server (kind of server push), that can't be recorded. I am not saying that this is your problem but it can very well be. This might not be encouraging to hear I know, but itís a fact.

    Now, question is what you should do? I'll give you few tasks -
    1. Open a service request with Mercury (if you havenít done so, as yet), if you are paying them, utilize their services.
    2. As I told you earlier, involve some developer into the loop. He will be the right person to answer some of the questions Mercury representative will ask.
    3. Start searching for a solution outside the box. Evaluate other tools like SilkPerformer which works better with RMI, CORBA, and IIOP kind of applications (This is my personal opinion, somebody might choose to disagree)

    Keep us posted
    Pankaj Bhatte
    Cognizant Technology Solutions.
    Scranton, PA
    pankajbhatte@yahoo.com

    while traveling parallel to a tangent , it's difficult to be normal, isn't it?

  5. #5
    Member
    Join Date
    Jul 2003
    Location
    Raleigh, NC
    Posts
    39
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Error on Running VuGen script after recording

    When I tested with RMI, Mercury did not have a recorder so we created the instantion classes from the client/server code and packaged drivers to use in classpaths. We used general java templates. Lots of coding involved in this method.

    Are you leaving out key pakages in your classpath?

    If the RMI engine doesn't work well enough for you, I found that the Bean Tester by Empirix was good. More isolated testing.

 

 

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Search Engine Optimisation provided by DragonByte SEO v2.0.36 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Resources saved on this page: MySQL 10.71%
vBulletin Optimisation provided by vB Optimise v2.6.4 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
User Alert System provided by Advanced User Tagging v3.2.8 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
vBNominate (Lite) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Feedback Buttons provided by Advanced Post Thanks / Like (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Username Changing provided by Username Change (Free) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
BetaSoft Inc.
Digital Point modules: Sphinx-based search
All times are GMT -8. The time now is 06:28 AM.

Copyright BetaSoft Inc.