Witam. Mam problem z tworzeniem obiektu ale tylko wtedy gdy stworzę stronę z rozszerzeniem .jsp gdy tworzę .xhtml obiekt się tworzy. Na stronie jsp po zatwierdzeniu formularza wyskakuje błąd "Target Unreachable, 'null' returned null".
Z góry dzięki za pomoc i wskazówki.
mój koda wygląda tak:
strona jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE Html>
<f:view>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>JSP Page</title>
</head>
<body>
<h:form>
<h:panelGrid columns="2">
<h:outputLabel value="Model: "/>
<h:inputText value="#{produktyManagedBean.produkt.model}"/>
<h:outputLabel value="cena: "/>
<h:inputText value="#{produktyManagedBean.produkt.cena}"/>
<h:outputLabel value="Opis: "/>
<h:inputTextarea value="#{produktyManagedBean.produkt.opis}"/>
<h:commandButton value="Utwórz produkt" action="#{produktyManagedBean.stworzProdukt()}"/>
</h:panelGrid>
</h:form>
</body>
</html>
</f:view>
strona xhtml
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Facelet Title</title>
</h:head>
<h:body>
Hello from Facelets
<h:form>
<h:panelGrid columns="2">
<h:outputLabel value="Model: "/>
<h:inputText value="#{produktyManagedBean.produkt.model}"/>
<h:outputLabel value="cena: "/>
<h:inputText value="#{produktyManagedBean.produkt.cena}"/>
<h:outputLabel value="Opis: "/>
<h:inputTextarea value="#{produktyManagedBean.produkt.opis}"/>
<h:commandButton value="Utwórz produkt" action="#{produktyManagedBean.stworzProdukt()}"/>
</h:panelGrid>
</h:form>
</h:body>
</html>
MenagedBean
@ManagedBean
@SessionScoped
public class ProduktyManagedBean {
@EJB
ProduktySessionBean produktySessionBean;
private int idProduktu;
private Produkty produkt;
public int getIdProduktu() {
return idProduktu;
}
public void setIdProduktu(int idProduktu) {
this.idProduktu = idProduktu;
}
public Produkty getProdukt() {
return produkt;
}
public void setProdukt(Produkty produkt) {
this.produkt = produkt;
}
public void init(){
produkt = new Produkty();
}
public String stworzProdukt(){
produktySessionBean.stworzProdukt(produkt);
return null;
}
public ProduktySessionBean getProduktySessionBean() {
return produktySessionBean;
}
public void setProduktySessionBean(ProduktySessionBean produktySessionBean) {
this.produktySessionBean = produktySessionBean;
}
SessinBean
@Stateless
public class ProduktySessionBean {
@PersistenceContext
private EntityManager em;
public void stworzProdukt(Produkty produkt){
em.persist(produkt);
}
}