【问题标题】:Call spring controller method from JSF commandbutton从 JSF 命令按钮调用 spring 控制器方法
【发布时间】:2018-08-13 07:35:11
【问题描述】:

我正在尝试集成 spring 和 JSF(Primefaces)。我使用 @component 注释将 spring 控制器配置为组件以用作 JSF bean,但它没有调用命令按钮的操作方法。

XHTML 文件:

<h:form id="productForm" >
                <h:panelGrid columns="1">
                    <p:outputLabel for="name" value="Name: " />
                    <p:inputText id="name" value="#{cust.customerForm.name}" />
                    <p:outputLabel for="address" value="address" />
                    <p:inputNumber id="address" value="#{cust.customerForm.address}" />
                    <p:outputLabel for="email" value="Email: " />
                    <p:inputNumber id="email" value="#{cust.customerForm.email}" />
                    <p:outputLabel for="mobile" value="Mobile: " />
                    <p:inputNumber id="mobile" value="#{cust.customerForm.mobile}" />
                    <p:commandButton value="Save" action="#{cust.save}" />
                </h:panelGrid>
        </h:form> 

Spring 控制器用作 JSF Bean:

@Scope(value="session")
@Component(value = "cust")
@ELBeanName(value = "cust")
@Controller
@RequestMapping("/customer")
public class CustomerController {

    @Autowired
    private CustomerRepository customerRepo;

    private List<Customer> customerList;

    private Customer customerForm;

      public List<Customer> getCustomerList() {
        return customerList;
    }



      public Customer getCustomerForm() {
        return customerForm;
    }



    public void setCustomerForm(Customer customerForm) {
        this.customerForm = customerForm;
    }

    public String save(){
        System.out.println("save called:::::::::::");
         return("Customer");
    }
}

请帮助我找出我做错了什么。

【问题讨论】:

标签: spring spring-boot jsf primefaces


【解决方案1】:

您需要在faces-config.xml 中配置org.springframework.web.jsf.el.SpringBeanFacesELResolver。否则 JSF 找不到 spring bean。

当结合 JSF 和 Spring Boot 时,你应该定义尝试 Joinfaces 确实可以做到这一点(以及其他一些有用的东西)

【讨论】:

  • 如副本中所述!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-13
  • 2023-03-05
  • 1970-01-01
  • 2011-07-09
  • 1970-01-01
相关资源
最近更新 更多