3353 - faster, but still exceptional....

Well this new EAP seems alot faster, and I like the new defaults in the
Allow L&F.

Sadly, I can't open my ./web directory in the project pane due to
getting a NullPointerException in the jsp parser :(

And the odd IG exception still popping up, but so far in the brief 30
seconds I've tried - this look nice...

Now if only I could browse my jsps...

26 comments
Comment actions Permalink

Please send me this exception.

Thanks,
IK
Mark Derricutt wrote:

Well this new EAP seems alot faster, and I like the new defaults in the
Allow L&F.

Sadly, I can't open my ./web directory in the project pane due to
getting a NullPointerException in the jsp parser :(

And the odd IG exception still popping up, but so far in the brief 30
seconds I've tried - this look nice...

Now if only I could browse my jsps...

0
Comment actions Permalink

In article <d7hgtp$n17$1@is.intellij.net>,
Mark Derricutt <mark@talios.com> wrote:

Well this new EAP seems alot faster, and I like the new defaults in the
Allow L&F.

Sadly, I can't open my ./web directory in the project pane due to
getting a NullPointerException in the jsp parser :(

And the odd IG exception still popping up, but so far in the brief 30
seconds I've tried - this look nice...

Now if only I could browse my jsps...


At least you can start it :(

R

0
Comment actions Permalink

Igor Kuralenok (JetBrains) wrote:

Please send me this exception.


http://intellij.net/tracker/idea/viewSCR?publicId=48346

0
Comment actions Permalink

Robert S. Sfeir wrote:

At least you can start it :(


No donuts from Robert then....

0
Comment actions Permalink

Mark, can you try to figure out on which file this happens. I know it is
not easy, but this will help us a lot.

Thanks,
IK

0
Comment actions Permalink

In article <d7hid2$t45$2@is.intellij.net>,
Mark Derricutt <mark@talios.com> wrote:

Robert S. Sfeir wrote:

At least you can start it :(


No donuts from Robert then....


Heh and considering I can't get the newly added JDKs to parse and
recognize classes... I think I might ask for some donuts myself :D

R

0
Comment actions Permalink

Igor Kuralenok (JetBrains) wrote:

Mark, can you try to figure out on which file this happens. I know it is
not easy, but this will help us a lot.


Any pointers into where to look? I thought I read a reference to the
filename being mentioned in the exceptions now, but no joy :(

0
Comment actions Permalink

Mark Derricutt wrote:

Igor Kuralenok (JetBrains) wrote:

>> Mark, can you try to figure out on which file this happens. I know it
>> is not easy, but this will help us a lot.


Any pointers into where to look? I thought I read a reference to the
filename being mentioned in the exceptions now, but no joy :(

We was not prepared to this NPE and had no logging in there. The only
way I see is to reduce project size step by step... I know it's pain but
we can't repeat this on our tests :(.

IK

0
Comment actions Permalink

The stack trace is at the end -- not sure if it's the same, but it's also
an NPE. A massively simplified version of the file is between the [BEGIN
JSP] and markers below.


<?xml version='1.0'?>
<%
out.print( "<test/>");
%>


That will kill the entire project pane, though it produces valid output.
And, unlike other files which kill it, it seems to require a restart to
make it work again.

Note that this error is NOT new. :( I reported it in 3341 in the thread
with the subject "Project tree still broken by bad JSP code in 3341" on 5/19
with the file that caused the problem attached (didn't have time to simplify
it).

There also seem to be other files killing the project pane with array bounds
exeptions in 3353 -- I'm still tracking those down.

--Mike

com.intellij.ide.projectView.impl.AbstractProjectViewPSIPane$4
java.lang.NullPointerException
at com.intellij.psi.impl.source.jsp.JspxParsing.convertToXmlText(JspxParsing.java:235)
at com.intellij.psi.impl.source.tree.JspElementType$1.parseContents(JspElementType.java:4)
at com.intellij.psi.impl.source.tree.ChameleonElement.transform(ChameleonElement.java:48)
at com.intellij.psi.impl.source.parsing.ChameleonTransforming.transform(ChameleonTransforming.java:46)
at com.intellij.psi.impl.source.tree.ChameleonElement.getTransformedLastOrSelf(ChameleonElement.java:32)
at com.intellij.psi.impl.source.tree.SharedImplUtil.getLastChild(SharedImplUtil.java:31)
at com.intellij.psi.impl.source.TreeWrapperPsiElement.getLastChild(TreeWrapperPsiElement.java:35)
at com.intellij.psi.impl.source.jsp.JspJavaTextGenerator.]]>(JspJavaTextGenerator.java:9)
at com.intellij.psi.impl.source.jsp.JspxParsing.a(JspxParsing.java:107)
at com.intellij.psi.impl.source.jsp.JspxParsing.parseJspDeclarations(JspxParsing.java:15)
at com.intellij.psi.impl.source.jsp.jspJava.JspClass$2.run(JspClass.java)
at com.intellij.psi.impl.source.jsp.jspJava.NonReentrantExecutor.execute(NonReentrantExecutor.java:8)
at com.intellij.psi.impl.source.jsp.jspJava.JspClass.b(JspClass.java:105)
at com.intellij.psi.impl.source.jsp.jspJava.JspClass.synchronizeWithXmlTree(JspClass.java:94)
at com.intellij.psi.impl.source.jsp.JspxFileImpl.getJavaRoot(JspxFileImpl.java:120)
at com.intellij.psi.impl.source.jsp.JspxFileImpl.getClasses(JspxFileImpl.java:61)
at com.intellij.ide.projectView.impl.ClassesTreeStructureProvider.modify(ClassesTreeStructureProvider.java:17)
at com.intellij.ide.util.treeView.AbstractTreeStructureBase.getChildElements(AbstractTreeStructureBase.java:2)
at com.intellij.ide.util.treeView.AbstractTreeBuilder.b(AbstractTreeBuilder.java:204)
at com.intellij.ide.util.treeView.AbstractTreeBuilder.updateSubtree(AbstractTreeBuilder.java:299)
at com.intellij.ide.util.treeView.AbstractTreeUpdater.updateSubtree(AbstractTreeUpdater.java:36)
at com.intellij.ide.util.treeView.AbstractTreeUpdater.performUpdate(AbstractTreeUpdater.java:32)
at com.intellij.ide.util.treeView.AbstractTreeUpdater$1.run(AbstractTreeUpdater.java:6)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:52)
at com.intellij.util.ui.update.MergingUpdateQueue$1.run(MergingUpdateQueue.java:17)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:13)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:91)
at com.intellij.util.ui.update.MergingUpdateQueue.actionPerformed(MergingUpdateQueue.java:51)
at javax.swing.Timer.fireActionPerformed(Timer.java:271)
at javax.swing.Timer$DoPostEvent.run(Timer.java:201)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:85)
at com.intellij.ide.IdeEventQueue.a(IdeEventQueue.java:46)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:93)
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)


0
Comment actions Permalink

Attached is another file that causes 3353 problems -- it was fine in earlier builds (3341 for sure). I know that it's not great JSP, but it works in Weblogic, and the whole project is in maintenance mode, so I can't change it. :(

--Mike

com.intellij.ide.projectView.impl.AbstractProjectViewPSIPane$4: chars.length:525, start:193, end:188
java.lang.IndexOutOfBoundsException: chars.length:525, start:193, end:188
at com.intellij.util.text.CharArrayCharSequence.(CharArrayCharSequence.java:17) at com.intellij.psi.impl.source.tree.LeafElementImpl.(LeafElementImpl.java:1) at com.intellij.psi.impl.source.tree.LeafPsiElement.(LeafPsiElement.java:14) at com.intellij.psi.impl.source.xml.XmlTokenImpl.(XmlTokenImpl.java:8) at com.intellij.psi.impl.source.tree.Factory.createLeafElement(Factory.java:274) at com.intellij.psi.impl.source.parsing.tabular.grammar.impl.TerminalImpl.createElement(TerminalImpl.java:28) at com.intellij.psi.impl.source.parsing.tabular.impl.ParserImpl.a(ParserImpl.java:47) at com.intellij.psi.impl.source.parsing.tabular.impl.ParserImpl.parse(ParserImpl.java:116) at com.intellij.psi.impl.source.parsing.tabular.impl.ParserImpl.parse(ParserImpl.java:259) at com.intellij.psi.impl.source.jsp.JspxParsing.parseJsp(JspxParsing.java:200) at com.intellij.psi.impl.source.tree.JspElementType$1.parseContents(JspElementType.java:1) at com.intellij.psi.impl.source.tree.ChameleonElement.transform(ChameleonElement.java:48) at com.intellij.psi.impl.source.parsing.ChameleonTransforming.transform(ChameleonTransforming.java:46) at com.intellij.psi.impl.source.tree.ChameleonElement.getTransformedLastOrSelf(ChameleonElement.java:32) at com.intellij.psi.impl.source.tree.SharedImplUtil.getLastChild(SharedImplUtil.java:31) at com.intellij.psi.impl.source.TreeWrapperPsiElement.getLastChild(TreeWrapperPsiElement.java:35) at com.intellij.psi.impl.source.jsp.JspJavaTextGenerator.]]>(JspJavaTextGenerator.java:9)
at com.intellij.psi.impl.source.jsp.JspxParsing.a(JspxParsing.java:107)
at com.intellij.psi.impl.source.jsp.JspxParsing.parseJspDeclarations(JspxParsing.java:15)
at com.intellij.psi.impl.source.jsp.jspJava.JspClass$2.run(JspClass.java)
at com.intellij.psi.impl.source.jsp.jspJava.NonReentrantExecutor.execute(NonReentrantExecutor.java:8)
at com.intellij.psi.impl.source.jsp.jspJava.JspClass.b(JspClass.java:105)
at com.intellij.psi.impl.source.jsp.jspJava.JspClass.synchronizeWithXmlTree(JspClass.java:94)
at com.intellij.psi.impl.source.jsp.JspxFileImpl.getJavaRoot(JspxFileImpl.java:120)
at com.intellij.psi.impl.source.jsp.JspxFileImpl.getClasses(JspxFileImpl.java:61)
at com.intellij.ide.projectView.impl.ClassesTreeStructureProvider.modify(ClassesTreeStructureProvider.java:17)
at com.intellij.ide.util.treeView.AbstractTreeStructureBase.getChildElements(AbstractTreeStructureBase.java:2)
at com.intellij.ide.util.treeView.AbstractTreeBuilder.b(AbstractTreeBuilder.java:204)
at com.intellij.ide.util.treeView.AbstractTreeBuilder.updateSubtree(AbstractTreeBuilder.java:299)
at com.intellij.ide.util.treeView.AbstractTreeUpdater.updateSubtree(AbstractTreeUpdater.java:36)
at com.intellij.ide.util.treeView.AbstractTreeUpdater.performUpdate(AbstractTreeUpdater.java:32)
at com.intellij.ide.util.treeView.AbstractTreeUpdater$1.run(AbstractTreeUpdater.java:6)
at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:52)
at com.intellij.util.ui.update.MergingUpdateQueue$1.run(MergingUpdateQueue.java:17)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:13)
at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:91)
at com.intellij.util.ui.update.MergingUpdateQueue.actionPerformed(MergingUpdateQueue.java:51)
at javax.swing.Timer.fireActionPerformed(Timer.java:271)
at javax.swing.Timer$DoPostEvent.run(Timer.java:201)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:85)
at com.intellij.ide.IdeEventQueue.a(IdeEventQueue.java:46)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:93)
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)



