相关疑难解决方法(0)

commandButton/commandLink/ajax动作/侦听器方法未调用或输入值未设置/更新

有时,使用时<h:commandLink>,<h:commandButton>或者<f:ajax>,在action,actionListenerlistener与标签相关的方法根本不被调用.或者,bean属性不会使用提交的UIInput值进行更新.

有什么可能的原因和解决方案?

jsf action commandlink jsf-2 commandbutton

332
推荐指数
5
解决办法
20万
查看次数

JSF控制器,服务和DAO

我正在尝试习惯JSF如何处理数据(来自弹簧背景)

我正在创建一个维护用户列表的简单示例,我有类似的东西

<h:dataTable value="#{userListController.userList}" var="u">
    <h:column>#{u.userId}</h:column>
    <h:column>#{u.userName}</h:column>
</h:dataTable>
Run Code Online (Sandbox Code Playgroud)

然后"控制器"有类似的东西

@Named(value = "userListController")
@SessionScoped
public class UserListController {
    @EJB
    private UserListService userListService;

    private List<User> userList;

    public List<User> getUserList() {
        userList = userListService.getUsers();
        return userList;
    }
}
Run Code Online (Sandbox Code Playgroud)

而"服务"(虽然看起来更像是DAO)有

public class UserListService {

    @PersistenceContext
    private EntityManager em;

    public List<User> getUsers() {
        Query query = em.createQuery("SELECT u from User as u");
        return query.getResultList();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是正确的做事方式吗?我的术语是对的吗?"服务"感觉更像是DAO?控制器感觉它正在做一些服务工作.

jsf dao ejb jpa java-ee

32
推荐指数
2
解决办法
3万
查看次数

如何使用链接调用bean操作方法?onclick不起作用

我正在尝试实现一个用户名列表,可以通过单击UPDOWN链接重新排列.

<ul>
    <ui:repeat var="user" value="#{cc.attrs.value}">
        <li>
            #{user.name}
            <h:link outcome = "user" value = "left" onclick="#{accountController.moveDown}">
                <f:param name="id" value = "${user.id}" />
            </h:link>
        </li>

    </ui:repeat>
</ul>
Run Code Online (Sandbox Code Playgroud)

这里的问题是我似乎没有正确使用onclick属性.这样做的正确方法是什么?


编辑:根据您的建议,我将所有链接放在一个表单中:

<h:form>
        <ui:repeat value="#{cc.attrs.value}" var = "user">
        <div class = "user">
            <h:commandLink id = "Link1" value = "Up" binding = "#{accountController.ommandLink}" action = "#{accountController.moveUserUp}">
                <f:attribute name = "userId" value = "#{user.id}" />
            </h:commandLink>
            <h:commandLink id = "Link2" value = "Down" binding = "#{accountController.commandLink}" action = "#{accountController.moveUserDown}">
                <f:attribute name = …
Run Code Online (Sandbox Code Playgroud)

jsf onclick hyperlink actionmethod jsf-2

5
推荐指数
1
解决办法
3万
查看次数

使用JSF,JDBC和HttpServlet在dataTable中搜索和检索数据

以下是我的代码我的bean

import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;

/**
 *
 * @author utilisateur
 */
@ManagedBean(name="Beansearch")
@SessionScoped
public class Beansearch extends HttpServlet {
    ResultSet rs;
    private String cond;

    public String getcond() {
        return this.cond;
    }
    public void setcond(String cond) {
        this.cond= cond;
        }


   private List perInfoAll = new ArrayList();

    private int i;
public  List getperInfoAll(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException, SQLException {
    String value = req.getParameter("cond");
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver"); …
Run Code Online (Sandbox Code Playgroud)

datatable jsf servlets jdbc

-2
推荐指数
1
解决办法
1万
查看次数