IllegalArgumentException while debugger is running
- Dominant language
- Java
- Stars
- 3.1k
- Forks
- 935
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 17
Description
### Apache NetBeans version
Apache NetBeans 30
### What happened
Debugger was running on a PHP 8.4.x command-line application. While it was running I noticed an error message in the lower panel. I was not step-tracing or doing any other activity while this happened.
the relevant section of messages.log (attached) is:
```
SEVERE [org.openide.util.RequestProcessor]: Error in RequestProcessor org.netbeans.modules.csl.navigation.ClassMemberPanelUI$4
java.lang.IllegalArgumentException: null for name | fo | kind: null | C:\Web\DhammaReg\app\commands\ReconcileOSATeachersCommand.php@59da3ae4:73e2cdc8 | VARIABLE
at org.netbeans.modules.php.editor.model.impl.ModelElementImpl.(ModelElementImpl.java:96)
at org.netbeans.modules.php.editor.model.impl.ModelElementImpl.(ModelElementImpl.java:89)
at org.netbeans.modules.php.editor.model.impl.ScopeImpl.(ScopeImpl.java:62)
at org.netbeans.modules.php.editor.model.impl.VariableNameImpl.(VariableNameImpl.java:105)
at org.netbeans.modules.php.editor.model.impl.VariableNameImpl.(VariableNameImpl.java:101)
at org.netbeans.modules.php.editor.model.impl.MethodScopeImpl.createElement(MethodScopeImpl.java:101)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.createVariable(ModelVisitor.java:1633)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.visit(ModelVisitor.java:876)
at org.netbeans.modules.php.editor.parser.astnodes.Variable.accept(Variable.java:88)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultVisitor.scan(DefaultVisitor.java:145)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.scan(ModelVisitor.java:198)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultVisitor.visit(DefaultVisitor.java:382)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultTreePathVisitor.visit(DefaultTreePathVisitor.java:406)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.visit(ModelVisitor.java:1126)
at org.netbeans.modules.php.editor.parser.astnodes.ForEachStatement.accept(ForEachStatement.java:96)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultVisitor.scan(DefaultVisitor.java:145)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.scan(ModelVisitor.java:198)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultVisitor.scan(DefaultVisitor.java:152)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultVisitor.visit(DefaultVisitor.java:214)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultTreePathVisitor.visit(DefaultTreePathVisitor.java:238)
at org.netbeans.modules.php.editor.parser.astnodes.Block.accept(Block.java:70)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultVisitor.scan(DefaultVisitor.java:145)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.scan(ModelVisitor.java:198)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.visit(ModelVisitor.java:630)
at org.netbeans.modules.php.editor.parser.astnodes.MethodDeclaration.accept(MethodDeclaration.java:73)
at org.netbeans.modules.php.editor.parser.astnodes.visitors.DefaultVisitor.scan(DefaultVisitor.java:145)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.scan(ModelVisitor.java:198)
at org.netbeans.modules.php.editor.model.impl.ModelVisitor.scanNoLazy(ModelVisitor.java:1833)
at org.netbeans.modules.php.editor.model.impl.MethodScopeImpl.scan(MethodScopeImpl.java:306)
at org.netbeans.modules.php.editor.model.impl.MethodScopeImpl.getDeclaredReturnType(MethodScopeImpl.java:121)
at org.netbeans.modules.php.editor.csl.NavigatorScanner$PHPStructureItem.appendFunctionDescription(NavigatorScanner.java:431)
at org.netbeans.modules.php.editor.csl.NavigatorScanner$PHPMethodStructureItem.getHtml(NavigatorScanner.java:841)
at org.netbeans.modules.csl.navigation.ElementNode.updateRecursively(ElementNode.java:339)
at org.netbeans.modules.csl.navigation.ElementNode.updateRecursively(ElementNode.java:318)
at org.netbeans.modules.csl.navigation.ElementNode.updateRecursively(ElementNode.java:318)
at org.netbeans.modules.csl.navigation.ElementNode.updateRecursively(ElementNode.java:275)
at org.netbeans.modules.csl.navigation.ClassMemberPanelUI$4.run(ClassMemberPanelUI.java:289)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1370)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:287)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1981)
```
### Language / Project Type / NetBeans Component
PHP 8.4.22 CLI
### How to reproduce
I don't know.
### Did this work correctly in an earlier version?
No / Don't know
### Operating System
Windows 11 Pro 25H2 build 26200.8655
### JDK
Java: 26.0.1; OpenJDK 64-Bit Server VM 26.0.1+8 Runtime: OpenJDK Runtime Environment 26.0.1+8
### Apache NetBeans packaging
Community provided installer (installer is signed by Codelerity Ltd)
### Anything else
once so far
### Are you willing to submit a pull request?
No
Contributor guide
Research direction
Start at org.netbeans.modules.php.editor.model.impl.ModelElementImpl.java:96 and follow the stack through VariableNameImpl, ModelVisitor, MethodScopeImpl, and NavigatorScanner. Investigate the PHP command-line project while the debugger is running, using the attached messages.log and the reported foreach location as context. Done means the reported RequestProcessor exception no longer occurs in this scenario.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, php
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100