Attachment(s):
Submodule.jsp
0
Comment actions Permalink

BTW, the error in the file causing the IndexOutOfBoundsException can be avoided
by simply importing javax.servlet.jsp.JspException -- doing this locally
works-around the problem.

--mike


0
Comment actions Permalink

In article <2e76fea384fbc8c733e664b53f80@news.intellij.net>,
mkwerle_no_spam@nospam.yahoo.com wrote:

BTW, the error in the file causing the IndexOutOfBoundsException can be
avoided
by simply importing javax.servlet.jsp.JspException -- doing this locally
works-around the problem.

--mike


Do you have an app server setup in idea and assigned to this web module?

R

0
Comment actions Permalink

Whoops -- I take it back -- the problem is actually the three hypens in the
HTML comments (i.e. <!--- some comment --->). The JspException import is
missing, also, but it's not what caused the exception.

--Mike

BTW, the error in the file causing the IndexOutOfBoundsException can
be avoided by simply importing javax.servlet.jsp.JspException -- doing
this locally works-around the problem.

--mike



0
Comment actions Permalink

In article <2e76fea384fbc8c733e664b53f80@news.intellij.net>,
mkwerle_no_spam@nospam.yahoo.com wrote:

>> BTW, the error in the file causing the IndexOutOfBoundsException can
>> be avoided by simply importing javax.servlet.jsp.JspException --
>> doing this locally works-around the problem.
>>
>> --mike
>>

