GENERIC: Javascript error

Hi,

I have a Panelset which I bind to a UIBackbasePanelSet in the backingBean.
The jsp code snippet is below

        <bjsf:panelSet binding="#{projectBean.panelSet}">
       
        </bjsf:panelSet>

I have a method which sets the panelset values.

        public void editProjectInfo(ActionEvent event){
                setPanelSet(new UIBackbasePanelSet());
                panelSet.setColumns("2");
                panelSet.setId("editPanel");
               
                Iterator<ProjectUDF> udfIterator = projectUDFList.iterator();
                ProjectUDF projectUDF = new ProjectUDF();

                while ( udfIterator != null && udfIterator.hasNext()){
                        projectUDF = udfIterator.next();
       
                        UIBackbaseOutputLabel outputLabel = new UIBackbaseOutputLabel();
                        outputLabel.setId("label"+String.valueOf(projectUDF.getUDFId()));
                        outputLabel.setValue(projectUDF.getUDFName());
                        setPanelOne(new UIBackbasePanel());
                        panelOne.addChild(outputLabel);

                        UIBackbaseInputText input = new UIBackbaseInputText();
                        input.setId("value"+String.valueOf(projectUDF.getUDFId()));
                        input.setValue(projectUDF.getUDFValue());
                        setPanelTwo(new UIBackbasePanel());
                        panelTwo.addChild(input);
                       
                        panelSet.addChild(panelOne);
                        panelSet.addChild(panelTwo);
                }

}

When I run this,
I am getting this error in IE , " GENERIC: Javascript error: "'viewNode' is null or not an object"
The Error message in FF is " GENERIC: Javascript error: "aChildren[i] has no properties". "

Also getting an error message in the server console:

java.lang.IllegalStateException: getOutputStream() has already been called for this response
        at compressionFilters.CompressionServletResponseWrapper.getWriter(CompressionServletResponseWrapper.java:225)
        at com.backbase.bjsf.context.BackbaseFacesContext.sendAnswer2(Unknown Source)
        at com.backbase.bjsf.context.BackbaseContext.sendAnswer2(Unknown Source)
        at com.backbase.bjsf.application.BackbaseViewHandler.renderView(Unknown Source)
        at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
        at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:140)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.backbase.bjsf.webapp.filter.UploadFilter.doFilter(Unknown Source)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.backbase.bjsf.webapp.filter.BackbaseApplicationFilter.doFilter(Unknown Source)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at compressionFilters.CompressionFilter.doFilter(CompressionFilter.java:191)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
        at java.lang.Thread.run(Unknown Source)

Can anyone please tell me why this error is coming up, and esp why the IllegalStateException is occuring.

Jay

Hi Jay, I've been watching

Hi Jay,
I've been watching your code and I think yo don't need to call "setPanelSet" because you already have a bindind.
If you have another binding to panelOne and panelTwo, you wouldn't need to call "setPanelOne" and "setPanelTwo" neither.
If you want to create these two panels inside panelSet I'd try something like:

        <bjsf:panelSet binding="#{projectBean.panelSet}" columns="2" id="editPanel">
       
        </bjsf:panelSet>


        public void editProjectInfo(ActionEvent event){
               
                Iterator<ProjectUDF> udfIterator = projectUDFList.iterator();
                ProjectUDF projectUDF = null;

                while ( udfIterator != null && udfIterator.hasNext()){
                       projectUDF = udfIterator.next();
       
                        UIBackbaseOutputLabel outputLabel = new UIBackbaseOutputLabel();
                        outputLabel.setId("label"+String.valueOf(projectUDF.getUDFId()));
                        outputLabel.setValue(projectUDF.getUDFName());
                        UIBackbasePanel panelOne = new UIBackbasePanel();
                        panelOne.addChild(outputLabel);

                        UIBackbaseInputText input = new UIBackbaseInputText();
                        input.setId("value"+String.valueOf(projectUDF.getUDFId()));
                        input.setValue(projectUDF.getUDFValue());
                        UIBackbasePanel panelTwo = new UIBackbasePanel();
                        panelTwo.addChild(input);
                       
                        panelSet.addChild(panelOne);
                        panelSet.addChild(panelTwo);
                }

}

Note that I've written the code directly on the post, could have some errors.
Hope this helps.
David

Hi Jay, I've been watching

Hi Jay,
I've been watching your code and I think yo don't need to call "setPanelSet" because you already have a bindind.
If you have another binding to panelOne and panelTwo, you wouldn't need to call "setPanelOne" and "setPanelTwo" neither.
If you want to create these two panels inside panelSet I'd try something like:

        <bjsf:panelSet binding="#{projectBean.panelSet}" columns="2" id="editPanel">
       
        </bjsf:panelSet>


        public void editProjectInfo(ActionEvent event){
               
                Iterator<ProjectUDF> udfIterator = projectUDFList.iterator();
                ProjectUDF projectUDF = null;

                while ( udfIterator != null && udfIterator.hasNext()){
                       projectUDF = udfIterator.next();
       
                        UIBackbaseOutputLabel outputLabel = new UIBackbaseOutputLabel();
                        outputLabel.setId("label"+String.valueOf(projectUDF.getUDFId()));
                        outputLabel.setValue(projectUDF.getUDFName());
                        UIBackbasePanel panelOne = new UIBackbasePanel();
                        panelOne.addChild(outputLabel);

                        UIBackbaseInputText input = new UIBackbaseInputText();
                        input.setId("value"+String.valueOf(projectUDF.getUDFId()));
                        input.setValue(projectUDF.getUDFValue());
                        UIBackbasePanel panelTwo = new UIBackbasePanel();
                        panelTwo.addChild(input);
                       
                        panelSet.addChild(panelOne);
                        panelSet.addChild(panelTwo);
                }

}

Note that I've written the code directly on the post, could have some errors.
Hope this helps.
David