5 Replies Latest reply on Dec 30, 2007 1:44 PM by pmuir

    seam integration with trinidad

    pratap_pps

      Hi,

      I am using seam 2.0.0, JSF 1.2 and trinidad 1.2.3. I am getting the below error when i try to do a JSF backing bean injection through seam.
      1) createRuleBean is my backing bean

      javax.faces.FacesException: javax.el.PropertyNotFoundException: /PEM/createRule.xhtml @47,77 binding="#{createRuleBean.listBox02}": Target Unreachable, identifier 'createRuleBean' resolved to null
      at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:240)
      at org.jboss.seam.jsf.SeamApplication.createComponent(SeamApplication.java:327)
      at com.sun.facelets.tag.jsf.ComponentHandler.createComponent(ComponentHandler.java:224)
      at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:139)
      at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
      at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
      at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
      at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
      at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
      at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
      at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
      at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
      at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
      at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
      at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
      at com.sun.facelets.tag.jsf.ComponentHandler.applyNextHandler(ComponentHandler.java:314)
      at com.sun.facelets.tag.jsf.ComponentHandler.apply(ComponentHandler.java:169)
      at com.sun.facelets.tag.ui.DefineHandler.applyDefinition(DefineHandler.java:64)
      at com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:131)
      at com.sun.facelets.impl.DefaultFaceletContext$TemplateManager.apply(DefaultFaceletContext.java:310)
      at com.sun.facelets.impl.DefaultFaceletContext.includeDefinition(DefaultFaceletContext.java:280)
      at com.sun.facelets.tag.ui.InsertHandler.apply(InsertHandler.java:68)
      at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
      at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
      at com.sun.facelets.tag.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:47)
      at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
      at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:248)
      at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:294)
      at com.sun.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:273)
      at com.sun.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:144)
      at com.sun.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:113)
      at com.sun.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:49)
      at com.sun.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:25)
      at com.sun.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:95)
      at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:524)
      at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:567)
      at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:178)
      at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:175)
      at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
      at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:216)
      at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
      at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
      at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:966)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:907)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._invokeDoFilter(TrinidadFilterImpl.java:241)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:198)
      at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:141)
      at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
      at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
      at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:68)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:44)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
      at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
      at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:60)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:150)
      at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
      at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
      at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:696)
      at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:641)
      at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:475)
      at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:463)
      at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3107)
      at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238)
      at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
      at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1425)
      at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:92)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394)
      at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:274)
      at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
      at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
      at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152)
      at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213)
      at com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195)
      at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
      at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:193)
      at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:725)
      at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:847)
      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1498)
      Caused by: javax.el.PropertyNotFoundException: /PEM/createRule.xhtml @47,77 binding="#{createRuleBean.listBox02}": Target Unreachable, identifier 'createRuleBean' resolved to null
      at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:95)
      at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:237)
      ... 91 more

        • 1. Re: seam integration with trinidad
          pmuir

          What does createRuleBean look like?

          • 2. Re: seam integration with trinidad
            pratap_pps

            Below is the code for CreateRuleBean...

            package org.apache.myfaces.trinidaddemo.PEM.backingBean;

            import java.util.Arrays;
            import java.util.List;

            import javax.faces.event.ValueChangeEvent;
            import javax.faces.model.SelectItem;

            import org.apache.myfaces.trinidad.component.core.input.CoreInputFile;
            import org.apache.myfaces.trinidad.component.core.input.CoreInputText;
            import org.apache.myfaces.trinidad.component.core.input.CoreSelectBooleanCheckbox;
            import org.apache.myfaces.trinidad.component.core.input.CoreSelectOneChoice;
            import org.apache.myfaces.trinidad.component.core.nav.CoreCommandButton;
            import org.apache.myfaces.trinidad.component.core.output.CoreOutputLabel;
            import org.jboss.seam.ScopeType;
            import org.jboss.seam.annotations.*;

            @Name("dataRestoreBean")
            @Scope(ScopeType.SESSION)
            /**
            *
            * Backing bean for the createRule page
            *
            */
            public class CreateRuleBean
            {
            private CoreOutputLabel label01;
            private CoreSelectOneChoice listBox02;
            private CoreOutputLabel label02;
            private CoreInputFile inputFile01;
            private CoreSelectOneChoice listBox03;
            private CoreSelectOneChoice listBox04;
            private CoreCommandButton btn01;
            private CoreCommandButton btn02;
            private CoreCommandButton btn03;
            private CoreCommandButton btn04;
            private CoreInputText inputText03;
            private CoreInputText inputText04;
            private String rule;
            private String fileName;
            private String propertyValue;
            private String dataSet;
            private String dataSetName;
            private List tableNames;
            private List properties;
            private List equalityOperators;
            private String equalityOperator;

            private CoreSelectBooleanCheckbox chkBox1;
            public CoreSelectBooleanCheckbox getChkBox1() {
            return chkBox1;
            }
            public void setChkBox1(CoreSelectBooleanCheckbox chkBox1) {
            this.chkBox1 = chkBox1;
            }
            public String getPropertyValue() {
            return propertyValue;
            }
            public void setPropertyValue(String propertyValue) {
            this.propertyValue = propertyValue;
            }
            public String getFileName() {
            return fileName;
            }
            public void setFileName(String fileName) {
            this.fileName = fileName;
            }
            public String getRule() {
            return rule;
            }
            public void setRule(String rule) {
            this.rule = rule;
            }
            public CoreOutputLabel getLabel01() {
            return label01;
            }
            public void setLabel01(CoreOutputLabel label01) {
            this.label01 = label01;
            }
            public CoreSelectOneChoice getListBox02() {
            return listBox02;
            }
            public void setListBox02(CoreSelectOneChoice listBox02) {
            this.listBox02 = listBox02;
            }
            public CoreOutputLabel getLabel02() {
            return label02;
            }
            public void setLabel02(CoreOutputLabel label02) {
            this.label02 = label02;
            }
            public CoreInputFile getInputFile01() {
            return inputFile01;
            }
            public void setInputFile01(CoreInputFile inputFile01) {
            this.inputFile01 = inputFile01;
            }
            public CoreSelectOneChoice getListBox03() {
            return listBox03;
            }
            public void setListBox03(CoreSelectOneChoice listBox03) {
            this.listBox03 = listBox03;
            }

            public List getTableNames() {
            return tableNames;
            }
            public void setTableNames(List tableNames) {
            this.tableNames = tableNames;
            }
            public CoreCommandButton getBtn01() {
            return btn01;
            }
            public void setBtn01(CoreCommandButton btn01) {
            this.btn01 = btn01;
            }
            public CoreCommandButton getBtn02() {
            return btn02;
            }
            public void setBtn02(CoreCommandButton btn02) {
            this.btn02 = btn02;
            }
            public CoreCommandButton getBtn03() {
            return btn03;
            }
            public void setBtn03(CoreCommandButton btn03) {
            this.btn03 = btn03;
            }
            public CoreCommandButton getBtn04() {
            return btn04;
            }
            public void setBtn04(CoreCommandButton btn04) {
            this.btn04 = btn04;
            }

            public List getProperties() {
            return properties;
            }
            public void setProperties(List properties) {
            this.properties = properties;
            }

            public List getEqualityOperators() {
            return equalityOperators;
            }
            public void setEqualityOperators(List equalityOperators) {
            this.equalityOperators = equalityOperators;
            }
            public void dataSetChangeEvent(ValueChangeEvent changeEvent)
            {
            String newValue = (String)changeEvent.getNewValue();
            if(newValue == null)
            {
            inputFile01.setStyleClass("displayNone");
            listBox02.setStyleClass("displayBox");
            setTableNames(null);
            setProperties(null);
            setEqualityOperators(null);
            }
            else
            {
            if(newValue.equalsIgnoreCase("Table"))
            {
            List tableNames = Arrays.asList(new SelectItem[]{new SelectItem("Table01","Table01"),
            new SelectItem("Table02","Table02"),new SelectItem("Table03","Table03")});
            List properties = Arrays.asList(new SelectItem[]{new SelectItem("column1","column1"),new SelectItem("column2","column2")});
            setProperties(properties);
            setTableNames(tableNames);
            inputFile01.setStyleClass("displayNone");
            listBox02.setStyleClass("displayBox");
            /*List equalityOperators = Arrays.asList(new SelectItem[]{new SelectItem("opr1","=")});
            setEqualityOperators(equalityOperators);*/

            }
            else if(newValue.equalsIgnoreCase("File"))
            {
            inputFile01.setStyleClass("displayBox");
            listBox02.setStyleClass("displayNone");
            List properties = Arrays.asList(new SelectItem[]{new SelectItem("Size","Size"),
            new SelectItem("Age","Age")});
            setProperties(properties);
            /*List equalityOperators = Arrays.asList(new SelectItem[]{new SelectItem("opr2",">")});
            setEqualityOperators(equalityOperators);*/
            }
            }
            clear();
            }
            public void propertyValueChangeEvent(ValueChangeEvent changeEvent)
            {
            String newValue = (String)changeEvent.getNewValue();
            if(newValue == null)
            {

            }
            else
            {
            if(!listBox04.isDisabled() && listBox04.getValue() != null)
            {
            setText(inputText04, listBox04.getValue().toString());
            }
            setText(inputText04, newValue);
            inputText03.setDisabled(true);
            listBox04.setDisabled(true);
            //inputText03.setValue(null);
            btn01.setDisabled(false);
            btn02.setDisabled(false);

            }
            }
            public void andOperatorPressed()
            {
            setText(inputText04,"&&");
            btn01.setDisabled(true);
            btn02.setDisabled(true);
            btn03.setDisabled(false);
            //btn04.setDisabled(true);
            listBox03.setDisabled(false);

            }
            public void orOperatorPressed()
            {
            setText(inputText04,"||");
            btn01.setDisabled(true);
            btn02.setDisabled(true);
            btn03.setDisabled(false);
            //btn04.setDisabled(true);
            listBox03.setDisabled(false);
            }
            /*public void leftBracketPressed()
            {
            btn01.setDisabled(true);
            btn02.setDisabled(true);
            btn03.setDisabled(true);
            btn04.setDisabled(false);
            listBox03.setDisabled(false);
            inputText04.setValue(inputText04.getValue().toString()+"(");
            }*/
            public void bracketPressed()
            {
            setText(inputText04,"()");
            btn01.setDisabled(true);
            btn02.setDisabled(true);
            btn03.setDisabled(true);
            //btn04.setDisabled(false);
            listBox03.setDisabled(false);
            chkBox1.setDisabled(false);

            }
            /*public void rightBracketPressed()
            {
            btn01.setDisabled(true);
            btn02.setDisabled(true);
            btn03.setDisabled(true);
            btn04.setDisabled(true);
            listBox03.setDisabled(false);
            inputText04.setValue(inputText04.getValue().toString()+")");
            }*/
            public void propertyChangeEvent(ValueChangeEvent changeEvent)
            {
            String newValue = (String)changeEvent.getNewValue();
            if(newValue == null)
            {
            setEqualityOperators(null);
            listBox04.setDisabled(false);
            }
            else
            {
            List equalityOperators = Arrays.asList(new SelectItem[]{new SelectItem("=","="),new SelectItem(">",">")});
            setEqualityOperators(equalityOperators);

            /*if(inputText04.getValue() == null)
            {
            setText(inputText04,newValue);
            }
            else
            {
            inputText04.setValue(inputText04.getValue().toString()+newValue);
            }*/
            setText(inputText04, newValue);
            listBox03.setDisabled(true);
            listBox04.setDisabled(false);
            if(listBox04.getValue() != null)
            {
            inputText03.setDisabled(false);
            }
            if(!btn01.isDisabled() || !btn02.isDisabled() || !btn03.isDisabled() || !btn04.isDisabled())
            {
            btn01.setDisabled(true);
            btn02.setDisabled(true);
            btn03.setDisabled(true);
            btn04.setDisabled(true);
            }
            }
            }
            public void equalityChangeEvent(ValueChangeEvent changeEvent)
            {
            String newValue = (String)changeEvent.getNewValue();
            if(newValue == null)
            {

            }
            else
            {
            setText(inputText04, newValue);
            listBox04.setDisabled(true);
            inputText03.setDisabled(false);
            }
            }
            public CoreInputText getInputText04() {
            return inputText04;
            }
            public void setInputText04(CoreInputText inputText04) {
            this.inputText04 = inputText04;
            }
            public CoreSelectOneChoice getListBox04() {
            return listBox04;
            }
            public void setListBox04(CoreSelectOneChoice listBox04) {
            this.listBox04 = listBox04;
            }
            public CoreInputText getInputText03() {
            return inputText03;
            }
            public void setInputText03(CoreInputText inputText03) {
            this.inputText03 = inputText03;
            }

            private void setText(CoreInputText inputText, String value)
            {
            boolean boxClicked = false;
            if(inputText.getValue() == null)
            {
            inputText.setValue(value);
            }
            else
            {
            String textVal = inputText.getValue().toString();
            if(chkBox1.getValue() != null)
            {
            boxClicked = ((Boolean)chkBox1.getValue()).booleanValue();
            }
            if(textVal.endsWith(")") && !boxClicked)
            {
            inputText.setValue(new StringBuffer(textVal.substring(0, textVal.length()-1)).append(value).append(")").toString());
            }
            else
            {
            inputText.setValue(textVal+value);
            }
            }
            }

            /*public void outOfBracketEvent(ValueChangeEvent valueChangeEvent)
            {
            boolean newValue = ((Boolean)valueChangeEvent.getNewValue()).booleanValue();
            if(newValue)
            {

            }
            }*/
            public String clear()
            {
            listBox03.setDisabled(false);
            dataSet = null;
            equalityOperator = null;
            listBox04.setDisabled(true);
            inputText03.setDisabled(true);
            propertyValue = null;
            btn01.setDisabled(true);
            btn02.setDisabled(true);
            btn03.setDisabled(true);
            chkBox1.setDisabled(true);
            chkBox1.setValue(new Boolean(false));
            inputText04.setDisabled(true);
            rule = null;
            return "clear";
            }
            public String getDataSet() {
            return dataSet;
            }
            public void setDataSet(String dataSet) {
            this.dataSet = dataSet;
            }
            public String getDataSetName() {
            return dataSetName;
            }
            public void setDataSetName(String dataSetName) {
            this.dataSetName = dataSetName;
            }
            public String getEqualityOperator() {
            return equalityOperator;
            }
            public void setEqualityOperator(String equalityOperator) {
            this.equalityOperator = equalityOperator;
            }
            }

            • 3. Re: seam integration with trinidad
              pmuir

              You seem to have called it

              @Name("dataRestoreBean")
              not createRuleBean

              • 4. Re: seam integration with trinidad
                pratap_pps

                I changed it to createRuleBean, still the problem remains the same....

                import java.util.Arrays;
                import java.util.List;

                import javax.faces.event.ValueChangeEvent;
                import javax.faces.model.SelectItem;

                import org.apache.myfaces.trinidad.component.core.input.CoreInputFile;
                import org.apache.myfaces.trinidad.component.core.input.CoreInputText;
                import org.apache.myfaces.trinidad.component.core.input.CoreSelectBooleanCheckbox;
                import org.apache.myfaces.trinidad.component.core.input.CoreSelectOneChoice;
                import org.apache.myfaces.trinidad.component.core.nav.CoreCommandButton;
                import org.apache.myfaces.trinidad.component.core.output.CoreOutputLabel;
                import org.jboss.seam.ScopeType;
                import org.jboss.seam.annotations.*;

                @Name("createRuleBean")
                @Scope(ScopeType.SESSION)
                /**
                *
                * Backing bean for the createRule page
                *
                */
                public class CreateRuleBean
                {
                private CoreOutputLabel label01;

                ........

                I am also attaching the web.xml and faces-config.xml

                <faces-config version="1.2"
                xmlns="http://java.sun.com/xml/ns/javaee"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">



                <!-- Use the ADF RenderKit -->

                <!-- DEFAULT/SUPPORTED LOCALE/S FOR THE DEMO -->

                <default-render-kit-id>
                org.apache.myfaces.trinidad.core
                </default-render-kit-id>






                <!-- seam on JSF 1.2 -->



                <el-resolver>
                org.jboss.seam.jsf.SeamELResolver
                </el-resolver>





                <phase-listener>
                org.jboss.seam.jsf.SeamPhaseListener
                </phase-listener>

                </faces-config>






                <?xml version="1.0" encoding="UTF-8"?>
                <web-app id="WebApp_ID" version="2.4"
                xmlns="http://java.sun.com/xml/ns/j2ee"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
                http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

                <!-- rich faces -->

                <context-param>
                <param-name>org.apache.myfaces.trinidad.ALTERNATE_VIEW_HANDLER</param-name>
                <param-value>com.sun.facelets.FaceletViewHandler</param-value>
                </context-param>



                <!-- Seam -->

                <listener-class>org.jboss.seam.servlet.SeamListener</listener-class>


                <filter-name>Seam Filter</filter-name>
                <filter-class>org.jboss.seam.servlet.SeamFilter</filter-class>


                <filter-mapping>
                <filter-name>Seam Filter</filter-name>
                <url-pattern>/*</url-pattern>
                </filter-mapping>


                <servlet-name>Seam Resource Servlet</servlet-name>
                <servlet-class>org.jboss.seam.servlet.SeamResourceServlet</servlet-class>


                <servlet-mapping>
                <servlet-name>Seam Resource Servlet</servlet-name>
                <url-pattern>/seam/resource/*</url-pattern>
                </servlet-mapping>


                <!-- Trinidad -->



                <filter-name>trinidad</filter-name>
                <filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>



                <filter-mapping>
                <filter-name>trinidad</filter-name>
                <servlet-name>Faces Servlet</servlet-name>
                </filter-mapping>

                <!-- resource loader servlet -->

                <servlet-name>resources</servlet-name>
                <servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-class>


                <!-- source code servlet -->

                <servlet-name>source</servlet-name>
                <servlet-class>org.apache.myfaces.trinidaddemo.webapp.SourceCodeServlet</servlet-class>


                <servlet-mapping>
                <servlet-name>resources</servlet-name>
                <url-pattern>/adf/*</url-pattern>
                </servlet-mapping>

                <servlet-mapping>
                <servlet-name>source</servlet-name>
                <url-pattern>*.source</url-pattern>
                </servlet-mapping>


                <!-- Faces Servlet -->


                <servlet-name>Faces Servlet</servlet-name>
                <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
                <load-on-startup>1</load-on-startup>


                <!-- Faces Servlet Mapping -->

                <servlet-mapping>
                <servlet-name>Faces Servlet</servlet-name>
                <url-pattern>*.seam</url-pattern>
                </servlet-mapping>

                <!-- JSF parameters -->

                <context-param>
                <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
                <param-value>.xhtml</param-value>
                </context-param>

                <context-param>
                <param-name>facelets.DEVELOPMENT</param-name>
                <param-value>true</param-value>
                </context-param>


                <listener-class>com.sun.faces.config.ConfigureListener</listener-class>


                <session-config>
                <session-timeout>10</session-timeout>
                </session-config>

                <welcome-file-list>
                <welcome-file>index.html</welcome-file>
                </welcome-file-list>

                </web-app>

                • 5. Re: seam integration with trinidad
                  pmuir

                  Check whether the Seam component is created during startup, it should be displayed on the log. If unsure, post the log. Please use [ code ] tags.