Do you have an app server setup in idea and assigned to this web
module?

R


Yes, I have (JBoss), but our build is too complicated to use IDEA to package
things and deploy. Instead, I have it setup just well enough to get IDEA
to parse JSP files in our main web directory and rely on the ant script to
package and deploy.

--Mike


0
Comment actions Permalink

mkwerle_no_spam@nospam.yahoo.com wrote:


<?xml version='1.0'?>
<%
out.print( "<test/>");
%>


I have at least one JSP like this, but removing that didn't solve
anything, so I may have another....

checks

0
Comment actions Permalink

Igor Kuralenok (JetBrains) wrote:

We was not prepared to this NPE and had no logging in there. The only
way I see is to reduce project size step by step... I know it's pain but
we can't repeat this on our tests :(.


I've found a JSP that triggers the exception when manually opening the file.

Attached...

I'll be interested in knowing what with this file is causing grief?



Attachment(s):
wapView.jsp
0
Comment actions Permalink

Mark Derricutt wrote:

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<bean:define id="mailLogItem" name="wapForm" property="mailLog"/>
<wml>
<card id="wapview" title="<bean:write name="mailLogItem" property="outRecvMobileEmail" filter="true"/>">


I was thinking it might have been the outside the root node but that seems to not change anything. My guess is its the ]]> scriptlets...

