我在访问托管bean时遇到问题。这是我的jsf,我使用hibernate创建我的数据库,它可以工作,但我不知道问题出在哪里!
<h:form id="form">
<p:growl id="msgs" />
<p:panel header="Create a new Stock">
<h:panelGrid columns="2" id="grid">
<h:outputLabel value="Stock ID : *" for="txt_id" />
<p:inputText id="txt_id" required="true"
value="#{stockBean.stock.stockId}" />
<h:outputLabel value="Stock code : *" for="txt_nom" />
<p:inputText id="txt_nom" value="#{stockBean.stock.stockCode}"
required="true" />
<h:outputLabel value="Stock Name : *" for="txt_name" />
<p:inputText id="txt_name" required="true"
value="#{stockBean.stock.stockName}" />
<p:commandButton value="Reset" type="reset" />
<p:commandButton id="btn_add" value="Add"
action="#{stockBean.saveStock}" />
</h:panelGrid>
</p:panel>
</h:form>
这是我的豆子:
@Component
@Scope
@ManagedBean (name = "stockBean")
public class StockBean {
// =======================================================
// ATTRIBUTES
// =======================================================
private Stock stock;
private StockMetier stockMetier;
// =======================================================
// CONSTRUCTORS
// =======================================================
public StockMetier getStockMetier() {
return stockMetier;
}
public StockBean() {
super();
}
// =======================================================
// METHODS
// =======================================================
public String saveStock() {
stockMetier.saveStock(stock);;
return "pretty:homeStock";
}
public String deleteStock() {
stockMetier.deleteStock(stock);
return "pretty:homeStock";
}
public String editStock(){
return "pretty:editStock";
}
public String newStock(){
reinit();
return "pretty:new_stock";
}
public void reinit() {
stock = new Stock();
}
// ======================================================
// OVERRIDES
// ======================================================
// ======================================================
// GETTERS & SETTERS
// ======================================================
@SuppressWarnings("unchecked")
public List<Stock> getAllStocks() {
return stockMetier.getAllStocks();
}
public Stock getStockById(Integer stockId){
return stockMetier.getStockById(stockId);
}
public Stock getStock() {
return stock;
}
public void setStock(Stock stock) {
this.stock = stock;
}
@Autowired
public void setStockMetier(StockMetier stockMetier) {
this.stockMetier = stockMetier;
}
}
我总是遇到同样的问题
javax.el.PropertyNotFoundException:/pages/new_stock.xhtml @ 23,58 value =&#34;#{stockBean.stock.stockId}&#34;:Target Unreachable,&#39; stock&#39;返回null
我该怎么办?