Page 1 of 1

Java LineageGlueRule Exception

Posted: Tue Nov 12, 2013 8:08 pm
by krstcs
I haven't seen one of these in a while, but they started happening in certain modules, but not all of them. Seems to be mainly in modules that interact with a specific dialog box.

The exception is thrown over and over, and appears to be the same one every time.

Re: Java LineageGlueRule Exception

Posted: Wed Nov 13, 2013 9:01 am
by Support Team
Thank you for reporting this issue!

Which Ranorex version do you use?
Could you also post the Ranorex report containing the exception messages? The report contains the whole stacktrace in order to narrow down the search for this problem.

Regards,
Alex
Ranorex Team

Re: Java LineageGlueRule Exception

Posted: Wed Nov 13, 2013 2:34 pm
by krstcs
Sorry Alex, I'm using 4.1.2.

I can't post the full report, but the stacktrace that I posted in my screen shot is all that is in the report anyway. I looked through the XML in the *.rxlog.data file to see if there was anything more, but there isn't, which is also really strange.

The XML for this part of the report looks like this:

Code: Select all

				<activity
				modulename="Enter_FirstName"
				moduleid="ff5362a5-7f24-4a61-b01b-359b84773c0c"
				moduletype="Recording"
				result="Success"
				duration="6928ms"
				type="test module"
				rid="13c4c83c68d7365b"
				totalerrorcount="0"
				totalwarningcount="0"
				totalsuccesscount="0"
				totalfailedcount="0"
				totalblockedcount="0">
					<detail>
					</detail>
					<varbindings>
						<varbinding
						name="FirstName"
						value="Krstest"/>
					</varbindings>
					<item
					time="00:24.142"
					level="Info"
					category="Data">
						<message>
							Current variable values:<br/>$FirstName = 'Krstest'
						</message>
						<metainfo
						loglvl="Info"/>
					</item>
					<item
					time="00:24.234"
					level="Info"
					category="Mouse">
						<message>
							Mouse Left Click item 'PointOfSale.FirstNameField' at Center.
						</message>
						<metainfo
						type="repoitem"
						path="/form[@processname='java' and @type!='NoDevicesFrame']//text[@name='firstNameField']"
						fullname="TCS_POS_CORERepository.PointOfSale.FirstNameField"
						id="18753580ac1149348ee89770f9a441ea"
						timeout="60000"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="94"
						itemindex="0"
						loglvl="Info"/>
					</item>
					<item
					time="00:24.399"
					level="Debug"
					category="Plugins">
						<message>
							LineageGlueRule 'java_child_components' caused NullReferenceException on Execute. Object reference not set to an instance of an object.
						</message>
						<metainfo
						stacktrace="   at Ranorex.Plugin.JavaChildrenRule.Execute(GlueRuleExecutionState state)
   at Ranorex.Core.ElementEngine.ApplyGlueRules(Element element, GlueRuleExecutionState state)"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="95"
						loglvl="Debug"
						itemindex="0"/>
					</item>
					<item
					time="00:24.452"
					level="Debug"
					category="Plugins">
						<message>
							LineageGlueRule 'java_child_components' caused NullReferenceException on Execute. Object reference not set to an instance of an object.
						</message>
						<metainfo
						stacktrace="   at Ranorex.Plugin.JavaChildrenRule.Execute(GlueRuleExecutionState state)
   at Ranorex.Core.ElementEngine.ApplyGlueRules(Element element, GlueRuleExecutionState state)"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="95"
						loglvl="Debug"
						itemindex="0"/>
					</item>
					<item
					time="00:24.517"
					level="Debug"
					category="Plugins">
						<message>
							LineageGlueRule 'java_child_components' caused NullReferenceException on Execute. Object reference not set to an instance of an object.
						</message>
						<metainfo
						stacktrace="   at Ranorex.Plugin.JavaChildrenRule.Execute(GlueRuleExecutionState state)
   at Ranorex.Core.ElementEngine.ApplyGlueRules(Element element, GlueRuleExecutionState state)"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="95"
						loglvl="Debug"
						itemindex="0"/>
					</item>
					<item
					time="00:24.585"
					level="Debug"
					category="Plugins">
						<message>
							LineageGlueRule 'java_child_components' caused NullReferenceException on Execute. Object reference not set to an instance of an object.
						</message>
						<metainfo
						stacktrace="   at Ranorex.Plugin.JavaChildrenRule.Execute(GlueRuleExecutionState state)
   at Ranorex.Core.ElementEngine.ApplyGlueRules(Element element, GlueRuleExecutionState state)"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="95"
						loglvl="Debug"
						itemindex="0"/>
					</item>
					<item
					time="00:24.657"
					level="Debug"
					category="Plugins">
						<message>
							LineageGlueRule 'java_child_components' caused NullReferenceException on Execute. Object reference not set to an instance of an object.
						</message>
						<metainfo
						stacktrace="   at Ranorex.Plugin.JavaChildrenRule.Execute(GlueRuleExecutionState state)
   at Ranorex.Core.ElementEngine.ApplyGlueRules(Element element, GlueRuleExecutionState state)"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="95"
						loglvl="Debug"
						itemindex="0"/>
					</item>
					<item
					time="00:24.716"
					level="Debug"
					category="Plugins">
						<message>
							LineageGlueRule 'java_child_components' caused NullReferenceException on Execute. Object reference not set to an instance of an object.
						</message>
						<metainfo
						stacktrace="   at Ranorex.Plugin.JavaChildrenRule.Execute(GlueRuleExecutionState state)
   at Ranorex.Core.ElementEngine.ApplyGlueRules(Element element, GlueRuleExecutionState state)"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="95"
						loglvl="Debug"
						itemindex="0"/>
					</item>
					<item
					time="00:24.784"
					level="Debug"
					category="Plugins">
						<message>
							LineageGlueRule 'java_child_components' caused NullReferenceException on Execute. Object reference not set to an instance of an object.
						</message>
						<metainfo
						stacktrace="   at Ranorex.Plugin.JavaChildrenRule.Execute(GlueRuleExecutionState state)
   at Ranorex.Core.ElementEngine.ApplyGlueRules(Element element, GlueRuleExecutionState state)"
						codefile="c:\Users\krsmith2\Documents\GitHub\Ranorex-TCS-POS\TCS_POS\TCS_POS_CORE\Total Tab\Enter_FirstName.cs"
						codeline="95"
						loglvl="Debug"
						itemindex="0"/>
					</item>