0
Comment actions Permalink

Igor Kuralenok (JetBrains) wrote:

We was not prepared to this NPE and had no logging in there. The only
way I see is to reduce project size step by step... I know it's pain but
we can't repeat this on our tests :(.


I think I've pinned it down to JSPs that include constructs like:

"/> Which is hellishly invalid XML, but perfectly valid once rendered, and the struts JSP tag will render, and the resultant content would be: Mmm, nope.... Even: ]]>

gave the NPE

0
Comment actions Permalink

JSP Support is basically totally broken in the latest build for me (and
probably the last 4-5 released EAPs as well). Every JSP I has seems to crash
IntelliJ.

I can send along a zip of the most problematic JSPs if you'd like.

--Grant



"Mark Derricutt" <mark@talios.com> wrote in message
news:d7k5nk$vj0$1@is.intellij.net...

Igor Kuralenok (JetBrains) wrote:

>
>> We was not prepared to this NPE and had no logging in there. The only way
>> I see is to reduce project size step by step... I know it's pain but we
>> can't repeat this on our tests :(.
>

I think I've pinned it down to JSPs that include constructs like:

>

<card id="reply" title="<bean:write name="foo"/>"/>

>

Which is hellishly invalid XML, but perfectly valid once rendered, and the
struts JSP tag <bean:write/> will render, and the resultant content would
be:

>

<card id="reply" title="foo"/>

>

Mmm, nope....

>

Even:

>

<wml>
</wml>

>

gave the NPE



0
Comment actions Permalink

