AppletTalk.com Forum Index AppletTalk.com
Java discussions newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

LinkedList NullPointerException occurs after switched from I

 
Post new topic   Reply to topic    AppletTalk.com Forum Index -> ibm.software.java.linux
View previous topic :: View next topic  
Author Message
Tohru Kao
Guest





PostPosted: Mon Jul 07, 2003 5:56 pm    Post subject: LinkedList NullPointerException occurs after switched from I Reply with quote



Hi,

I encounter a NullPointerException after I switched from IBM JVM 1.4.0 to
IBM JVM 1.4.1.

The component I use is:

Linux 7.3
IBM JVM 1.4.1
freemarker 1.5.2
tomcat 4.1.18

Please give any advice about this NullPointerException which I didn't
encounter in IBM JVM 1.4.0.

Here is the stack trace:
java.lang.NullPointerException
at java.util.LinkedList$ListItr.next(LinkedList.java:510)
at freemarker.template.expression.ExpressionBuilder.associateOperators(ExpressionBuilder.java)
at freemarker.template.expression.ExpressionBuilder.buildExpression(ExpressionBuilder.java)
at freemarker.template.expression.ExpressionBuilder.build(ExpressionBuilder.java)
at freemarker.template.compiler.StandardTemplateParser.parseExpression(StandardTemplateParser.java)
at freemarker.template.compiler.StandardTemplateParser.parseVariable(StandardTemplateParser.java)
at freemarker.template.compiler.StandardTemplateParser.parseVariableInstruction(StandardTemplateParser.java)
at freemarker.template.compiler.StandardTemplateParser.getNextInstruction(StandardTemplateParser.java)
at freemarker.template.compiler.LinkedListTemplateBuilder.buildLinks(LinkedListTemplateBuilder.java)
at freemarker.template.compiler.LinkedListTemplateBuilder.buildGenericBody(LinkedListTemplateBuilder.java)
at freemarker.template.compiler.LinkedListTemplateBuilder.buildStatement(LinkedListTemplateBuilder.java)
at freemarker.template.instruction.GenericStartInstruction.callBuilder(GenericStartInstruction.java)
at freemarker.template.compiler.LinkedListTemplateBuilder.buildLinks(LinkedListTemplateBuilder.java)
at freemarker.template.compiler.LinkedListTemplateBuilder.buildStatement(LinkedListTemplateBuilder.java)
at freemarker.template.instruction.IfInstruction.callBuilder(IfInstruction.java)
at freemarker.template.compiler.LinkedListTemplateBuilder.buildLinks(LinkedListTemplateBuilder.java)
at freemarker.template.compiler.LinkedListTemplateBuilder.build(LinkedListTemplateBuilder.java)
at freemarker.template.Template.compileText(Template.java)
at freemarker.template.Template.compileFromStream(Template.java)
at freemarker.template.Template.compileFromStream(Template.java)
at freemarker.template.Template.compileFromFile(Template.java)
at freemarker.template.Template.(Template.java)
at freemarker.template.FileTemplateCache.loadTemplate(FileTemplateCache.java)
at freemarker.template.FileTemplateCache.getLatestTemplate(FileTemplateCache.java)
at freemarker.template.FileTemplateCache.getTemplate(FileTemplateCache.java)
at org.mytest.HtmlTemplateController.getTemplate(HtmlTemplateController.java:73)
at org.mytest.HtmlTemplateController.getTemplate(HtmlTemplateController.java:99)
at org.mytest.MyServlet.doGet(MyServlet.java:101)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:261)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:360)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:632)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:590)
at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:707)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
at java.lang.Thread.run(Thread.java:568)


TIA
-Tohru



Back to top
Roedy Green
Guest





PostPosted: Sat Jul 12, 2003 5:56 pm    Post subject: Re: LinkedList NullPointerException occurs after switched fr Reply with quote



On Mon, 07 Jul 2003 10:56:48 -0700, Tohru Kao <jacoder (AT) yahoo (DOT) com>
wrote or quoted :

Quote:
at java.util.LinkedList$ListItr.next(LinkedList.java:510)

possibly one implementation filters out null elements from a
LinkedList and other preserves them??

--
Canadian Mind Products, Roedy Green.
Coaching, problem solving, economical contract programming.
See http://mindprod.com/jgloss/jgloss.html for The Java Glossary.

Back to top
xarax
Guest





PostPosted: Sat Jul 12, 2003 10:49 pm    Post subject: Re: LinkedList NullPointerException occurs after switched fr Reply with quote



Tohru Kao <jacoder (AT) yahoo (DOT) com> wrote

Quote:
Hi,

I encounter a NullPointerException after I switched from IBM JVM 1.4.0 to
IBM JVM 1.4.1.

The component I use is:

Linux 7.3
IBM JVM 1.4.1
freemarker 1.5.2
tomcat 4.1.18

Please give any advice about this NullPointerException which I didn't
encounter in IBM JVM 1.4.0.

Here is the stack trace:
java.lang.NullPointerException
at java.util.LinkedList$ListItr.next(LinkedList.java:510)
/snip/


You'll have to look at the source for LinkedList.java near
line 510 to see what it's trying to do. Most likely, it
is advancing to its next pointer and getting a null value.

The list is probably corrupted by a concurrent modification
by another thread. Iteration doesn't guarantee that it will
detect all such modifications. The LinkedList implementation
is not synchronized.

Thus, I suspect that the application that is using the
LinkedList is broken, rather than the LinkedList implementation.

Back to top
Neil Masson
Guest





PostPosted: Mon Jul 14, 2003 8:12 am    Post subject: Re: LinkedList NullPointerException occurs after switched fr Reply with quote

xarax wrote:

Quote:
Tohru Kao <jacoder (AT) yahoo (DOT) com> wrote in message
news:<7qcjgv4oagp3ushf57c4gd5r991dbratcj (AT) 4ax (DOT) com>...
Hi,

I encounter a NullPointerException after I switched from IBM JVM 1.4.0 to
IBM JVM 1.4.1.

The component I use is:

Linux 7.3
IBM JVM 1.4.1
freemarker 1.5.2
tomcat 4.1.18

Please give any advice about this NullPointerException which I didn't
encounter in IBM JVM 1.4.0.

Here is the stack trace:
java.lang.NullPointerException
at java.util.LinkedList$ListItr.next(LinkedList.java:510)
/snip/

You'll have to look at the source for LinkedList.java near
line 510 to see what it's trying to do. Most likely, it
is advancing to its next pointer and getting a null value.

The list is probably corrupted by a concurrent modification
by another thread. Iteration doesn't guarantee that it will
detect all such modifications. The LinkedList implementation
is not synchronized.

Thus, I suspect that the application that is using the
LinkedList is broken, rather than the LinkedList implementation.

This analysis is spot on. What has changed in 1.4.1 is that the
next and prev pointers of a removed list element are set to null.
So perhaps one thread is removing an object from a list, while
another is iterating through the list. You might have got away
with this before, but now a NullPointerException will be thrown.

Neil

Back to top
Display posts from previous:   
Post new topic   Reply to topic    AppletTalk.com Forum Index -> ibm.software.java.linux All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.