History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: IDEADEV-15873
Type: Exception Exception
Status: Open Open
Priority: Major Major
Assignee: Maxim Shafirov
Reporter: Alexander Chernikov
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
IDEA: Development

JSPX: import class quick fix applied to a generic class within jsp:declaration throws IAE from CompositeElement.replaceChild()

Created: 02 Apr 07 17:36   Updated: 06 Nov 08 23:15
Component/s: J2EE.JSP
Fix Version/s: Undefined

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown
Issue Links:
Depend
This issue depends on:
IDEADEV-15088 [#4539] IAE: CompositeElement.replace... Major Resolved
 
Relates
 
This issue is related to:
IDEADEV-20978 JSPX: code completion inserts not esc... Normal Open

Build: 6,794


 Description  « Hide
Get a JSPX. Provide the following code within <jsp:declaration>:
...
<jsp:declaration>
	class Fafalala extends HashMap&lt;String, String&gt; {

	}
</jsp:declaration>
...

and make sure you have no HashMap imported. Get error. Alt+Enter. Choose quick fix "Import class". Result: quick fix is not applied and exception.

Argument 1 for @NotNull parameter of com/intellij/psi/impl/source/tree/CompositeElement.replaceChild must not be null
java.lang.IllegalArgumentException: Argument 1 for @NotNull parameter of com/intellij/psi/impl/source/tree/CompositeElement.replaceChild must not be null
	at com.intellij.psi.impl.source.tree.CompositeElement.replaceChild(CompositeElement.java)
	at com.intellij.psi.impl.source.codeStyle.CodeEditUtil.replaceChild(CodeEditUtil.java:79)
	at com.intellij.psi.impl.source.tree.CompositeElement.replaceChildInternal(CompositeElement.java:56)
	at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl.d(PsiJavaCodeReferenceElementImpl.java:245)
	at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl.bindToElement(PsiJavaCodeReferenceElementImpl.java:109)
	at com.intellij.codeInsight.daemon.impl.actions.AddImportAction.b(AddImportAction.java:26)
	at com.intellij.codeInsight.daemon.impl.actions.AddImportAction.access$400(AddImportAction.java:8)
	at com.intellij.codeInsight.daemon.impl.actions.AddImportAction$2$1.run(AddImportAction.java:1)
	at com.intellij.openapi.application.impl.ApplicationImpl$13.compute(ApplicationImpl.java:2)
	at com.intellij.psi.impl.source.PostprocessReformattingAspect.postponeFormattingInside(PostprocessReformattingAspect.java:111)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:253)
	at com.intellij.codeInsight.daemon.impl.actions.AddImportAction$2.run(AddImportAction.java:1)
	at com.intellij.openapi.command.impl.CommandProcessorImpl.executeCommand(CommandProcessorImpl.java:60)
	at com.intellij.openapi.command.impl.CommandProcessorImpl.executeCommand(CommandProcessorImpl.java:56)
	at com.intellij.codeInsight.daemon.impl.actions.AddImportAction.a(AddImportAction.java:6)
	at com.intellij.codeInsight.daemon.impl.actions.AddImportAction.execute(AddImportAction.java:14)
	at com.intellij.codeInsight.daemon.impl.quickfix.ImportClassFix$1.run(ImportClassFix.java:3)
	at com.intellij.openapi.application.impl.ApplicationImpl$13.compute(ApplicationImpl.java:2)
	at com.intellij.psi.impl.source.PostprocessReformattingAspect.postponeFormattingInside(PostprocessReformattingAspect.java:111)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:253)
	at com.intellij.codeInsight.daemon.impl.quickfix.ImportClassFix.invoke(ImportClassFix.java:1)
	at com.intellij.codeInsight.intention.impl.IntentionHintComponent$6$1$1.run(IntentionHintComponent.java:5)
	at com.intellij.openapi.application.impl.ApplicationImpl$13.compute(ApplicationImpl.java:2)
	at com.intellij.psi.impl.source.PostprocessReformattingAspect.postponeFormattingInside(PostprocessReformattingAspect.java:111)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:253)
	at com.intellij.codeInsight.intention.impl.IntentionHintComponent$6$1$2.run(IntentionHintComponent.java:2)
	at com.intellij.openapi.command.impl.CommandProcessorImpl.executeCommand(CommandProcessorImpl.java:63)
	at com.intellij.openapi.command.impl.CommandProcessorImpl.executeCommand(CommandProcessorImpl.java:56)
	at com.intellij.codeInsight.intention.impl.IntentionHintComponent$6$1.run(IntentionHintComponent.java:11)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:20)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
	at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:175)
	at com.intellij.ide.IdeEventQueue.a(IdeEventQueue.java:88)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:60)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)


 All   Comments   Work Log   Change History      Sort Order:
Alexander Chernikov - 02 Apr 07 17:37
Similar trace.

Alexander Chernikov - 11 Sep 07 20:40
7272: and, by the way, 'Import class" should be suggested automatically like in java and jsp code (with grey-blue tooltip: "package.name.Class? Alt+Enter"). Currently this does not work in jspx.