Hi,
Send, please, if the problem is different from using quotes inside
custom tag embedded in quoted attribute value
("/>]]>)

Grant Gochnauer wrote:

JSP Support is basically totally broken in the latest build for me (and
probably the last 4-5 released EAPs as well). Every JSP I has seems to crash
IntelliJ.

I can send along a zip of the most problematic JSPs if you'd like.

--Grant



"Mark Derricutt" <mark@talios.com> wrote in message
news:d7k5nk$vj0$1@is.intellij.net...

>>Igor Kuralenok (JetBrains) wrote:
>>
>>
>>>We was not prepared to this NPE and had no logging in there. The only way
>>>I see is to reduce project size step by step... I know it's pain but we
>>>can't repeat this on our tests :(.
>>
>>I think I've pinned it down to JSPs that include constructs like:
>>
>>"/> >> >>Which is hellishly invalid XML, but perfectly valid once rendered, and the >>struts JSP tag will render, and the resultant content would >>be: >> >> >> >>Mmm, nope.... >> >>Even: >> >> >> >> >>]]>gave the NPE




--
Best regards,
Maxim Mossienko
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0
Comment actions Permalink

Yes, they are JSPs that cause all sorts of internal exceptions.

I'll make a JIRA issue and attach.

--Grant


"Maxim Mossienko" <Maxim.Mossienko@jetbrains.com> wrote in message
news:d7kb7l$qt5$1@is.intellij.net...

Hi,
Send, please, if the problem is different from using quotes inside custom
tag embedded in quoted attribute value
(<card id="reply" title="<bean:write name="foo"/>"/>)

>

Grant Gochnauer wrote:

>> JSP Support is basically totally broken in the latest build for me (and
>> probably the last 4-5 released EAPs as well). Every JSP I has seems to
>> crash IntelliJ.
>>
>> I can send along a zip of the most problematic JSPs if you'd like.
>>
>> --Grant
>>
>>
>>
>> "Mark Derricutt" wrote in message >> news:d7k5nk$vj0$1@is.intellij.net... >> >>>Igor Kuralenok (JetBrains) wrote: >>> >>> >>>>We was not prepared to this NPE and had no logging in there. The only >>>>way I see is to reduce project size step by step... I know it's pain but >>>>we can't repeat this on our tests :(. >>> >>>I think I've pinned it down to JSPs that include constructs like: >>> >>> >>> >>>Which is hellishly invalid XML, but perfectly valid once rendered, and >>>the struts JSP tag will render, and the resultant content >>>would be: >>> >>> >>> >>>Mmm, nope.... >>> >>>Even: >>> >>> >>> >>> >>>gave the NPE >> >> >> > >]]>

--
Best regards,
Maxim Mossienko
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"



0
Comment actions Permalink

OK.

Here is the tracker:
http://www.jetbrains.net/jira/browse/IDEA-2383




"Maxim Mossienko" <Maxim.Mossienko@jetbrains.com> wrote in message
news:d7kb7l$qt5$1@is.intellij.net...

Hi,
Send, please, if the problem is different from using quotes inside custom
tag embedded in quoted attribute value
(<card id="reply" title="<bean:write name="foo"/>"/>)

>

Grant Gochnauer wrote:

>> JSP Support is basically totally broken in the latest build for me (and
>> probably the last 4-5 released EAPs as well). Every JSP I has seems to
>> crash IntelliJ.
>>
>> I can send along a zip of the most problematic JSPs if you'd like.
>>
>> --Grant
>>
>>
>>
>> "Mark Derricutt" wrote in message >> news:d7k5nk$vj0$1@is.intellij.net... >> >>>Igor Kuralenok (JetBrains) wrote: >>> >>> >>>>We was not prepared to this NPE and had no logging in there. The only >>>>way I see is to reduce project size step by step... I know it's pain but >>>>we can't repeat this on our tests :(. >>> >>>I think I've pinned it down to JSPs that include constructs like: >>> >>> >>> >>>Which is hellishly invalid XML, but perfectly valid once rendered, and >>>the struts JSP tag will render, and the resultant content >>>would be: >>> >>> >>> >>>Mmm, nope.... >>> >>>Even: >>> >>> >>> >>> >>>gave the NPE >> >> >> > >]]>

--
Best regards,
Maxim Mossienko
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"



0
Comment actions Permalink

Maxim Mossienko wrote:

Hi,
Send, please, if the problem is different from using quotes inside
custom tag embedded in quoted attribute value
(<card id="reply" title="<bean:write name="foo"/>"/>)


What do other people out there use for these style contructs? I've done
this because it works, but mixing up the " marks is ugly. I did try
mixing up and using ' and " for the different tags, but that doesn't
seem to solve the exceptions either...

0
Comment actions Permalink

In article <d7l2hm$bk2$1@is.intellij.net>,
Mark Derricutt <mark@talios.com> wrote:

Maxim Mossienko wrote:

Hi,
Send, please, if the problem is different from using quotes inside
custom tag embedded in quoted attribute value
(<card id="reply" title="<bean:write name="foo"/>"/>)


What do other people out there use for these style contructs? I've done
this because it works, but mixing up the " marks is ugly. I did try
mixing up and using ' and " for the different tags, but that doesn't
seem to solve the exceptions either...


I was under the impression that the standard was to always switch quotes
based on nesting so " ' " '' " ' " is the right way to quote something,
and I would be heavily in favor of IDEA staying that way so we can have
properly nested quotes... without the exceptions of course :D

R

0
Comment actions Permalink

Hello Robert,

As long as this is configurable (an inspection), of course. :)
I'm definitelly not in need of seeing more red on the legacy JSP pages, especially
if the app server has nothing to complain about.

Andrei

RS> I was under the impression that the standard was to always switch
RS> quotes based on nesting so " ' " '' " ' " is the right way to quote
RS> something, and I would be heavily in favor of IDEA staying that way
RS> so we can have properly nested quotes... without the exceptions of
RS> course :D
RS>
RS> R
RS>


0
Comment actions Permalink

andrei.oprea@rogers.com wrote:

As long as this is configurable (an inspection), of course. :)
I'm definitelly not in need of seeing more red on the legacy JSP pages,
especially if the app server has nothing to complain about.


I've favour a red mess over exceptions and no Project pane anyday!

0

Please sign in to leave a comment.