I've isolated the code that causes it...

          <p><button class="clearMultiButton" 
onclick="clearMulti(this.parentElement.parentElement);*$('#userModStatus')[0].value
 
= 'true';*return false;">Clear</button>Status</p>

If I remove the bold portion, no error. The JQuery selects a hidden input. 

On Monday, April 22, 2013 8:32:34 PM UTC-4, felix wrote:
>
> cool. I see where this is happening, and I think I know what's going 
> wrong, but I'm going to try to reconstruct a small testcase to verify. 
>
> On Mon, Apr 22, 2013 at 5:21 PM,  <[email protected] <javascript:>> 
> wrote: 
> > Here's what I found: 
> > 
> > FATAL_ERROR(6) EXCEPTION_IN_SERVICE: Service threw exception null 
> > java.lang.UnsupportedOperationException 
> >         at 
> com.google.caja.parser.ChildNodes.getMutableFacet(ChildNodes.java:131) 
> >         at 
> > 
> com.google.caja.parser.AbstractParseTreeNode.addChild(AbstractParseTreeNode.java:179)
>  
>
> >         at 
> > 
> com.google.caja.parser.AbstractParseTreeNode.access$600(AbstractParseTreeNode.java:40)
>  
>
> >         at 
> > 
> com.google.caja.parser.AbstractParseTreeNode$Insertion.apply(AbstractParseTreeNode.java:607)
>  
>
> >         at 
> > 
> com.google.caja.parser.AbstractParseTreeNode$MutationImpl.execute(AbstractParseTreeNode.java:462)
>  
>
> >         at 
> > 
> com.google.caja.parser.AbstractParseTreeNode.insertBefore(AbstractParseTreeNode.java:147)
>  
>
> >         at 
> > 
> com.google.caja.parser.AbstractParseTreeNode.appendChild(AbstractParseTreeNode.java:151)
>  
>
> >         at 
> > 
> com.google.caja.parser.quasiliteral.Scope.addStartStatement(Scope.java:241) 
> >         at 
> > 
> com.google.caja.parser.quasiliteral.SyntheticRuleSet$10.fire(SyntheticRuleSet.java:243)
>  
>
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:84) 
> >         at 
> com.google.caja.parser.quasiliteral.Rule.expandAllTo(Rule.java:202) 
> >         at 
> com.google.caja.parser.quasiliteral.Rule.expandAll(Rule.java:192) 
> >         at 
> > 
> com.google.caja.parser.quasiliteral.SyntheticRuleSet$3.fire(SyntheticRuleSet.java:102)
>  
>
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:84) 
> >         at 
> com.google.caja.parser.quasiliteral.Rule.expandAllTo(Rule.java:202) 
> >         at 
> com.google.caja.parser.quasiliteral.Rule.expandAll(Rule.java:192) 
> >         at 
> > 
> com.google.caja.parser.quasiliteral.SyntheticRuleSet$8.fire(SyntheticRuleSet.java:189)
>  
>
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:84) 
> >         at 
> > 
> com.google.caja.parser.quasiliteral.ES53Rewriter$7.fire(ES53Rewriter.java:397)
>  
>
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:84) 
> >         at 
> com.google.caja.parser.quasiliteral.Rule.expandAllTo(Rule.java:202) 
> >         at 
> com.google.caja.parser.quasiliteral.Rule.expandAll(Rule.java:192) 
> >         at 
> > 
> com.google.caja.parser.quasiliteral.ES53Rewriter$3.fire(ES53Rewriter.java:238)
>  
>
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:84) 
> >         at 
> > 
> com.google.caja.parser.quasiliteral.ES53Rewriter$6.fire(ES53Rewriter.java:352)
>  
>
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:84) 
> >         at 
> > 
> com.google.caja.parser.quasiliteral.ES53Rewriter$5.fire(ES53Rewriter.java:309)
>  
>
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:84) 
> >         at 
> com.google.caja.parser.quasiliteral.Rewriter.expand(Rewriter.java:189) 
> >         at 
> > 
> com.google.caja.plugin.ExpressionSanitizerCaja.sanitize(ExpressionSanitizerCaja.java:57)
>  
>
> >         at 
> > 
> com.google.caja.plugin.stages.ValidateJavascriptStage.apply(ValidateJavascriptStage.java:61)
>  
>
> >         at 
> > 
> com.google.caja.plugin.stages.ValidateJavascriptStage.apply(ValidateJavascriptStage.java:42)
>  
>
> >         at com.google.caja.util.Pipeline.applyStage(Pipeline.java:41) 
> >         at 
> > 
> com.google.caja.plugin.PluginCompiler$1.applyStage(PluginCompiler.java:151) 
> >         at 
> > 
> com.google.caja.plugin.PluginCompiler$1.applyStage(PluginCompiler.java:139) 
> >         at com.google.caja.util.Pipeline.apply(Pipeline.java:35) 
> >         at 
> com.google.caja.plugin.PluginCompiler.run(PluginCompiler.java:241) 
> >         at 
> com.google.caja.service.HtmlHandler.cajoleHtml(HtmlHandler.java:126) 
> >         at 
> com.google.caja.service.HtmlHandler.apply(HtmlHandler.java:85) 
> >         at 
> > 
> com.google.caja.service.CajolingService.applyHandler(CajolingService.java:312)
>  
>
> >         at 
> > 
> com.google.caja.service.CajolingService.doHandle(CajolingService.java:260) 
> >         at 
> com.google.caja.service.CajolingService.handle(CajolingService.java:110) 
> >         at 
> com.google.caja.service.CajolingServlet.handle(CajolingServlet.java:168) 
> >         at 
> com.google.caja.service.CajolingServlet.doGet(CajolingServlet.java:155) 
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) 
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
> >         at 
> > 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306)
>  
>
> >         at 
> > 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  
>
> >         at 
> > 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
>  
>
> >         at 
> > 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
>  
>
> >         at 
> > 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164) 
>
> >         at 
> > 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 
>
> >         at 
> > 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541) 
> >         at 
> > 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>  
>
> >         at 
> > 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:383) 
> >         at 
> > 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243) 
> >         at 
> > 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
>  
>
> >         at 
> > 
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:288)
>  
>
> >         at 
> > 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  
>
> >         at 
> > 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>  
>
> >         at java.lang.Thread.run(Thread.java:680) 
> > 
> > 
> > 
> > On Monday, April 22, 2013 7:32:16 PM UTC-4, [email protected]: 
> >> 
> >> Ok I'll try that and let you know. I don't think it would be so bad for 
> >> the owner of said server to see a trace in their logs (or not based on 
> >> configuration of course). I certainly agree that you shouldn't normally 
> send 
> >> traces back to the client. :). 
> >> 
> >> On Monday, April 22, 2013 4:36:10 PM UTC-4, [email protected] 
> >> wrote: 
> >>> 
> >>> 
> >>> I got this: 
> >>> 
> >>> 
> >>> 
> {"level":6,"name":"FATAL_ERROR","type":"EXCEPTION_IN_SERVICE","message":"Service
>  
>
> >>> threw exception java.lang.NullPointerException"} 
> >>> 
> >>> However it's unclear how to proceed. There doesn't seem to be a stack 
> >>> trace anywhere... 
> >>> It looks like a bug, but obviously I can't send you my whole program, 
> so 
> >>> I want to track down what causes it. (and see if it's easy to work 
> around as 
> >>> well) 
> >>> 
> >>> 
> > -- 
> > 
> > --- 
> > You received this message because you are subscribed to the Google 
> Groups 
> > "Google Caja Discuss" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an 
> > email to [email protected] <javascript:>. 
>
> > For more options, visit https://groups.google.com/groups/opt_out. 
> > 
> > 
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Google Caja Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to