Re: Java LineageGlueRule Exception

Posted: Tue Nov 19, 2013 2:27 pm
by Support Team
Hello krstcs,

Thank you for the report file.
Unfortunately we are not able to reproduce the issue on our machines. Which version of java are you using?
Would it be possible to get a sample application in order to reproduce the issue.
Currently we know about a similar issue with JTables, which should be fixed in the next release, but I have not heard about warning in connection with JPanel.
Thank you!

Regards,
Bernhard

Re: Java LineageGlueRule Exception

Posted: Tue Nov 19, 2013 2:39 pm
by krstcs
This happens with Java 1.6, but I have both 1.7 and 1.6 installed (the JNLP we use to launch the app is in 7, but the app is in 6).

I will see if I can make an app that produces the same issue and get back to you.

Re: Java LineageGlueRule Exception

Posted: Tue Nov 26, 2013 4:48 pm
by krstcs
So, 2 things:

1. I can't reproduce it using a POJO/Swing setup, and can't give you more than the snapshot I already did.
2. It IS a bug in Ranorex, not our SUT.

The issue doesn't seem to cause anything but slowness, so it's not stopping testing. But these LineageGlueRule issues pop up every now and then in different areas, and different SUTs, so it is a Ranorex issue, not an SUT problem.

Re: Java LineageGlueRule Exception

Posted: Thu Nov 28, 2013 11:35 am
by Support Team
Hello krstcs,

I have added an entry to our bug tracking system and we will try to reproduce and fix the issue.
Thank you!

Regards,
Bernhard

Re: Java LineageGlueRule Exception

Posted: Tue Jan 07, 2014 3:06 pm
by BernhardS
Hello krstcs,

Unfortunately we have problems to find the issue because we cannot reproduce it on our machines. We would need a sample application in order to analyze the issue in more detail.

Regards,
Bernhard

Re: Java LineageGlueRule Exception

Posted: Tue Jan 07, 2014 3:48 pm
by krstcs
I don't have the Java skills to create a sample application, and our developers have real work to do, so that is out.

I would suggest that the stack trace and error reporting in Ranorex are a little light on details. If I had a way to get a better stack trace it would help both of us.

Is it possible to get Ranorex to produce a better error or more data in the stack traces?

Re: Java LineageGlueRule Exception

Posted: Wed Jan 08, 2014 2:06 pm
by BernhardS
Hello krstcs,

In general it is possible to enable the internal logging in Ranorex.

Please follow the steps below in order to enable the internal logging for all Ranorex Tools except Ranorex Studio:

You will find the configuration file for logging in the following locations.
C:\Program Files (x86)\Ranorex 4.1\Bin\NLog.config
C:\Program Files (x86)\Ranorex 4.1\Bin\x64\NLog.config

Please open these files with a text editor and edit the following rule (from “Off” to “Trace”):
<!-- Set the minlevel attribute to enable logging to a local file -->
<logger name="*" minlevel="Trace" writeTo="logfile" />
After you restart Ranorex, you will find a log file with the same name as the Ranorex tool (Ranorex.Spy.log).

If you want to enable the internal logging for Ranorex Studio please foll the steps below.

In order to enable the internal logging functionality for Ranorex Studio, please open the following file and change the <root> tag as described below.
„C:\Program Files (x86)\Ranorex 4.1\RanorexStudio\RanorexStudio.exe.config“
<root>  
  <level value=" Trace" />  
  <appender-ref ref="ColoredConsoleAppender" />  
  <appender-ref ref="FileAppender" />  
</root>
You also have to restart Ranorex after changing the *.config file.

Regards,
Bernhard

Re: Java LineageGlueRule Exception

Posted: Wed Jan 08, 2014 2:35 pm
by krstcs
Thanks Bernhard, I will try that and see what it says!