Hi Everyone,

In normal mode everything runs fine. But when running a jmeter test with 40 concurrent users, the AbstractWidgetDefinitionBuilder throws a NullPointerException. see the full stacktrace at (1)

java.lang.NullPointerException
at org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.setupDefinition(AbstractWidgetDefinitionBuilder.java:109)
(... see 1)

Probably the reason for this error is that the function

public WidgetDefinition buildWidgetDefinition(Element widgetElement, WidgetDefinitionBuilderContext context)
   throws Exception {
it is not thread-save.

I tried the same test with a little modification (buildWidgetDefinition is synchronized)

public synchronized WidgetDefinition buildWidgetDefinition(Element widgetElement, WidgetDefinitionBuilderContext context)
   throws Exception {

The error (1) doesn't occur anymore, but another one: (see 2) It seems that the cause for this is very similar to the one above.

Has one of you seen this error when running a stress test? What could i do to avoid that problem? (i could go on and modify this function to synchronized as well, but hopefully there is a better solution for this. )

Stacktraces:

(2)

java.lang.NullPointerException
at org.apache.cocoon.forms.formmodel.WidgetDefinitionBuilderContext.<init>( .java:36) at org.apache.cocoon.forms.formmodel.AbstractContainerDefinitionBuilder.setupContainer(AbstractContainerDefinitionBuilder.java:48) at org.apache.cocoon.forms.formmodel.FormDefinitionBuilder.buildWidgetDefinition(FormDefinitionBuilder.java:63) at org.apache.cocoon.forms.DefaultFormManager.createFormDefinition(DefaultFormManager.java:220) at org.apache.cocoon.forms.DefaultFormManager.createFormDefinition(DefaultFormManager.java:206) at org.apache.cocoon.forms.DefaultFormManager.createForm(DefaultFormManager.java:150)
        at sun.reflect.GeneratedMethodAccessor252.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:145)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:204) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3085) at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2251) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:161) at org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2172) at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:257) at org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:127) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3085) at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2251) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:161) at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:340) at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2758) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:159) at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:915) at org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction(FOM_JavaScriptInterpreter.java:767) at org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java:139) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:139) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:139) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:235) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:177) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:253)
        at org.apache.cocoon.Cocoon.process(Cocoon.java:699)
at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1154)
        at at.workflow.webdesk.Webdesk.service(Webdesk.java:97)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.cocoon.servlet.ParanoidCocoonServlet.service(ParanoidCocoonServlet.java:317) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at at.workflow.webdesk.tools.filters.GZIPFilter.doFilter(GZIPFilter.java:31) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:534)


(1)
java.lang.NullPointerException
at org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.setupDefinition(AbstractWidgetDefinitionBuilder.java:109) at org.apache.cocoon.forms.formmodel.AbstractDatatypeWidgetDefinitionBuilder.setupDefinition(AbstractDatatypeWidgetDefinitionBuilder.java:53) at org.apache.cocoon.forms.formmodel.AbstractDatatypeWidgetDefinitionBuilder.setupDefinition(AbstractDatatypeWidgetDefinitionBuilder.java:46) at org.apache.cocoon.forms.formmodel.FieldDefinitionBuilder.setupDefinition(FieldDefinitionBuilder.java:39) at org.apache.cocoon.forms.formmodel.FieldDefinitionBuilder.buildWidgetDefinition(FieldDefinitionBuilder.java:33) at org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.buildWidgetDefinition(AbstractWidgetDefinitionBuilder.java:91) at org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.buildAnotherWidgetDefinition(AbstractWidgetDefinitionBuilder.java:178) at org.apache.cocoon.forms.formmodel.AbstractContainerDefinitionBuilder.setupContainer(AbstractContainerDefinitionBuilder.java:63) at org.apache.cocoon.forms.formmodel.FormDefinitionBuilder.buildWidgetDefinition(FormDefinitionBuilder.java:63) at org.apache.cocoon.forms.DefaultFormManager.createFormDefinition(DefaultFormManager.java:220) at org.apache.cocoon.forms.DefaultFormManager.createFormDefinition(DefaultFormManager.java:206) at org.apache.cocoon.forms.DefaultFormManager.createForm(DefaultFormManager.java:150)
   at sun.reflect.GeneratedMethodAccessor222.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:324)
   at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:145)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:204) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3085)
   at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2251)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:161) at org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2172)
   at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:257)
at org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:127) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3085)
   at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2251)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:161) at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:340) at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2758) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:159)
   at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:915)
at org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction(FOM_JavaScriptInterpreter.java:762) at org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java:139) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:139) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:235) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:177) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:253)
   at org.apache.cocoon.Cocoon.process(Cocoon.java:699)
at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1154)
   at at.workflow.webdesk.Webdesk.service(Webdesk.java:95)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.cocoon.servlet.ParanoidCocoonServlet.service(ParanoidCocoonServlet.java:317) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at at.workflow.webdesk.tools.filters.GZIPFilter.doFilter(GZIPFilter.java:31) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
   at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
   at java.lang.Thread.run(Thread.java:534)
ERROR : JavaException: java.lang.NullPointerException: null - at.workflow.webdesk.ta.actions.doBooking [2008-01-15 16:41:00,578]
java.lang.NullPointerException
at org.apache.cocoon.forms.formmodel.AbstractWidgetDefinitionBuilder.setupDefinition(AbstractWidgetDefinitionBuilder.java:109) at org.apache.cocoon.forms.formmodel.FormDefinitionBuilder.buildWidgetDefinition(FormDefinitionBuilder.java:60) at org.apache.cocoon.forms.DefaultFormManager.createFormDefinition(DefaultFormManager.java:220) at org.apache.cocoon.forms.DefaultFormManager.createFormDefinition(DefaultFormManager.java:206) at org.apache.cocoon.forms.DefaultFormManager.createForm(DefaultFormManager.java:150)
   at sun.reflect.GeneratedMethodAccessor222.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:324)
   at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:145)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:204) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3085)
   at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2251)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:161) at org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2172)
   at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:257)
at org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:127) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:3085)
   at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:2251)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:161) at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:340) at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2758) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:159)
   at org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:915)
at org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter.callFunction(FOM_JavaScriptInterpreter.java:762) at org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke(CallFunctionNode.java:139) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:139) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:235) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:177) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:253)
   at org.apache.cocoon.Cocoon.process(Cocoon.java:699)
at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1154)
   at at.workflow.webdesk.Webdesk.service(Webdesk.java:95)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.cocoon.servlet.ParanoidCocoonServlet.service(ParanoidCocoonServlet.java:317) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at at.workflow.webdesk.tools.filters.GZIPFilter.doFilter(GZIPFilter.java:31) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
   at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
   at java.lang.Thread.run(Thread.java:534)

thanks in advance
--
harald



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to