im trying to insert data to date table using JSF.
thats my XHTML page:
<h:body>
<h:form>
<h:dataTable value = "#{necklacesBean.users}" var= "item" border="2">
<h:column>
<f:facet name ="header" >user name</f:facet>
<h:outputText value="#{item.name}"/>
</h:column>
<h:column>
<f:facet name ="header" >pass</f:facet>
<h:outputText value="#{item.password}"/>
</h:column>
<h:column>
<f:facet name ="header" >country</f:facet>
<h:outputText value="#{item.country}"/>
</h:column>
<h:column>
<f:facet name ="header" >city</f:facet>
<h:outputText value="#{item.city}"/>
</h:column>
<h:column>
<f:facet name ="header" >Street</f:facet>
<h:outputText value="#{item.street}"/>
</h:column>
<h:column>
<f:facet name ="header" >house number</f:facet>
<h:outputText value="#{item.houseNumber}"/>
</h:column>
<h:column>
<f:facet name ="header" >email</f:facet>
<h:outputText value="#{item.email}"/>
</h:column>
</h:dataTable>
</h:form>
</body>
that my necklacesBean class:
package ManageBean;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
/**
*
* @author גל לישה
*/
@ManagedBean
@RequestScoped
public class necklacesBean {
private List<userDate> arr;
/**
* Creates a new instance of necklacesBean
*/
public necklacesBean() {
}
@PostConstruct
public void init(){
arr = new ArrayList<userDate>();
arr.add(new userDate("gal","12345","israel","ramargan","telhai",123,"gmail@gal"));
}
public List<userDate> getUsers(){
return arr;
}
}
i getting this error : (if i remove the datatable everything work, when i add it - the xhtml page isnt show)
java.lang.NoClassDefFoundError: javax/enterprise/context/spi/Contextual
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at com.sun.faces.util.Util.loadClass(Util.java:333)
at com.sun.faces.application.ApplicationImpl.newThing(ApplicationImpl.java:1847)
at com.sun.faces.application.ApplicationImpl.createComponentApplyAnnotations(ApplicationImpl.java:2019)
at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:1246)
at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.createComponent(ComponentTagHandlerDelegateImpl.java:588)
at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:176)
at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:135)
at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:161)
at com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:203)
at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:135)
at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:96)
at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:94)
at javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:96)
at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:88)
at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:162)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:381)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:102)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:223)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:671)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1647)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.ClassNotFoundException: javax.enterprise.context.spi.Contextual
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1420)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1228)
... 44 more
its my first time to use jsf with data table, someone have any idea how to solve it? its like i cant use the data table