Bug 852347 - SudokuExample throws IllegalArgumentException
SudokuExample throws IllegalArgumentException
Status: VERIFIED
Product: JBoss Enterprise BRMS Platform 5
Classification: JBoss
Component: Examples (Show other bugs)
BRMS 5.3.0.GA
Unspecified Linux
unspecified Severity low
: ---
: ---
Assigned To: Geoffrey De Smet
Martin Vecera
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-08-28 05:01 EDT by jgargula
Modified: 2013-10-10 20:15 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
The SudokuExample threw an IllegalArgumentException when the solve button was clicked, and the solution was never submitted. The cause of the IllegalArgumentException has been fixed and the SudokuExample now works.
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description jgargula 2012-08-28 05:01:49 EDT
Description of problem:
IllegalArgumentException is thrown instead of solving sudoku.

Version-Release number of selected component (if applicable):
BRMS 5.3.0.GA

How reproducible:
Follow next steps

Steps to Reproduce:
1. run runExample.sh script
2. click on SudokuExample button
3. choose menu File -> Samples -> Simple
4. press "Step" button while sudoku is not resolved
5. choose menu File -> Samples -> Hard 4
6. click "Solve" button
7. IllegalArgumentException is thrown and shown on the standard output
  
Actual results:
Thrown IllegalArgumentException

Expected results:
solved sudoku

Additional info:
After this exception no other sudoku is solved.
Comment 1 jgargula 2012-08-28 05:03:41 EDT
Stacktrace of thrown exception:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Invalid Entry Point. You updated the FactHandle on entry point 'DEFAULT' instead of 'DEFAULT'
	at org.drools.common.NamedEntryPoint.retract(NamedEntryPoint.java:527)
	at org.drools.common.AbstractWorkingMemory.retract(AbstractWorkingMemory.java:919)
	at org.drools.common.AbstractWorkingMemory.retract(AbstractWorkingMemory.java:907)
	at org.drools.impl.StatefulKnowledgeSessionImpl.retract(StatefulKnowledgeSessionImpl.java:271)
	at org.drools.examples.sudoku.Sudoku.solve(Sudoku.java:192)
	at org.drools.examples.sudoku.SudokuExample.actionPerformed(SudokuExample.java:163)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6505)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
	at java.awt.Component.processEvent(Component.java:6270)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4861)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4687)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:703)
	at java.awt.EventQueue.access$000(EventQueue.java:102)
	at java.awt.EventQueue$3.run(EventQueue.java:662)
	at java.awt.EventQueue$3.run(EventQueue.java:660)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:676)
	at java.awt.EventQueue$4.run(EventQueue.java:674)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:673)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Comment 2 Geoffrey De Smet 2012-08-29 06:06:51 EDT
I got a 1 line, no risk fix for it (pushed on master and 5.4.x).

Get pm+ and dev+ and I 'll backport it to 5.3.x.
  https://github.com/droolsjbpm/drools/commit/83d945e6e365f52d474317da46ba1d49ecec00c1
Comment 3 Geoffrey De Smet 2012-08-29 08:46:30 EDT
Backported to 5.3.x:
  https://github.com/droolsjbpm/drools/commit/f555d1da6416f1ad776d507c812d0fe5f29d889f
Comment 4 lcarlon 2012-10-18 00:47:44 EDT
The doc text has been edited for inclusion in the release notes. Thanks for providing the text, Geoffrey.

- Lee

Note You need to log in before you can comment on or make changes to this bug.